На счет HPET, есть специальный бенчмарк для тестирования таймеров - https://www.overclockers.at/articles/the-hpet-bug-what-it-is-and-what-it-isnt
Действия для тестирования:
- Скачиваем архив с программой
- Распаковываем в удобное место
- В программе Intelegent standby list cleaner устанавливаем
Wanted timer resolutionв 0.50- Запускаем из папки TimerBench
- Смотрим на строку
QPC Mode, чтобы узнать какой таймер используется HPET или TSC(он может не определиться и значение будет Unknown)- Выбираем разрешение 1280х720
- Ставим галочку в строке
Fullscreen- Жмем кнопку
Run- Запустится тест, сначала он определит количество циклов в синтетических тестах, а потом запустится демка на UE, для определения количества циклов в играх, максимальный фреймтайм и средний фпс.
- Повторяем тест 3-5 раз, не надо закрывать окна с результатами тестов, они понадобятся для высчитывания среднего фреймтайма, фпс и количества циклов, выборка из 5 результат будет точнее.
- Меняем в программе Intelegent standby list cleaner параметр
Wanted timer resolutionв 1.00- Повторяем тестирование 3-5 раз.
Смотрим результаты Timer Calls/s в разделе Game Test, если разница между результатами с таймеров в 0.50 и 1.00 больше чем 20%, то делаем следующее:
- Открываем командную строку или PowerShell от имени администратора
- Вводим
bcdedit /set tscsyncpolicy Enhanced- Жмем Enter
- Перезагружаем ПК
- Снова меняем в программе Intelegent standby list cleaner параметр
Wanted timer resolutionна 0.50- Снова запускаем TimerBench и запускаем тест в полном экране
- Смотрим на
Timer Calls/s, число должно стать таким же как было при таймере1.00.
Для того, чтобы сравнить результаты с включенным HPET:
- Нажать в окне TimerBench кнопку
Enable HPET- Перезагрузить ПК
- Повторить тестирование.
Чтобы обратно отключить HPET:
- Открываем командную строку или PowerShell от имени администратора
- Вводим
bcdedit /set useplatformtick falseжмем Enter- Вводим
bcdedit /set useplatformclock falseжмем Enter- Вводим
bcdedit /set disabledynamictick trueжмем Enter- Вводим
bcdedit /set tscsyncpolicy Enhancedжмем Enter- Запускаем диспетчер устройств
- Переходим в раздел
Системные устройства- Находим
Высокоточный таймер событийи отключаем его.- Перезагружаем ПК
На ПК c FX-8350 и GTX 1060 3Gb разница между включенным и выключенным HPET составляет:
Frametime 41мс(HPET включен), 6мс(HPET выключен);
AVG FPS - 325(HPET включен), 357(HPET выключен)
Game Test timer calls - 314,266 (HPET включен), 2,133,816(HPET выключен)