Hoppa till innehåll

Hur poängen beräknas

På den här sidan

PC Score kombinerar hastighet, latens och jämnhet till ett enda dimensionslöst index. Det kan inte direkt konverteras till FPS eller “procentuell Windows-acceleration”. Nedan beskrivs modellen score-model-1.2-candidate-1 för motorn 0.5.2. Villkoren under vilka råmetriken erhålls beskrivs i metodiken.

Inuti ett block beräknas genomströmningen utifrån antalet giltiga poster och tidsskillnaden mellan första och sista posten:

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

För tre upprepningar av samma belastning tas medelvärdet av blockens throughput. Istället bör man inte ta den övergripande fasraden, där scenarier från olika tidpunkter blandas i ett och samma block.

CPU-kadertid: varaktigheten av CPU-arbetet. För GPU och Combined beräknas kaderintervallen mellan intilliggande egna GPU-tidsstämplar för arbetets start. Varaktigheten av själva GPU-arbetet mellan start och slut registreras separat.

Positiva latenser tas inte bort, även om de försämrar talet. Felaktiga tidsstämplar markeras separat. Om en metriken saknas förblir den unavailable, noll sätts inte in där.

För själva beräkningen gäller en användbarhetsregel: icke-positiva, saknade, NaN och oändliga kritiska indata avvisar poängsättningen helt. Värdena klipps inte och ersätts inte med gränsvärden — modellen har inga “justerade” indata.

För sorterade värden används linjär interpolation Hyndman-Fan Type 7:

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

Indexet börjar på noll. P50 motsvarar medianen; P99 visar gränsen under vilken ungefär 99% av observationerna ligger.

  • 1% Low = 1000 / P99 av kadertiden i millisekunder; minst 100 intervall krävs.
  • 0,1% Low = 1000 / P99,9; minst 1 000 intervall krävs.

Dessa storheter är inverterade percentiler av tid, inte genomsnittlig FPS för den sämsta procenten av kader. Med en annan definition av Low FPS kan siffrorna för samma data skilja sig.

Dessutom beräknas medelvärde, minimum, maximum, P90, P95, standardavvikelse med division med n, medianabsolutavvikelse och variationskoefficient.

För hastighet gäller “högre är bättre”, därför är den normerade storheten измерение / эталон. För latens och förhållandet mellan svans och median gäller “lägre är bättre”, därför används эталон / измерение.

Vägt geometriskt medelvärde:

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

Det kombinerar förhållanden mellan mätningar och referenser, därför adderas inte olika måttenheter. Varje komponents inverkan beror på dess vikt: en fördubbling av en av dem fördubblar inte det slutliga resultatet.

Referensen är en fast uppsättning konstanter för normering, här kallad provisional-dev-reference-2026-08-21. Detta är inte “genomsnittsmarknaden” och inte en branschstandard. Vid fullständig överensstämmelse med referensvärdena är det slutliga indexet 10 000.

Scenario Referens-throughput, villkorliga kader/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)

I dessa två formler är argumenten balanserade. I Performance är bidraget från CPU och Combined lika stort (en tredjedel vardera), och vart och ett av de tre GPU-scenarierna bidrar med en niondel i den logaritmiska delen.

P50, P95 och P99 för intern latens från programvarusignal till slutfört GPU-arbete används.

Scenario P50, ms P95, ms P99, ms
Baseline 2,5 4 6
Loaded 9 12 16

För varje scenario beräknas G(эталон P50 / P50, эталон P95 / P95, эталон P99 / P99) med vikterna 50/30/20. Sedan:

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

Poängen ökar när latensen minskar. Själva mätningen i millisekunder är däremot bättre vid ett lägre värde.

Komponenten tittar på förhållandet P99 / P50 och visar hur den kraftiga svansen av latenser förhåller sig till den typiska tiden. Detta är inte ett mått på repeterbarhet mellan enskilda körningar.

Indata Referens 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

För varje indata beräknas эталон / измеренное отношение, sedan tas det geometriska medelvärdet av de fem värdena med lika vikter och multipliceras med 10 000. I den aktuella modellen hämtas GPU-svansen från Shader, inte från den gemensamma högen Geometry, Shader och Compute.

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

Vikterna 50/30/20 är fastställda inom metodiken. De innebär inte en universell andel för CPU, GPU och latens för alla spel. När man jämför resultat bör man därför titta både på komponentuppdelningen och på råmetriken.

För känslighetsanalys beräknar motorn även varianter av vikterna 60/20/20 och 40/40/20. Dessutom visas för varje lövindata en analytisk känslighet: det slutliga resultatet vid en avvikelse för denna indata på +1, +5 och +10%. De hjälper till att visa inverkan av valet av vikter och enskilda indata, men ersätter inte den huvudsakliga bedömningen.

I kontrollen av åtta körningar har alla fyra bedömningar räknats om från de sparade sammanfattande metriken. Avvikelsen uppgick till mindre än 0,000001 poäng. En sådan omräkning kontrollerar modellens aritmetik. Omräkningen kan inte förvandla en otjänlig fångst till en tjänlig: annullerade, ofullständiga och diagnostiska körningar förblir otjänliga vid varje ny bearbetning. Timernas noggrannhet och repeterbarheten på hårdvaran kräver separata kontroller.

Verifierat: 2026-09-20.