Pular para o conteúdo

Win32PrioritySeparation: latência e FPS com CPU em carga total

Nesta página

Resposta curta: Win32PrioritySeparation realmente controla o foreground boost e parte da política de quantum da CPU. Nosso teste histórico não revelou um valor universalmente melhor. O padrão do Windows apresentou uma latência click-to-photon média um pouco menor, enquanto 0x1A coincidiu com os melhores FPS e P1 em um teste com 100% de carga de CPU. Devido à ausência de repetições independentes de FPS e de amostras brutas de click, recomendamos o padrão, e consideramos 0x1A apenas uma hipótese verificável para o cenário de CPU.

Status: a relação do parâmetro com o foreground boost está documentada pela Microsoft. A leitura do parâmetro foi observada em traces de sistema do Windows 11 24H2 e 25H2 coletados anteriormente. O efeito para o usuário foi medido em uma série histórica do Windows 10 22H2, mas não foi reproduzido em outro sistema ou em execução independente.

Verificamos três afirmações distintas, que não podem ser combinadas:

  1. O parâmetro existe e está relacionado à política do agendador do Windows.
  2. Os valores 0x02 e 0x1A representam políticas de quantum diferentes com o mesmo foreground boost máximo.
  3. 0x1A melhora os FPS ou a latência do jogo sob carga total de CPU.

As duas primeiras afirmações são confirmadas pela documentação pública e pela observação nas builds estudadas. A terceira exige medições e não se torna verdadeira apenas pelo funcionamento do parâmetro.

Camada Ambiente Resultado
Documentação pública Microsoft WMI, CPU Analysis e Windows Internals Descrevem foreground boost, quantum e a estrutura de bits histórica
Observação de sistema Windows 11 24H2 e 25H2 A leitura do parâmetro foi observada em traces coletados anteriormente
Click-to-photon Windows 10 22H2, Valorant, CPU 100% 300 medições por valor, agregados preservados
FPS A mesma série histórica Um capture do CapFrameX por configuração; parte das linhas é inválida por travamento do capture

Não há dynamic trace do Windows 10 22H2 para esta publicação. Também não há trace adequado para o Windows 11 26H1. As medições do Windows 10 não são transferíveis para o Windows 11 sem repetição.

Campo Valor
Hive e caminho HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\PriorityControl
Nome do valor Win32PrioritySeparation
Tipo REG_DWORD
Valor inicial documentado do client Windows 0x02 (2)

O Windows Internals indica 2 como valor inicial no client Windows e no servidor que não está configurado como application server. No nosso trace do Windows 11 25H2, o DWORD também estava presente explicitamente com o valor 2.

Por isso, não consideramos a ausência do valor como padrão universal do Windows. Ela pode ocorrer após alteração de imagem, remoção manual ou ações de ferramentas de terceiros, mas no estudo atual o cenário de clean-install com o DWORD ausente não foi reproduzido dinamicamente. A ausência da linha não pode ser interpretada automaticamente como 0.

A Microsoft associa a propriedade Win32_OperatingSystem.ForegroundApplicationBoost a Win32PrioritySeparation e documenta os valores 0, 1 e 2: sem boost, boost mínimo e boost máximo do foreground application.

O exemplo oficial do Windows Internals Sixth Edition descreve o parâmetro como um conjunto de campos:

Bits Finalidade
0-1 Grau do foreground boost
2-3 Quantums variáveis ou fixos
4-5 Quantums curtos ou longos

0x02 é o valor inicial documentado do client Windows: ele define o foreground boost máximo e deixa os demais campos para a política do sistema. Para o client Windows, isso historicamente corresponde a quantums variáveis curtos, que podem ser expressos explicitamente como 0x26. 0x1A define quantums fixos longos com o mesmo foreground boost máximo.

O projeto aberto Win32PSCalculator mostra essa equivalência diretamente. Ele mascara a entrada por meio de 0x3F, analisa os três campos de dois bits e reduz entradas diferentes a uma das 12 combinações canônicas. Isso ajuda a detectar valores placebo, que parecem diferentes, mas não criam um novo scheduler mode.

