Win32PrioritySeparation: задержка и FPS при полной загрузке CPU
На этой странице
Короткий ответ:
Win32PrioritySeparationдействительно управляет foreground boost и частью политики квантов CPU. Наш исторический тест не выявил универсально лучшего значения. Windows default показал немного меньшую среднюю click-to-photon задержку, а0x1Aсовпал с лучшими FPS и P1 в одном тесте при 100% загрузке CPU. Из-за отсутствия независимых FPS-повторов и сырых click samples рекомендуем default, а0x1Aсчитаем только проверяемой гипотезой для CPU-сценария.
Статус: связь параметра с foreground boost документирована Microsoft. Чтение параметра наблюдалось в ранее собранных системных трассировках Windows 11 24H2 и 25H2. Пользовательский эффект измерен в исторической серии Windows 10 22H2, но на другой системе или в независимом запуске не воспроизведён.
Проверяемое утверждение
Заголовок раздела « Проверяемое утверждение»Мы проверяли три разных утверждения, которые нельзя объединять:
- Параметр существует и связан с политикой планировщика Windows.
- Значения
0x02и0x1Aпредставляют разные политики квантов при одинаковом максимальном foreground boost. 0x1Aулучшает FPS или задержку игры при полной загрузке CPU.
Первые два утверждения подтверждаются публичной документацией и наблюдением на исследованных сборках. Третье требует измерений и не становится истинным только из-за устройства параметра.
Область исследования
Заголовок раздела « Область исследования»| Слой | Среда | Результат |
|---|---|---|
| Публичная документация | Microsoft WMI, CPU Analysis и Windows Internals | Описаны foreground boost, quantum и историческая битовая структура |
| Системное наблюдение | Windows 11 24H2 и 25H2 | Чтение параметра наблюдалось в ранее собранных трассировках |
| Click-to-photon | Windows 10 22H2, Valorant, CPU 100% | По 300 измерений на значение, сохранены агрегаты |
| FPS | Та же историческая серия | Один CapFrameX capture на конфигурацию; часть строк непригодна из-за зависания capture |
Windows 10 22H2 dynamic trace для этой публикации отсутствует. Для Windows 11 26H1 также нет пригодной трассировки. Измерения Windows 10 не переносятся на Windows 11 без повторения.
Где находится параметр
Заголовок раздела « Где находится параметр»| Поле | Значение |
|---|---|
| Hive и путь | HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\PriorityControl |
| Имя значения | Win32PrioritySeparation |
| Тип | REG_DWORD |
| Документированное начальное значение client Windows | 0x02 (2) |
Windows Internals называет 2 начальным значением на клиентской Windows и на сервере, который не настроен как application server. В нашей трассировке Windows 11 25H2 DWORD также присутствовал явно со значением 2.
Поэтому мы не считаем отсутствие значения универсальным Windows default. Оно может встретиться после изменения образа, ручного удаления или действий стороннего инструмента, но в текущем исследовании clean-install сценарий с отсутствующим DWORD динамически не воспроизведён. Отсутствие строки нельзя автоматически трактовать как 0.
Как устроен параметр
Заголовок раздела « Как устроен параметр»Microsoft сопоставляет свойство Win32_OperatingSystem.ForegroundApplicationBoost с Win32PrioritySeparation и документирует значения 0, 1 и 2: без boost, минимальный и максимальный boost foreground application.
Официальный sample Windows Internals Sixth Edition описывает параметр как набор полей:
| Биты | Назначение |
|---|---|
| 0-1 | Степень foreground boost |
| 2-3 | Переменные или фиксированные кванты |
| 4-5 | Короткие или длинные кванты |
0x02 является документированным начальным значением client Windows: оно задаёт максимальный foreground boost, а остальные поля оставляет системной политике. Для клиентской Windows исторически это соответствует коротким переменным квантам, которые можно явно выразить как 0x26. 0x1A задаёт длинные фиксированные кванты при том же максимальном foreground boost.
Открытый проект Win32PSCalculator показывает эту эквивалентность напрямую. Он маскирует вход через 0x3F, разбирает три двухбитных поля и сводит разные записи к одной из 12 канонических комбинаций. Это помогает обнаружить placebo-значения, которые выглядят иначе, но не создают нового scheduler mode.
Документ Windows Internals является историческим. Мы используем его для интерпретации полей, но не утверждаем, что все внутренние quantum tables неизменны во всех современных сборках.
Калькулятор значений
Заголовок раздела « Калькулятор значений»Декодер 6 бит
Проверка реального режима
Введите значение, которое нашли в tweak-листе. Калькулятор покажет только используемые шесть бит и каноническую комбинацию с тем же режимом. Он ничего не изменяет на компьютере.
Калькулятор работает только в браузере и не читает и не изменяет Registry. Его результат показывает эквивалентность битовых комбинаций, а не ожидаемый FPS или задержку. Та же версия доступна на странице настройки BoosterX.
Почему результат может зависеть от нагрузки
Заголовок раздела « Почему результат может зависеть от нагрузки»Планировщик выбирает готовый поток с учётом priority, affinity, состояния и оставшегося quantum. После исчерпания quantum поток может уступить процессор другому готовому потоку того же priority. Переключение контекста имеет стоимость, поэтому более длинные кванты способны уменьшить scheduler turnover и поддержать throughput при сильной конкуренции за CPU.
Это объясняет возможное направление эффекта, но не обещает прирост игре. Более длинный фиксированный quantum может одновременно ухудшить отзывчивость других потоков. Если CPU не является ограничением, измеряемого выигрыша может не быть.
Методика исторического теста
Заголовок раздела « Методика исторического теста»Тест выполнялся в Valorant на Windows 10 22H2 при записанной 100% загрузке CPU. Для каждого Registry-значения выполнено 300 click-to-photon измерений аппаратным стендом BoosterX. Электрический сигнал кнопки Logitech G PRO X SUPERLIGHT запускает таймер, а фотодатчик останавливает его после изменения яркости на экране. Полный тракт описан в методике исследований.
В таблице сохранились AVG, STDDEV, MIN и MAX задержки. Для FPS использовался CapFrameX, но в доступном блоке есть только один capture на конфигурацию. Для части значений capture зависал, поэтому эти FPS-строки помечены как недоступные и не восстанавливаются предположениями.
Исходные 300 click samples, P90, распределения, точный hardware/driver manifest и независимые FPS-повторы к этой старой серии не привязаны. Это ограничивает статистический вывод.
Результаты
Заголовок раздела « Результаты»| Значение | Политика | AVG, ms | SD, ms | MIN, ms | MAX, ms | FPS AVG | P1 | P0.1 |
|---|---|---|---|---|---|---|---|---|
0x2A |
короткая, фиксированная, высокий boost | 16.61 | 2.69 | 10.53 | 21.96 | 351.3 | 226.2 | 43.9 |
0x29 |
короткая, фиксированная, средний boost | 17.08 | 3.02 | 10.31 | 25.09 | 336.8 | 254.9 | 14.3 |
0x28 |
короткая, фиксированная, без boost | 17.62 | 4.94 | 10.19 | 47.04 | н/д | н/д | н/д |
0x26 |
явный эквивалент default 0x02 |
15.28 | 3.12 | 9.30 | 23.08 | 334.4 | 111.6 | 36.9 |
0x25 |
короткая, переменная, средний boost | 16.90 | 2.73 | 11.42 | 23.97 | 334.7 | 102.6 | 27.6 |
0x24 |
короткая, переменная, без boost | 18.71 | 4.66 | 11.88 | 32.48 | н/д | н/д | н/д |
0x1A |
длинная, фиксированная, высокий boost | 15.68 | 3.31 | 9.97 | 23.30 | 355.1 | 256.0 | 41.0 |
0x19 |
длинная, фиксированная, средний boost | 16.80 | 2.61 | 10.08 | 21.95 | 352.0 | 272.9 | 21.5 |
0x18 |
длинная, фиксированная, без boost | 22.74 | 8.81 | 11.65 | 55.10 | н/д | н/д | н/д |
0x16 |
длинная, переменная, высокий boost | 16.77 | 2.88 | 11.32 | 23.97 | 346.4 | 200.1 | 34.0 |
0x15 |
длинная, переменная, средний boost | 16.13 | 2.34 | 10.08 | 20.95 | 332.1 | 144.4 | 17.8 |
0x14 |
длинная, переменная, без boost | 19.87 | 5.55 | 12.43 | 52.31 | н/д | н/д | н/д |
н/д означает непригодный или отсутствующий FPS capture, а не нулевой результат.
Сравнение default и 0x1A
Заголовок раздела «Сравнение default и 0x1A»| Метрика | Default / эквивалент 0x26 |
0x1A |
Наблюдаемая разница |
|---|---|---|---|
| Click-to-photon AVG | 15.28 ms | 15.68 ms | 0x1A выше на 0.40 ms, около 2.6% |
| Click-to-photon SD | 3.12 ms | 3.31 ms | 0x1A выше на 0.19 ms |
| FPS AVG | 334.4 | 355.1 | 0x1A выше на 20.7, около 6.2% |
| P1 | 111.6 | 256.0 | 0x1A выше на 144.4 |
| P0.1 | 36.9 | 41.0 | 0x1A выше на 4.1 |
Разница средней задержки 0.40 ms заметно меньше сохранённого разброса около 3 ms. Без сырых samples нельзя корректно построить доверительный интервал или проверить форму распределения. FPS-разница велика по описательным числам, но один capture на состояние не доказывает воспроизводимость и не исключает влияние порядка прогонов или фоновой нагрузки.
Что подтверждено
Заголовок раздела « Что подтверждено»- Параметр связан с foreground boost и политикой квантов планировщика Windows.
- Его чтение наблюдалось в исследованных Windows 11 24H2 и 25H2.
- В исторической Windows 10 22H2 серии выполнено по 300 click-to-photon измерений на значение.
- Среди состояний с высоким foreground boost default-эквивалент
0x26показал наименьшую среднюю задержку. - В том же историческом capture
0x1Aпоказал наибольший FPS AVG и P1 среди состояний с высоким boost.
Что не подтверждено
Заголовок раздела « Что не подтверждено»- Что
0x1Aвсегда повышает FPS, P1 или плавность кадров. - Что
0x1Aуменьшает click-to-photon или input latency. - Что результат повторяется на Windows 11, другом CPU, в другой игре или без полной загрузки CPU.
- Что произвольные значения из чужих tweak-листов полезны или безопасны.
- Что различия статистически значимы: для старой серии нет сырых samples и независимых FPS-повторов.
Ограничения
Заголовок раздела « Ограничения»Историческая таблица не содержит полного привязанного manifest оборудования, версий драйвера и игры, температуры, power state и порядка прогонов. Окна одного capture не считаются независимыми повторами. Ошибки CapFrameX затронули преимущественно состояния без foreground boost, поэтому полную FPS-матрицу сравнивать нельзя.
Исследование и использованные инструменты принадлежат разработчику BoosterX, который предоставляет эту настройку, поэтому у разработчика есть прямой интерес к результатам. Методика и границы применимости описаны выше, а выводы можно проверить по открытым данным и перечисленным публичным источникам. Поэтому default остаётся рекомендацией, а более высокий исторический FPS 0x1A публикуется вместе с отрицательным результатом по средней задержке и всеми ограничениями.
Практический вывод
Заголовок раздела « Практический вывод»Оставляйте Windows default (0x02) на большинстве клиентских систем Windows 10 и 11. Не применяйте 0x1A как универсальную «оптимизацию планировщика». Windows Server имеет другую scheduler policy, не измерялся и не входит в эту рекомендацию.
Проверка 0x1A оправдана только при воспроизводимой CPU saturation. Используйте несколько парных прогонов, перемешивайте порядок, фиксируйте средний FPS, P1, P0.1, frametime spikes и click-to-photon. Оставляйте изменение только при повторяемом улучшении целевой метрики без нового ухудшения.
Страница бесплатной настройки и точный способ возврата: Win32PrioritySeparation в BoosterX.
Восстановление состояния
Заголовок раздела « Восстановление состояния»После сравнения верните параметр в Windows default (0x02) через BoosterX и выполните предложенный интерфейсом перезапуск. В историческом наборе отдельная запись о проверке возврата не сохранилась, поэтому это исследование не считает recovery подтверждённой частью старого эксперимента.
Публичные первичные источники
Заголовок раздела « Публичные первичные источники»- Win32_OperatingSystem.ForegroundApplicationBoost, Microsoft Learn - Registry mapping и значения foreground boost.
- CPU Analysis, Microsoft Learn - quantum, priority, processor selection и стоимость context switches.
- Scheduling Priorities, Microsoft Learn - round-robin, preemption и dynamic priority.
- Context Switches, Microsoft Learn - что происходит при переключении потока.
- Windows Internals Sixth Edition sample chapters, Microsoft Press - историческое описание полей параметра и клиентских квантов.
- Публичная таблица click-to-photon измерений BoosterX - исходные опубликованные агрегаты этой исторической серии.
- Win32PSCalculator - открытая реализация декодирования младших шести бит и поиска эквивалентного режима.
Публичные источники и формулировки проверены: 2026-08-24.
История изменений
Заголовок раздела «История изменений»- 2026-09-20: дисклеймер о конфликте интересов усилен до полной формулировки с принадлежностью исследования и инструментов.
- 2026-08-24: добавлены точное расположение Registry value, документированное начальное значение
0x02, Win32PSCalculator и границы трактовки отсутствующего DWORD. - 2026-08-24: первая публикация; добавлены полная историческая матрица, разделение механизма и пользовательского эффекта, а также default-рекомендация.
