Win32PrioritySeparation: latency and FPS at full CPU load
On this page
Short answer:
Win32PrioritySeparationdoes control foreground boost and part of the CPU quantum policy. Our historical test did not reveal a universally better value. The Windows default showed a slightly lower average click-to-photon latency, while0x1Amatched the best FPS and P1 in one test at 100% CPU load. Due to the absence of independent FPS repeats and raw click samples, we recommend the default, and we consider0x1Aonly a testable hypothesis for the CPU scenario.
Status: the parameter’s link to foreground boost is documented by Microsoft. The parameter read was observed in previously collected system traces of Windows 11 24H2 and 25H2. The user-facing effect was measured in a historical series on Windows 10 22H2, but was not reproduced on another system or in an independent run.
Testable claim
Section titled “ Testable claim”We tested three different claims that must not be merged:
- The parameter exists and is linked to the Windows scheduler policy.
- The values
0x02and0x1Arepresent different quantum policies with the same maximum foreground boost. 0x1Aimproves FPS or game latency at full CPU load.
The first two claims are confirmed by public documentation and observation on the builds studied. The third requires measurements and does not become true merely because of how the parameter is designed.
Scope of the study
Section titled “ Scope of the study”| Layer | Environment | Result |
|---|---|---|
| Public documentation | Microsoft WMI, CPU Analysis and Windows Internals | Foreground boost, quantum and the historical bit structure are described |
| System observation | Windows 11 24H2 and 25H2 | The parameter read was observed in previously collected traces |
| Click-to-photon | Windows 10 22H2, Valorant, CPU 100% | 300 measurements per value, aggregates preserved |
| FPS | The same historical series | One CapFrameX capture per configuration; some rows are unusable due to capture hangs |
There is no Windows 10 22H2 dynamic trace for this publication. There is also no usable trace for Windows 11 26H1. Windows 10 measurements do not carry over to Windows 11 without repetition.
Where the parameter is located
Section titled “ Where the parameter is located”| Field | Value |
|---|---|
| Hive and path | HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\PriorityControl |
| Value name | Win32PrioritySeparation |
| Type | REG_DWORD |
| Documented initial value for client Windows | 0x02 (2) |
Windows Internals names 2 as the initial value on client Windows and on a server that is not configured as an application server. In our Windows 11 25H2 trace, the DWORD was also explicitly present with the value 2.
Therefore we do not consider a missing value to be a universal Windows default. It can occur after an image modification, manual deletion or the actions of a third-party tool, but in the current study the clean-install scenario with a missing DWORD was not dynamically reproduced. The absence of the row cannot automatically be interpreted as 0.
How the parameter is structured
Section titled “ How the parameter is structured”Microsoft maps the Win32_OperatingSystem.ForegroundApplicationBoost property to Win32PrioritySeparation and documents the values 0, 1 and 2: no boost, minimum and maximum foreground application boost.
The official Windows Internals Sixth Edition sample describes the parameter as a set of fields:
| Bits | Purpose |
|---|---|
| 0-1 | Degree of foreground boost |
| 2-3 | Variable or fixed quanta |
| 4-5 | Short or long quanta |
0x02 is the documented initial value for client Windows: it sets the maximum foreground boost and leaves the remaining fields to the system policy. For client Windows this historically corresponds to short variable quanta, which can be explicitly expressed as 0x26. 0x1A sets long fixed quanta with the same maximum foreground boost.
The open-source project Win32PSCalculator shows this equivalence directly. It masks the input through 0x3F, parses the three two-bit fields and reduces different entries to one of 12 canonical combinations. This helps detect placebo values that look different but do not create a new scheduler mode.
The Windows Internals document is historical. We use it to interpret the fields, but we do not claim that all internal quantum tables are unchanged in all modern builds.
Value calculator
Section titled “ Value calculator”6-bit decoder
Real mode check
Enter the value you found in the tweak list. The calculator will show only the six bits used and the canonical combination with the same mode. It does not change anything on your computer.
The calculator runs only in the browser and does not read or modify the Registry. Its result shows the equivalence of bit combinations, not the expected FPS or latency. The same version is available on the BoosterX settings page.
Why the result may depend on load
Section titled “ Why the result may depend on load”The scheduler selects a ready thread taking into account priority, affinity, state and the remaining quantum. Once the quantum is exhausted, the thread may yield the processor to another ready thread of the same priority. A context switch has a cost, so longer quanta can reduce scheduler turnover and sustain throughput under heavy CPU contention.
This explains the possible direction of the effect, but it does not promise a gain for the game. A longer fixed quantum can simultaneously worsen the responsiveness of other threads. If the CPU is not the bottleneck, there may be no measurable gain.
Methodology of the historical test
Section titled “ Methodology of the historical test”The test was performed in Valorant on Windows 10 22H2 at a recorded 100% CPU load. For each Registry value, 300 click-to-photon measurements were performed with the BoosterX hardware rig. The electrical signal of the Logitech G PRO X SUPERLIGHT button starts the timer, and a photosensor stops it after the brightness on the screen changes. The full path is described in the research methodology.
The table preserves AVG, STDDEV, MIN and MAX latency. CapFrameX was used for FPS, but the available block contains only one capture per configuration. For some values the capture hung, so those FPS rows are marked as unavailable and are not reconstructed by assumptions.
The original 300 click samples, P90, distributions, the exact hardware/driver manifest and independent FPS repeats are not linked to this old series. This limits the statistical conclusion.
Results
Section titled “ Results”| Value | Policy | AVG, ms | SD, ms | MIN, ms | MAX, ms | FPS AVG | P1 | P0.1 |
|---|---|---|---|---|---|---|---|---|
0x2A |
short, fixed, high boost | 16.61 | 2.69 | 10.53 | 21.96 | 351.3 | 226.2 | 43.9 |
0x29 |
short, fixed, medium boost | 17.08 | 3.02 | 10.31 | 25.09 | 336.8 | 254.9 | 14.3 |
0x28 |
short, fixed, no boost | 17.62 | 4.94 | 10.19 | 47.04 | n/a | n/a | n/a |
0x26 |
explicit equivalent of default 0x02 |
15.28 | 3.12 | 9.30 | 23.08 | 334.4 | 111.6 | 36.9 |
0x25 |
short, variable, medium boost | 16.90 | 2.73 | 11.42 | 23.97 | 334.7 | 102.6 | 27.6 |
0x24 |
short, variable, no boost | 18.71 | 4.66 | 11.88 | 32.48 | n/a | n/a | n/a |
0x1A |
long, fixed, high boost | 15.68 | 3.31 | 9.97 | 23.30 | 355.1 | 256.0 | 41.0 |
0x19 |
long, fixed, medium boost | 16.80 | 2.61 | 10.08 | 21.95 | 352.0 | 272.9 | 21.5 |
0x18 |
long, fixed, no boost | 22.74 | 8.81 | 11.65 | 55.10 | n/a | n/a | n/a |
0x16 |
long, variable, high boost | 16.77 | 2.88 | 11.32 | 23.97 | 346.4 | 200.1 | 34.0 |
0x15 |
long, variable, medium boost | 16.13 | 2.34 | 10.08 | 20.95 | 332.1 | 144.4 | 17.8 |
0x14 |
long, variable, no boost | 19.87 | 5.55 | 12.43 | 52.31 | n/a | n/a | n/a |
н/д means an unusable or missing FPS capture, not a zero result.
Comparison of default and 0x1A
Section titled “Comparison of default and 0x1A”| Metric | Default / equivalent 0x26 |
0x1A |
Observed difference |
|---|---|---|---|
| Click-to-photon AVG | 15.28 ms | 15.68 ms | 0x1A higher by 0.40 ms, about 2.6% |
| Click-to-photon SD | 3.12 ms | 3.31 ms | 0x1A higher by 0.19 ms |
| FPS AVG | 334.4 | 355.1 | 0x1A higher by 20.7, about 6.2% |
| P1 | 111.6 | 256.0 | 0x1A higher by 144.4 |
| P0.1 | 36.9 | 41.0 | 0x1A higher by 4.1 |
The difference in average latency of 0.40 ms is noticeably smaller than the preserved spread of about 3 ms. Without raw samples, a confidence interval cannot be correctly constructed or the shape of the distribution verified. The FPS difference is large in descriptive numbers, but one capture per state does not prove reproducibility and does not rule out the influence of run order or background load.
What is confirmed
Section titled “ What is confirmed”- The parameter is linked to foreground boost and the quantum policy of the Windows scheduler.
- Its read was observed in the studied Windows 11 24H2 and 25H2.
- In the historical Windows 10 22H2 series, 300 click-to-photon measurements were performed per value.
- Among the states with high foreground boost, the default equivalent
0x26showed the lowest average latency. - In the same historical capture,
0x1Ashowed the highest FPS AVG and P1 among the states with high boost.
What is not confirmed
Section titled “ What is not confirmed”- That
0x1Aalways improves FPS, P1 or frame smoothness. - That
0x1Areduces click-to-photon or input latency. - That the result repeats on Windows 11, another CPU, in another game or without full CPU load.
- That arbitrary values from third-party tweak lists are useful or safe.
- That the differences are statistically significant: for the old series there are no raw samples and no independent FPS repeats.
Limitations
Section titled “ Limitations”The historical table does not contain a complete linked manifest of hardware, driver and game versions, temperature, power state and run order. Windows of a single capture are not considered independent repeats. CapFrameX errors affected mainly the states without foreground boost, so the full FPS matrix cannot be compared.
The study and the tools used belong to the BoosterX developer, who provides this setting, so the developer has a direct interest in the results. The methodology and the limits of applicability are described above, and the conclusions can be verified against the open data and the listed public sources. Therefore the default remains the recommendation, and the higher historical FPS of 0x1A is published together with the negative result on average latency and all the limitations.
Practical conclusion
Section titled “ Practical conclusion”Keep Windows default (0x02) on most client Windows 10 and 11 systems. Do not apply 0x1A as a universal “scheduler optimization”. Windows Server has a different scheduler policy, was not measured and is not part of this recommendation.
Testing 0x1A is justified only under reproducible CPU saturation. Use several paired runs, shuffle the order, record average FPS, P1, P0.1, frametime spikes and click-to-photon. Keep the change only if there is a repeatable improvement in the target metric without a new regression.
Free setting page and the exact way to revert: Win32PrioritySeparation in BoosterX.
Restoring the state
Section titled “ Restoring the state”After the comparison, return the parameter to Windows default (0x02) via BoosterX and perform the restart suggested by the interface. In the historical set, no separate record of a revert check was preserved, so this study does not consider recovery a confirmed part of the old experiment.
Public primary sources
Section titled “ Public primary sources”- Win32_OperatingSystem.ForegroundApplicationBoost, Microsoft Learn - Registry mapping and foreground boost values.
- CPU Analysis, Microsoft Learn - quantum, priority, processor selection and the cost of context switches.
- Scheduling Priorities, Microsoft Learn - round-robin, preemption and dynamic priority.
- Context Switches, Microsoft Learn - what happens when a thread is switched.
- Windows Internals Sixth Edition sample chapters, Microsoft Press - historical description of the parameter fields and client quanta.
- Public table of BoosterX click-to-photon measurements - the original published aggregates of this historical series.
- Win32PSCalculator - open-source implementation of decoding the lower six bits and finding the equivalent mode.
Public sources and wording verified: 2026-08-24.
Change history
Section titled “Change history”- 2026-09-20: the conflict-of-interest disclaimer was strengthened to the full wording with the ownership of the study and tools.
- 2026-08-24: added the exact Registry value location, the documented initial value
0x02, Win32PSCalculator and the limits of interpreting a missing DWORD. - 2026-08-24: first publication; added the full historical matrix, the separation of mechanism and user-facing effect, and the default recommendation.