O documento Windows Internals é histórico. Usamos ele para interpretar os campos, mas não afirmamos que todas as tabelas internas de quantum sejam imutáveis em todas as builds modernas.

Decodificador de 6 bits

Verificação do modo real

Win32PSCalculator ↗

Insira o valor encontrado na lista de tweaks. A calculadora mostrará apenas os seis bits usados e a combinação canônica com o mesmo modo. Ela não altera nada no computador.

Hex com prefixo 0x, sem prefixo — decimal.

Modo equivalente0x26

Default do Windows: no Windows cliente corresponde ao modo explícito 0x26.

000010
Inserido
0x00000002 · 2
Após máscara 0x3F
0x02 · 2
Quantums
Default do sistema → curtos
Tipo
Default do sistema → variáveis
Boost de foreground
Máximo · 3:1

A calculadora funciona apenas no navegador e não lê nem altera o Registry. Seu resultado mostra a equivalência das combinações de bits, e não os FPS ou a latência esperados. A mesma versão está disponível na página de configuração do BoosterX.

O agendador escolhe uma thread pronta considerando priority, affinity, estado e quantum restante. Após esgotar o quantum, a thread pode ceder o processador a outra thread pronta de mesma priority. A troca de contexto tem custo, então quantums mais longos podem reduzir o scheduler turnover e sustentar o throughput sob forte disputa pela CPU.

Isso explica a possível direção do efeito, mas não promete ganho no jogo. Um quantum fixo mais longo pode, ao mesmo tempo, piorar a capacidade de resposta de outras threads. Se a CPU não é o gargalo, pode não haver ganho mensurável.

O teste foi realizado no Valorant, no Windows 10 22H2, com carga de CPU registrada de 100%. Para cada valor de Registry, foram feitas 300 medições click-to-photon com o aparato de hardware do BoosterX. O sinal elétrico do botão do Logitech G PRO X SUPERLIGHT inicia o cronômetro, e o fotossensor o interrompe após a mudança de brilho na tela. O percurso completo está descrito na metodologia de pesquisas.

A tabela preservou AVG, STDDEV, MIN e MAX da latência. Para os FPS, foi usado o CapFrameX, mas no bloco disponível há apenas um capture por configuração. Para parte dos valores, o capture travava, então essas linhas de FPS estão marcadas como indisponíveis e não são reconstruídas por suposições.

As 300 amostras brutas de click, o P90, as distribuições, o manifest exato de hardware/driver e as repetições independentes de FPS não estão vinculados a essa série antiga. Isso limita a conclusão estatística.

Valor Política AVG, ms SD, ms MIN, ms MAX, ms FPS AVG P1 P0.1
0x2A curta, fixa, boost alto 16.61 2.69 10.53 21.96 351.3 226.2 43.9
0x29 curta, fixa, boost médio 17.08 3.02 10.31 25.09 336.8 254.9 14.3
0x28 curta, fixa, sem boost 17.62 4.94 10.19 47.04 n/d n/d n/d
0x26 equivalente explícito ao padrão 0x02 15.28 3.12 9.30 23.08 334.4 111.6 36.9
0x25 curta, variável, boost médio 16.90 2.73 11.42 23.97 334.7 102.6 27.6
0x24 curta, variável, sem boost 18.71 4.66 11.88 32.48 n/d n/d n/d
0x1A longa, fixa, boost alto 15.68 3.31 9.97 23.30 355.1 256.0 41.0
0x19 longa, fixa, boost médio 16.80 2.61 10.08 21.95 352.0 272.9 21.5
0x18 longa, fixa, sem boost 22.74 8.81 11.65 55.10 n/d n/d n/d
0x16 longa, variável, boost alto 16.77 2.88 11.32 23.97 346.4 200.1 34.0
0x15 longa, variável, boost médio 16.13 2.34 10.08 20.95 332.1 144.4 17.8
0x14 longa, variável, sem boost 19.87 5.55 12.43 52.31 n/d n/d n/d

н/д significa um capture de FPS inválido ou ausente, e não um resultado zero.

