Salta ai contenuti

Win32PrioritySeparation: latenza e FPS con CPU a pieno carico

In questa pagina

Risposta breve: Win32PrioritySeparation controlla effettivamente il foreground boost e parte della politica dei quanti della CPU. Il nostro test storico non ha individuato un valore universalmente migliore. Il default di Windows ha mostrato una latenza click-to-photon media leggermente inferiore, mentre 0x1A ha coinciso con i migliori FPS e P1 in un test al 100% di carico CPU. Data l’assenza di ripetizioni FPS indipendenti e di click sample grezzi, raccomandiamo il default, e consideriamo 0x1A solo un’ipotesi verificabile per lo scenario CPU.

Stato: la relazione del parametro con il foreground boost è documentata da Microsoft. La lettura del parametro è stata osservata in tracce di sistema Windows 11 24H2 e 25H2 raccolte in precedenza. L’effetto utente è stato misurato in una serie storica su Windows 10 22H2, ma non è stato riprodotto su un’altra macchina o in un’esecuzione indipendente.

Abbiamo verificato tre affermazioni diverse, che non vanno unite:

  1. Il parametro esiste ed è legato alla politica dello scheduler di Windows.
  2. I valori 0x02 e 0x1A rappresentano politiche dei quanti diverse a parità di foreground boost massimo.
  3. 0x1A migliora gli FPS o la latenza di gioco a pieno carico CPU.

Le prime due affermazioni sono confermate dalla documentazione pubblica e dall’osservazione sulle build esaminate. La terza richiede misurazioni e non diventa vera solo per come è fatto il parametro.

Livello Ambiente Risultato
Documentazione pubblica Microsoft WMI, CPU Analysis e Windows Internals Sono descritti foreground boost, quantum e la struttura storica a bit
Osservazione di sistema Windows 11 24H2 e 25H2 La lettura del parametro è stata osservata in tracce raccolte in precedenza
Click-to-photon Windows 10 22H2, Valorant, CPU 100% 300 misurazioni per valore, sono conservati gli aggregati
FPS La stessa serie storica Una cattura CapFrameX per configurazione; parte delle righe non è utilizzabile per il blocco della cattura

Per questa pubblicazione manca una dynamic trace di Windows 10 22H2. Anche per Windows 11 26H1 non esiste una traccia utilizzabile. Le misurazioni su Windows 10 non si trasferiscono a Windows 11 senza ripetizione.

Campo Valore
Hive e percorso HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\PriorityControl
Nome del valore Win32PrioritySeparation
Tipo REG_DWORD
Valore iniziale documentato di client Windows 0x02 (2)

Windows Internals indica 2 come valore iniziale su client Windows e su un server non configurato come application server. Nella nostra traccia di Windows 11 25H2 il DWORD era presente anch’esso esplicitamente con valore 2.

Per questo non consideriamo l’assenza del valore un default universale di Windows. Può comparire dopo la modifica di un’immagine, una rimozione manuale o l’azione di uno strumento di terze parti, ma nella ricerca attuale lo scenario clean-install con DWORD assente non è stato riprodotto dinamicamente. L’assenza della riga non può essere interpretata automaticamente come 0.

Microsoft associa la proprietà Win32_OperatingSystem.ForegroundApplicationBoost a Win32PrioritySeparation e documenta i valori 0, 1 e 2: senza boost, boost minimo e massimo dell’applicazione in foreground.

Il sample ufficiale di Windows Internals Sixth Edition descrive il parametro come un insieme di campi:

Bit Scopo
0-1 Grado di foreground boost
2-3 Quanti variabili o fissi
4-5 Quanti corti o lunghi

0x02 è il valore iniziale documentato di client Windows: imposta il foreground boost massimo e lascia gli altri campi alla politica di sistema. Per client Windows questo corrisponde storicamente a quanti variabili corti, che si possono esprimere esplicitamente come 0x26. 0x1A imposta quanti fissi lunghi con lo stesso foreground boost massimo.

Il progetto aperto Win32PSCalculator mostra questa equivalenza direttamente. Maschera l’input tramite 0x3F, scompone i tre campi da due bit e riduce scritture diverse a una delle 12 combinazioni canoniche. Questo aiuta a individuare i valori placebo, che sembrano diversi ma non creano una nuova scheduler mode.

