Win32PrioritySeparation: latenstid og FPS ved fuld CPU-belastning
På denne side
Kort svar:
Win32PrioritySeparationstyrer faktisk foreground boost og en del af CPU-kvantepolitikken. Vores historiske test viste ikke en universelt bedste værdi. Windows default viste lidt lavere gennemsnitlig click-to-photon-latency, mens0x1Amatchede de bedste FPS og P1 i én test ved 100% CPU-belastning. På grund af manglende uafhængige FPS-gentagelser og rå click samples anbefaler vi default, og0x1Abetragter vi kun som en verificerbar hypotese for CPU-scenariet.
Status: parameterens sammenhæng med foreground boost er dokumenteret af Microsoft. Aflæsning af parameteren blev observeret i tidligere indsamlede systemtracinger fra Windows 11 24H2 og 25H2. Brugeroplevet effekt blev målt i en historisk serie på Windows 10 22H2, men er ikke reproduceret på et andet system eller i en uafhængig kørsel.
Verificerbart udsagn
Sektion kaldt “ Verificerbart udsagn”Vi undersøgte tre forskellige udsagn, som ikke kan slås sammen:
- Parameteren eksisterer og er forbundet med Windows’ schedulerpolitik.
- Værdierne
0x02og0x1Arepræsenterer forskellige kvantepolitikker ved samme maksimale foreground boost. 0x1Aforbedrer FPS eller spilforsinkelse ved fuld CPU-belastning.
De første to udsagn bekræftes af offentlig dokumentation og observation på de undersøgte builds. Det tredje kræver målinger og bliver ikke sandt alene på grund af parameterens opbygning.
Undersøgelsens omfang
Sektion kaldt “ Undersøgelsens omfang”| Lag | Miljø | Resultat |
|---|---|---|
| Offentlig dokumentation | Microsoft WMI, CPU Analysis og Windows Internals | Foreground boost, quantum og historisk bitstruktur er beskrevet |
| Systemobservation | Windows 11 24H2 og 25H2 | Aflæsning af parameteren blev observeret i tidligere indsamlede tracinger |
| Click-to-photon | Windows 10 22H2, Valorant, CPU 100% | 300 målinger pr. værdi, aggregater er gemt |
| FPS | Samme historiske serie | Én CapFrameX capture pr. konfiguration; nogle rækker er ubrugelige pga. fastlåst capture |
Der findes ingen dynamisk trace fra Windows 10 22H2 til denne publikation. Der findes heller ikke en brugbar trace til Windows 11 26H1. Målinger fra Windows 10 kan ikke overføres til Windows 11 uden at blive gentaget.
Hvor parameteren findes
Sektion kaldt “ Hvor parameteren findes”| Felt | Værdi |
|---|---|
| Hive og sti | HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\PriorityControl |
| Værdiens navn | Win32PrioritySeparation |
| Type | REG_DWORD |
| Dokumenteret startværdi for client Windows | 0x02 (2) |
Windows Internals angiver 2 som startværdi på client Windows og på en server, der ikke er konfigureret som application server. I vores trace fra Windows 11 25H2 var DWORD’en også til stede eksplicit med værdien 2.
Derfor betragter vi ikke fraværet af værdien som en universel Windows default. Den kan forekomme efter ændring af image, manuel sletning eller handlinger fra et tredjepartsværktøj, men i denne undersøgelse er clean-install-scenariet med en manglende DWORD ikke dynamisk reproduceret. Fraværet af rækken kan ikke automatisk fortolkes som 0.
Hvordan parameteren er opbygget
Sektion kaldt “ Hvordan parameteren er opbygget”Microsoft knytter egenskaben Win32_OperatingSystem.ForegroundApplicationBoost til Win32PrioritySeparation og dokumenterer værdierne 0, 1 og 2: ingen boost, minimal og maksimal boost af foreground application.
Det officielle sample fra Windows Internals Sixth Edition beskriver parameteren som et sæt felter:
| Bits | Formål |
|---|---|
| 0-1 | Grad af foreground boost |
| 2-3 | Variable eller faste kvanta |
| 4-5 | Korte eller lange kvanta |
0x02 er den dokumenterede startværdi for client Windows: den angiver maksimal foreground boost og overlader de øvrige felter til systempolitikken. For client Windows svarer dette historisk til korte variable kvanta, som eksplicit kan udtrykkes som 0x26. 0x1A angiver lange faste kvanta ved samme maksimale foreground boost.
Det åbne projekt Win32PSCalculator viser denne ækvivalens direkte. Det maskerer input via 0x3F, fortolker de tre tobit-felter og reducerer forskellige poster til en af 12 kanoniske kombinationer. Det hjælper med at afsløre placebo-værdier, som ser anderledes ud, men ikke skaber en ny scheduler mode.
Dokumentet Windows Internals er historisk. Vi bruger det til at fortolke felterne, men hævder ikke, at alle interne quantum tables er uforandrede i alle moderne builds.
Værdiberegner
Sektion kaldt “ Værdiberegner”6-bit dekoder
Tjek af real mode
Indtast den værdi, du fandt i tweak-listen. Beregneren viser kun de seks anvendte bits og den kanoniske kombination med samme tilstand. Den ændrer intet på computeren.
Beregneren kører kun i browseren og læser eller ændrer ikke Registry. Resultatet viser ækvivalensen mellem bitkombinationer, ikke den forventede FPS eller forsinkelse. Samme version er tilgængelig på BoosterX’ indstillingsside.
Hvorfor resultatet kan afhænge af belastning
Sektion kaldt “ Hvorfor resultatet kan afhænge af belastning”Scheduleren vælger en klar tråd ud fra priority, affinity, tilstand og resterende quantum. Når quantum er opbrugt, kan tråden overlade processoren til en anden klar tråd med samme priority. Et context switch har en omkostning, så længere kvanta kan mindske scheduler turnover og understøtte throughput ved stærk konkurrence om CPU’en.
Det forklarer en mulig retning af effekten, men lover ikke en forbedring for spillet. Et længere fast quantum kan samtidig forringe andre trådes responsivitet. Hvis CPU’en ikke er begrænsningen, er der muligvis ingen målbar gevinst.
Metode for den historiske test
Sektion kaldt “ Metode for den historiske test”Testen blev udført i Valorant på Windows 10 22H2 ved registreret 100% CPU-belastning. For hver Registry-værdi blev der udført 300 click-to-photon-målinger med BoosterX’ hardwareteststand. Det elektriske signal fra knappen på Logitech G PRO X SUPERLIGHT starter en timer, og en fotosensor stopper den efter en ændring i lysstyrken på skærmen. Hele forløbet er beskrevet i undersøgelsesmetodikken.
Tabellen indeholder AVG, STDDEV, MIN og MAX for forsinkelsen. Til FPS blev CapFrameX brugt, men i den tilgængelige blok findes kun én capture pr. konfiguration. For nogle værdier låste capture sig, så disse FPS-rækker er markeret som utilgængelige og genskabes ikke ved antagelser.
De oprindelige 300 click samples, P90, fordelinger, den præcise hardware/driver-manifest og uafhængige FPS-gentagelser er ikke knyttet til denne gamle serie. Det begrænser den statistiske konklusion.
Resultater
Sektion kaldt “ Resultater”| Værdi | Politik | AVG, ms | SD, ms | MIN, ms | MAX, ms | FPS AVG | P1 | P0.1 |
|---|---|---|---|---|---|---|---|---|
0x2A |
kort, fast, høj boost | 16.61 | 2.69 | 10.53 | 21.96 | 351.3 | 226.2 | 43.9 |
0x29 |
kort, fast, middel boost | 17.08 | 3.02 | 10.31 | 25.09 | 336.8 | 254.9 | 14.3 |
0x28 |
kort, fast, ingen boost | 17.62 | 4.94 | 10.19 | 47.04 | i/t | i/t | i/t |
0x26 |
eksplicit ækvivalent til default 0x02 |
15.28 | 3.12 | 9.30 | 23.08 | 334.4 | 111.6 | 36.9 |
0x25 |
kort, variabel, middel boost | 16.90 | 2.73 | 11.42 | 23.97 | 334.7 | 102.6 | 27.6 |
0x24 |
kort, variabel, ingen boost | 18.71 | 4.66 | 11.88 | 32.48 | i/t | i/t | i/t |
0x1A |
lang, fast, høj boost | 15.68 | 3.31 | 9.97 | 23.30 | 355.1 | 256.0 | 41.0 |
0x19 |
lang, fast, middel boost | 16.80 | 2.61 | 10.08 | 21.95 | 352.0 | 272.9 | 21.5 |
0x18 |
lang, fast, ingen boost | 22.74 | 8.81 | 11.65 | 55.10 | i/t | i/t | i/t |
0x16 |
lang, variabel, høj boost | 16.77 | 2.88 | 11.32 | 23.97 | 346.4 | 200.1 | 34.0 |
0x15 |
lang, variabel, middel boost | 16.13 | 2.34 | 10.08 | 20.95 | 332.1 | 144.4 | 17.8 |
0x14 |
lang, variabel, ingen boost | 19.87 | 5.55 | 12.43 | 52.31 | i/t | i/t | i/t |
н/д betyder en ubrugelig eller manglende FPS capture, ikke et nulresultat.
Sammenligning af default og 0x1A
Sektion kaldt “Sammenligning af default og 0x1A”| Metrik | Default / ækvivalent 0x26 |
0x1A |
Observeret forskel |
|---|---|---|---|
| Click-to-photon AVG | 15.28 ms | 15.68 ms | 0x1A højere med 0.40 ms, omkring 2.6% |
| Click-to-photon SD | 3.12 ms | 3.31 ms | 0x1A højere med 0.19 ms |
| FPS AVG | 334.4 | 355.1 | 0x1A højere med 20.7, omkring 6.2% |
| P1 | 111.6 | 256.0 | 0x1A højere med 144.4 |
| P0.1 | 36.9 | 41.0 | 0x1A højere med 4.1 |
Forskellen i gennemsnitlig forsinkelse på 0.40 ms er markant mindre end den gemte spredning på omkring 3 ms. Uden rå samples kan man ikke korrekt opstille et konfidensinterval eller undersøge fordelingens form. FPS-forskellen er stor i beskrivende tal, men én capture pr. tilstand beviser ikke reproducerbarhed og udelukker ikke påvirkning fra kørselsrækkefølgen eller baggrundsbelastning.
Hvad der er bekræftet
Sektion kaldt “ Hvad der er bekræftet”- Parameteren er forbundet med foreground boost og Windows-schedulerens kvantepolitik.
- Dens aflæsning blev observeret i de undersøgte Windows 11 24H2 og 25H2.
- I den historiske Windows 10 22H2-serie blev der udført 300 click-to-photon-målinger pr. værdi.
- Blandt tilstandene med høj foreground boost viste default-ækvivalenten
0x26den laveste gennemsnitlige forsinkelse. - I samme historiske capture viste
0x1Aden højeste FPS AVG og P1 blandt tilstandene med høj boost.
Hvad der ikke er bekræftet
Sektion kaldt “ Hvad der ikke er bekræftet”- At
0x1Aaltid øger FPS, P1 eller billedjævnhed. - At
0x1Areducerer click-to-photon eller input latency. - At resultatet gentages på Windows 11, en anden CPU, i et andet spil eller uden fuld CPU-belastning.
- At vilkårlige værdier fra andres tweak-lister er nyttige eller sikre.
- At forskellene er statistisk signifikante: den gamle serie har ingen rå samples og ingen uafhængige FPS-gentagelser.
Begrænsninger
Sektion kaldt “ Begrænsninger”Den historiske tabel indeholder ikke et fuldt tilknyttet manifest af hardware, driver- og spilversioner, temperatur, power state og kørselsrækkefølge. Vinduerne i én capture betragtes ikke som uafhængige gentagelser. CapFrameX-fejl ramte primært tilstande uden foreground boost, så hele FPS-matricen kan ikke sammenlignes.
Undersøgelsen og de anvendte værktøjer tilhører udvikleren af BoosterX, som tilbyder denne indstilling, så udvikleren har en direkte interesse i resultaterne. Metoden og gyldighedsgrænserne er beskrevet ovenfor, og konklusionerne kan efterprøves via de åbne data og de anførte offentlige kilder. Derfor forbliver default en anbefaling, mens den højere historiske FPS 0x1A offentliggøres sammen med det negative resultat for gennemsnitlig forsinkelse og alle begrænsningerne.
Praktisk konklusion
Sektion kaldt “ Praktisk konklusion”Behold Windows default (0x02) på de fleste client-systemer med Windows 10 og 11. Anvend ikke 0x1A som en universel “scheduleroptimering”. Windows Server har en anden scheduler policy, er ikke målt og indgår ikke i denne anbefaling.
Test af 0x1A er kun berettiget ved reproducerbar CPU saturation. Brug flere parrede kørsler, bland rækkefølgen, registrer gennemsnitlig FPS, P1, P0.1, frametime spikes og click-to-photon. Behold kun ændringen ved en gentagelig forbedring af den ønskede metrik uden ny forringelse.
Side for den gratis indstilling og den præcise måde at gendanne: Win32PrioritySeparation i BoosterX.
Gendannelse af tilstand
Sektion kaldt “ Gendannelse af tilstand”Efter sammenligningen skal du føre parameteren tilbage til Windows default (0x02) via BoosterX og udføre den genstart, som grænsefladen foreslår. I det historiske datasæt er der ikke gemt en separat post om verifikation af gendannelsen, så denne undersøgelse betragter ikke recovery som en bekræftet del af det gamle eksperiment.
Offentlige primære kilder
Sektion kaldt “ Offentlige primære kilder”- Win32_OperatingSystem.ForegroundApplicationBoost, Microsoft Learn - Registry mapping og værdier for foreground boost.
- CPU Analysis, Microsoft Learn - quantum, priority, processor selection og omkostningen ved context switches.
- Scheduling Priorities, Microsoft Learn - round-robin, preemption og dynamic priority.
- Context Switches, Microsoft Learn - hvad der sker ved et trådskift.
- Windows Internals Sixth Edition sample chapters, Microsoft Press - historisk beskrivelse af parameterens felter og klientkvanta.
- BoosterX’ offentlige tabel med click-to-photon-målinger - de oprindeligt offentliggjorte aggregater fra denne historiske serie.
- Win32PSCalculator - åben implementering til afkodning af de nederste seks bits og til at finde den ækvivalente tilstand.
Offentlige kilder og formuleringer er verificeret: 2026-08-24.
Ændringshistorik
Sektion kaldt “Ændringshistorik”- 2026-09-20: interessekonflikt-disclaimer styrket til en fuld formulering med angivelse af, hvem undersøgelsen og værktøjerne tilhører.
- 2026-08-24: tilføjet den præcise placering af Registry value, den dokumenterede startværdi
0x02, Win32PSCalculator og grænserne for fortolkning af en manglende DWORD. - 2026-08-24: første publikation; tilføjet den fulde historiske matrice, opdelingen mellem mekanisme og brugeroplevet effekt samt default-anbefalingen.
