Главная / Задержка и Таймеры

⏱️ Задержка и Таймеры

Прерывания, DPC, Timer Resolution и сообщения WM

🎯 Прерывания и DPC

Настроить приоритеты прерываний и DPC (Deferred Procedure Call) для снижения задержки:

Приоритет Прерываний powershell
$path = "HKLM:\SYSTEM\CurrentControlSet\Control\KernelVelocity"
New-Item -Path $path -Force | Out-Null
New-ItemProperty -Path $path -Name "DisableDynamicTick" -PropertyType DWord -Value 1 -Force
DPC Watchdog powershell
$path = "HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager\kernel"
New-ItemProperty -Path $path -Name "DpcWatchdogProfileOffset" -PropertyType DWord -Value 10000 -Force

⏲️ Timer Resolution

Windows использует разрешение таймера 15.625ms по умолчанию. Для игр, уменьшение улучшает время отклика:

Default: 15.625 ms (64 Hz)
Gaming: 1 ms (1000 Hz)
Агрессивный: 0.5 ms (2000 Hz)
Установить разрешение 0.5ms powershell
bcdedit /set disabledynamictick yes
bcdedit /set useplatformclock true
💡

💡 Инструменты Timer

Используйте TimerResolution от Lucas Hale или HPET для ручной настройки разрешения таймера в реальном времени без перезагрузки.

🔄 High Precision Event Timer (HPET)

HPET может вызвать дополнительную задержку. Отключение улучшает производительность в играх:

Отключить HPET powershell
bcdedit /deletevalue useplatformclock
Отключить HPET в Device Manager (альтернатива) powershell
Get-PnpDevice | Where-Object {$_.FriendlyName -like "*High Precision Event Timer*"} | Disable-PnpDevice -Confirm:$false
⚠️

⚠️ Совместимость

На очень старых системах или ноутбуках HPET может быть необходим. Проверьте стабильность системы без него перед постоянным применением.

📨 Уменьшить Сообщения WM

Уменьшение времени очереди сообщений Windows улучшает отзывчивость:

Win32PrioritySeparation powershell
New-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\PriorityControl" -Name "Win32PrioritySeparation" -PropertyType DWord -Value 38 -Force

Рекомендуемые Значения:

26 (0x1A): Сбалансированный
38 (0x26): Gaming (приоритет foreground)
40 (0x28): Максимальный приоритет foreground

🚀 IRQ и Affinity

Настроить приоритет IRQ сетевой карты и GPU:

Настроить высокий приоритет IRQ powershell
$path = "HKLM:\SYSTEM\CurrentControlSet\Control\PriorityControl"
New-ItemProperty -Path $path -Name "IRQ8Priority" -PropertyType DWord -Value 1 -Force
New-ItemProperty -Path $path -Name "IRQ16Priority" -PropertyType DWord -Value 2 -Force
💡

💡 MSI Mode

Для дальнейшего снижения задержки, включите MSI (Message Signaled Interrupts) на устройствах PCI-E используя MSI Utility или редактируя реестр.

⚠️

⚠️ Перезагрузка Необходима

Все эти изменения требуют полной перезагрузки системы для корректного применения.