Il documento Windows Internals è storico. Lo usiamo per interpretare i campi, ma non affermiamo che tutte le quantum table interne siano immutate in tutte le build moderne.

Decoder a 6 bit

Verifica modalità reale

Win32PSCalculator ↗

Inserisci il valore trovato nella lista dei tweak. Il calcolatore mostrerà solo i sei bit utilizzati e la combinazione canonica con la stessa modalità. Non modifica nulla sul computer.

Hex con prefisso 0x, senza prefisso è decimal.

Modalità equivalente0x26

Default di Windows: su Windows client corrisponde alla modalità esplicita 0x26.

000010
Inserito
0x00000002 · 2
Dopo maschera 0x3F
0x02 · 2
Quanti
Default di sistema → corti
Tipo
Default di sistema → variabili
Boost foreground
Massimo · 3:1

Il calcolatore funziona solo nel browser e non legge né modifica il Registry. Il suo risultato mostra l’equivalenza delle combinazioni di bit, non gli FPS o la latenza attesi. La stessa versione è disponibile sulla pagina delle impostazioni di BoosterX.

Lo scheduler sceglie un thread pronto tenendo conto di priority, affinity, stato e quantum rimanente. Dopo aver esaurito il quantum, il thread può cedere il processore a un altro thread pronto con la stessa priority. Il cambio di contesto ha un costo, quindi quanti più lunghi possono ridurre lo scheduler turnover e sostenere il throughput in caso di forte competizione per la CPU.

Questo spiega la possibile direzione dell’effetto, ma non promette un guadagno nel gioco. Un quantum fisso più lungo può allo stesso tempo peggiorare la reattività degli altri thread. Se la CPU non è il collo di bottiglia, potrebbe non esserci alcun guadagno misurabile.

Il test è stato eseguito in Valorant su Windows 10 22H2 con un carico CPU registrato del 100%. Per ogni valore di Registry sono state eseguite 300 misurazioni click-to-photon con il banco hardware BoosterX. Il segnale elettrico del pulsante del Logitech G PRO X SUPERLIGHT avvia il timer, e il fotosensore lo ferma dopo il cambiamento di luminosità sullo schermo. L’intero percorso è descritto nella metodologia delle ricerche.

Nella tabella sono conservati AVG, STDDEV, MIN e MAX della latenza. Per gli FPS è stato usato CapFrameX, ma nel blocco disponibile c’è una sola cattura per configurazione. Per alcuni valori la cattura si bloccava, quindi queste righe FPS sono contrassegnate come non disponibili e non vengono ricostruite con supposizioni.

I 300 click sample originali, P90, le distribuzioni, il manifest esatto di hardware/driver e le ripetizioni FPS indipendenti non sono collegati a questa vecchia serie. Questo limita la conclusione statistica.

Valore Politica AVG, ms SD, ms MIN, ms MAX, ms FPS AVG P1 P0.1
0x2A corta, fissa, boost alto 16.61 2.69 10.53 21.96 351.3 226.2 43.9
0x29 corta, fissa, boost medio 17.08 3.02 10.31 25.09 336.8 254.9 14.3
0x28 corta, fissa, senza boost 17.62 4.94 10.19 47.04 n/d n/d n/d
0x26 equivalente esplicito del default 0x02 15.28 3.12 9.30 23.08 334.4 111.6 36.9
0x25 corta, variabile, boost medio 16.90 2.73 11.42 23.97 334.7 102.6 27.6
0x24 corta, variabile, senza boost 18.71 4.66 11.88 32.48 n/d n/d n/d
0x1A lunga, fissa, boost alto 15.68 3.31 9.97 23.30 355.1 256.0 41.0
0x19 lunga, fissa, boost medio 16.80 2.61 10.08 21.95 352.0 272.9 21.5
0x18 lunga, fissa, senza boost 22.74 8.81 11.65 55.10 n/d n/d n/d
0x16 lunga, variabile, boost alto 16.77 2.88 11.32 23.97 346.4 200.1 34.0
0x15 lunga, variabile, boost medio 16.13 2.34 10.08 20.95 332.1 144.4 17.8
0x14 lunga, variabile, senza boost 19.87 5.55 12.43 52.31 n/d n/d n/d

н/д indica una cattura FPS non utilizzabile o assente, non un risultato nullo.

