Pular para o conteúdo

Como são calculadas as pontuações

Nesta página

PC Score combina velocidade, latência e uniformidade num único índice adimensional. Não pode ser convertido diretamente em FPS ou em «percentagem de aceleração do Windows». Abaixo está descrito o modelo score-model-1.2-candidate-1 para o motor 0.5.2. As condições em que as métricas de origem são obtidas estão descritas na metodologia.

Dentro do bloco, a capacidade de transferência é calculada a partir do número de registos válidos e da diferença de tempos entre o primeiro e o último registo:

throughput = (N_valid − 1) × QPC_frequency / (last_QPC − first_QPC)

Para três repetições de uma mesma carga, toma-se a média do throughput dos blocos. Em vez disso, não se deve tomar a linha geral da fase, onde num único bloco estão misturados cenários de momentos diferentes.

Tempo de CPU por frame: duração do trabalho da CPU. Para GPU e Combined, os intervalos entre frames são calculados entre GPU timestamps próprios consecutivos do início do trabalho. A duração do próprio trabalho da GPU entre o início e o fim é registada separadamente.

Latências positivas não são removidas, mesmo que estraguem o número. Timestamps incorretos são assinalados separadamente. Se a métrica não existir, permanece unavailable, não se substitui por zero.

Para o próprio cálculo aplica-se uma regra de elegibilidade: entradas críticas não positivas, ausentes, NaN e infinitas rejeitam o scoring por completo. Os valores não são limitados nem substituídos por valores-limite — o modelo não tem entradas «corrigidas».

Para valores ordenados utiliza-se interpolação linear Hyndman-Fan Type 7:

h = (n − 1) × p
i = floor(h)
percentile = x[i] + (h − i) × (x[min(i + 1, n − 1)] − x[i])

O índice começa em zero. P50 corresponde à mediana; P99 mostra o limite abaixo do qual se situam aproximadamente 99% das observações.

  • 1% Low = 1000 / P99 do tempo de frame em milissegundos; são necessários pelo menos 100 intervalos.
  • 0,1% Low = 1000 / P99,9; são necessários pelo menos 1 000 intervalos.

Estes valores são percentis inversos do tempo, e não o FPS médio para a pior percentagem de frames. Com outra definição de Low FPS, os números sobre os mesmos dados podem diferir.

Adicionalmente calculam-se a média, o mínimo, o máximo, P90, P95, o desvio padrão com divisão por n, o desvio absoluto mediano e o coeficiente de variação.

Para a velocidade «mais é melhor», por isso a grandeza normalizada é igual a измерение / эталон. Para a latência e a razão da cauda em relação à mediana «menos é melhor», por isso utiliza-se эталон / измерение.

Média geométrica ponderada:

G(x, w) = exp(Σ(w × ln(x)) / Σw)

Ela combina as razões das medições em relação às referências, por isso unidades de medida diferentes não se somam. A influência de cada componente depende do seu peso: duplicar um deles não duplica o resultado final.

A referência é um conjunto fixo de constantes para normalização, aqui designada provisional-dev-reference-2026-08-21. Não é o «mercado médio» nem uma norma do setor. Com coincidência total com os valores de referência, o índice final é igual a 10 000.

Cenário Referência de throughput, frames convencionais/s
CPU 4 000
Geometry 740
Shader 360
Compute 7 600
Combined 665
GPU = G(Geometry / 740, Shader / 360, Compute / 7600)
Performance = 10000 × G(CPU / 4000, GPU, Combined / 665)

Nestas duas fórmulas os argumentos estão equilibrados. Em Performance, o contributo de CPU e Combined é igual (um terço cada), e cada um dos três cenários de GPU contribui com um nono na parte logarítmica.

Utilizam-se P50, P95 e P99 da latência interna desde o sinal de software até à conclusão do trabalho da GPU.

Cenário P50, ms P95, ms P99, ms
Baseline 2,5 4 6
Loaded 9 12 16

Para cada cenário calcula-se G(эталон P50 / P50, эталон P95 / P95, эталон P99 / P99) com pesos 50/30/20. Depois:

Core Latency Score = 10000 × G(Baseline, Loaded; pesos 40/60)

Os pontos aumentam quando a latência diminui. A própria medição em milissegundos, pelo contrário, é melhor com um valor menor.

O componente analisa a razão P99 / P50 e mostra como a cauda forte das latências se relaciona com o tempo típico. Não é uma métrica de repetibilidade entre execuções individuais.

Entrada Referência P99/P50
CPU frame time 1,20
Shader frame time 1,15
Combined frame time 1,20
Baseline Core Latency 2,40
Loaded Core Latency 16/9

Para cada entrada calcula-se эталон / измеренное отношение, depois toma-se a média geométrica dos cinco valores com pesos iguais e multiplica-se por 10 000. No modelo atual, a cauda da GPU é retirada do Shader, e não do conjunto geral de Geometry, Shader e Compute.

PC Score = 10000 ×
(Performance / 10000)^0.50 ×
(Core Latency Score / 10000)^0.30 ×
(Consistency / 10000)^0.20

Os pesos 50/30/20 estão definidos dentro da metodologia. Não significam uma proporção universal de CPU, GPU e latência para todos os jogos. Por isso, ao comparar resultados, é preciso olhar tanto para a decomposição por componentes como para as métricas de origem.

Para a análise de sensibilidade, o motor também calcula variantes de pesos 60/20/20 e 40/40/20. Adicionalmente, para cada entrada folha é apresentada a sensibilidade analítica: a pontuação final quando essa entrada varia em +1, +5 e +10%. Ajudam a ver a influência da escolha de pesos e de entradas individuais, mas não substituem a avaliação principal.

Na verificação de oito execuções, as quatro pontuações foram recalculadas a partir das métricas resumidas guardadas. A divergência foi inferior a 0,000001 pontos. Esse recálculo verifica a aritmética do modelo. O recálculo não pode transformar uma captura inelegível numa elegível: execuções canceladas, incompletas e de diagnóstico permanecem inelegíveis em qualquer reprocessamento. A precisão dos temporizadores e a repetibilidade no hardware exigem verificações separadas.

Verificado: 2026-09-20.