Métrica Padrão / equivalente 0x26 0x1A Diferença observada
Click-to-photon AVG 15.28 ms 15.68 ms 0x1A maior em 0.40 ms, cerca de 2.6%
Click-to-photon SD 3.12 ms 3.31 ms 0x1A maior em 0.19 ms
FPS AVG 334.4 355.1 0x1A maior em 20.7, cerca de 6.2%
P1 111.6 256.0 0x1A maior em 144.4
P0.1 36.9 41.0 0x1A maior em 4.1

A diferença da latência média de 0.40 ms é bem menor que a dispersão preservada de cerca de 3 ms. Sem as amostras brutas, não é possível construir corretamente um intervalo de confiança nem verificar a forma da distribuição. A diferença de FPS é grande nos números descritivos, mas um capture por estado não prova reprodutibilidade e não exclui a influência da ordem das execuções ou da carga em segundo plano.

  • O parâmetro está relacionado ao foreground boost e à política de quantum do agendador do Windows.
  • Sua leitura foi observada nos Windows 11 24H2 e 25H2 estudados.
  • Na série histórica do Windows 10 22H2, foram feitas 300 medições click-to-photon por valor.
  • Entre os estados com foreground boost alto, o equivalente ao padrão 0x26 apresentou a menor latência média.
  • No mesmo capture histórico, 0x1A apresentou o maior FPS AVG e P1 entre os estados com boost alto.
  • Que 0x1A sempre aumenta os FPS, o P1 ou a fluidez dos quadros.
  • Que 0x1A reduz o click-to-photon ou a input latency.
  • Que o resultado se repete no Windows 11, em outra CPU, em outro jogo ou sem carga total de CPU.
  • Que valores arbitrários de listas de tweaks de terceiros sejam úteis ou seguros.
  • Que as diferenças sejam estatisticamente significativas: para a série antiga não há amostras brutas nem repetições independentes de FPS.

A tabela histórica não contém o manifest completo vinculado de hardware, versões de driver e do jogo, temperatura, power state e ordem das execuções. As janelas de um mesmo capture não são consideradas repetições independentes. Os erros do CapFrameX afetaram principalmente os estados sem foreground boost, por isso a matriz completa de FPS não pode ser comparada.

A pesquisa e as ferramentas utilizadas pertencem ao desenvolvedor do BoosterX, que oferece essa configuração, portanto o desenvolvedor tem interesse direto nos resultados. A metodologia e os limites de aplicabilidade estão descritos acima, e as conclusões podem ser verificadas pelos dados abertos e pelas fontes públicas listadas. Por isso, o padrão continua sendo a recomendação, e o FPS histórico mais alto de 0x1A é publicado junto com o resultado negativo de latência média e todas as limitações.

Mantenha o padrão do Windows (0x02) na maioria dos sistemas client Windows 10 e 11. Não aplique 0x1A como uma “otimização de agendador” universal. O Windows Server tem outra scheduler policy, não foi medido e não faz parte desta recomendação.

Testar 0x1A só se justifica com CPU saturation reproduzível. Use várias execuções pareadas, alterne a ordem, registre FPS médio, P1, P0.1, frametime spikes e click-to-photon. Mantenha a alteração apenas se houver melhora repetível da métrica-alvo sem nova piora.

Página da configuração gratuita e forma exata de reverter: Win32PrioritySeparation no BoosterX.

Após a comparação, retorne o parâmetro para o padrão do Windows (0x02) pelo BoosterX e execute a reinicialização sugerida pela interface. No conjunto histórico, não foi preservado um registro separado da verificação de reversão, por isso esta pesquisa não considera o recovery uma parte confirmada do experimento antigo.

As fontes públicas e as formulações foram verificadas em: 2026-08-24.

  • 2026-09-20: o aviso de conflito de interesses foi reforçado para a formulação completa, com a propriedade da pesquisa e das ferramentas.
  • 2026-08-24: adicionados o local exato do Registry value, o valor inicial documentado 0x02, o Win32PSCalculator e os limites de interpretação do DWORD ausente.
  • 2026-08-24: primeira publicação; adicionados a matriz histórica completa, a separação entre mecanismo e efeito para o usuário, além da recomendação do padrão.