Metrica Default / equivalente 0x26 0x1A Differenza osservata
Click-to-photon AVG 15.28 ms 15.68 ms 0x1A superiore di 0.40 ms, circa 2.6%
Click-to-photon SD 3.12 ms 3.31 ms 0x1A superiore di 0.19 ms
FPS AVG 334.4 355.1 0x1A superiore di 20.7, circa 6.2%
P1 111.6 256.0 0x1A superiore di 144.4
P0.1 36.9 41.0 0x1A superiore di 4.1

La differenza della latenza media di 0.40 ms è nettamente inferiore alla dispersione conservata di circa 3 ms. Senza i sample grezzi non si può costruire correttamente un intervallo di confidenza né verificare la forma della distribuzione. La differenza FPS è grande nei numeri descrittivi, ma una sola cattura per stato non dimostra la riproducibilità e non esclude l’influenza dell’ordine delle esecuzioni o del carico in background.

  • Il parametro è legato al foreground boost e alla politica dei quanti dello scheduler di Windows.
  • La sua lettura è stata osservata nelle Windows 11 24H2 e 25H2 esaminate.
  • Nella serie storica su Windows 10 22H2 sono state eseguite 300 misurazioni click-to-photon per valore.
  • Tra gli stati con foreground boost alto, l’equivalente del default 0x26 ha mostrato la latenza media più bassa.
  • Nella stessa cattura storica 0x1A ha mostrato il maggiore FPS AVG e P1 tra gli stati con boost alto.
  • Che 0x1A aumenti sempre FPS, P1 o la fluidità dei frame.
  • Che 0x1A riduca il click-to-photon o l’input latency.
  • Che il risultato si ripeta su Windows 11, un’altra CPU, un altro gioco o senza pieno carico CPU.
  • Che valori arbitrari presi da liste di tweak altrui siano utili o sicuri.
  • Che le differenze siano statisticamente significative: per la vecchia serie non ci sono sample grezzi né ripetizioni FPS indipendenti.

La tabella storica non contiene il manifest completo collegato di hardware, versioni di driver e gioco, temperatura, power state e ordine delle esecuzioni. Le finestre di una sola cattura non sono considerate ripetizioni indipendenti. Gli errori di CapFrameX hanno riguardato prevalentemente gli stati senza foreground boost, quindi la matrice FPS completa non è confrontabile.

La ricerca e gli strumenti usati appartengono allo sviluppatore di BoosterX, che fornisce questa impostazione, quindi lo sviluppatore ha un interesse diretto nei risultati. La metodologia e i limiti di applicabilità sono descritti sopra, e le conclusioni si possono verificare con i dati aperti e le fonti pubbliche elencate. Per questo il default resta la raccomandazione, e il più alto FPS storico 0x1A viene pubblicato insieme al risultato negativo sulla latenza media e a tutte le limitazioni.

Lasciate Windows default (0x02) sulla maggior parte dei sistemi client Windows 10 e 11. Non applicate 0x1A come “ottimizzazione dello scheduler” universale. Windows Server ha una scheduler policy diversa, non è stato misurato e non rientra in questa raccomandazione.

La verifica di 0x1A è giustificata solo in presenza di una CPU saturation riproducibile. Usate più esecuzioni appaiate, alternate l’ordine, registrate FPS medio, P1, P0.1, frametime spikes e click-to-photon. Mantenete la modifica solo in caso di miglioramento ripetibile della metrica obiettivo senza un nuovo peggioramento.

Pagina dell’impostazione gratuita e modo esatto per ripristinare: Win32PrioritySeparation in BoosterX.

Dopo il confronto riportate il parametro a Windows default (0x02) tramite BoosterX ed eseguite il riavvio proposto dall’interfaccia. Nel set storico non si è conservata una voce separata sulla verifica del ripristino, quindi questa ricerca non considera il recovery una parte confermata del vecchio esperimento.

Fonti pubbliche e formulazioni verificate: 2026-08-24.

  • 2026-09-20: il disclaimer sul conflitto di interessi è stato rafforzato fino alla formulazione completa con l’appartenenza della ricerca e degli strumenti.
  • 2026-08-24: aggiunti la posizione esatta del Registry value, il valore iniziale documentato 0x02, Win32PSCalculator e i limiti di interpretazione del DWORD assente.
  • 2026-08-24: prima pubblicazione; aggiunte la matrice storica completa, la separazione tra meccanismo ed effetto utente, e la raccomandazione del default.