점수 계산 방식
목차
PC Score는 속도, 지연 시간, 균일성을 하나의 무차원 지수로 결합합니다. 이를 FPS나 “Windows 가속 비율”로 직접 변환할 수는 없습니다. 아래에는 엔진 0.5.2용 score-model-1.2-candidate-1 모델이 설명되어 있습니다. 원본 메트릭이 얻어지는 조건은 방법론에 설명되어 있습니다.
원본 메트릭
섹션 제목: “원본 메트릭”블록 내부에서 처리량은 유효 레코드 수와 첫 번째 및 마지막 레코드의 시간 차이로 계산됩니다:
throughput = (N_valid − 1) × QPC_frequency / (last_QPC − first_QPC)동일한 부하를 세 번 반복한 경우 블록 처리량의 평균을 사용합니다. 대신 서로 다른 시점의 시나리오가 한 블록에 섞여 있는 전체 단계 행을 사용해서는 안 됩니다.
CPU 프레임 시간: CPU 작업의 지속 시간입니다. GPU 및 Combined의 경우 프레임 간격은 인접한 자체 GPU 시작 타임스탬프 사이에서 계산됩니다. 시작과 끝 사이의 GPU 작업 자체의 지속 시간은 별도로 기록됩니다.
양수 지연 시간은 수치를 악화시키더라도 제거되지 않습니다. 잘못된 타임스탬프는 별도로 표시됩니다. 메트릭이 없으면 unavailable로 남으며, 0이 대입되지 않습니다.
계산 자체에는 적합성 규칙이 적용됩니다: 비양수, 누락, NaN 및 무한한 핵심 입력은 스코어링 전체를 거부합니다. 값은 클램프되거나 경계값으로 대체되지 않습니다 — 모델에는 “보정된” 입력이 없습니다.
백분위수와 Low FPS
섹션 제목: “백분위수와 Low FPS”정렬된 값에는 선형 보간 Hyndman-Fan Type 7이 사용됩니다:
h = (n − 1) × pi = floor(h)percentile = x[i] + (h − i) × (x[min(i + 1, n − 1)] − x[i])인덱스는 0부터 시작합니다. P50은 중앙값에 해당하며, P99는 관측치의 약 99%가 그 아래에 위치하는 경계를 나타냅니다.
- 1% Low = 1000 / P99 (밀리초 단위 프레임 시간); 최소 100개의 간격이 필요합니다.
- 0,1% Low = 1000 / P99,9; 최소 1 000개의 간격이 필요합니다.
이 값들은 시간의 역백분위수이며, 가장 나쁜 프레임 비율에 대한 평균 FPS가 아닙니다. Low FPS를 다른 정의로 계산하면 동일한 데이터에서 수치가 달라질 수 있습니다.
추가로 평균, 최솟값, 최댓값, P90, P95, n로 나눈 표준 편차, 중앙값 절대 편차 및 변동 계수가 계산됩니다.
정규화와 기하 평균
섹션 제목: “정규화와 기하 평균”속도는 “클수록 좋음”이므로 정규화된 값은 измерение / эталон와 같습니다. 지연 시간과 중앙값에 대한 꼬리 비율은 “작을수록 좋음”이므로 эталон / измерение가 사용됩니다.
가중 기하 평균:
G(x, w) = exp(Σ(w × ln(x)) / Σw)이는 측정값과 기준값의 비율을 결합하므로 서로 다른 측정 단위가 더해지지 않습니다. 각 구성 요소의 영향은 가중치에 따라 달라집니다: 그중 하나를 두 배로 늘려도 최종 결과가 두 배가 되지는 않습니다.
기준은 정규화를 위한 고정 상수 집합이며, 여기서는 provisional-dev-reference-2026-08-21이라고 합니다. 이는 “시장 평균”이나 업계 표준이 아닙니다. 기준값과 완전히 일치하면 최종 지수는 10 000입니다.
Performance
섹션 제목: “Performance”| 시나리오 | 기준 처리량, 조건부 프레임/초 |
|---|---|
| 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)이 두 공식에서 인수들은 균형을 이룹니다. Performance에서 CPU와 Combined의 기여는 동일하며(각각 3분의 1), 세 가지 GPU 시나리오는 각각 로그 부분에서 9분의 1을 기여합니다.
Core Latency
섹션 제목: “Core Latency”소프트웨어 신호부터 GPU 작업 완료까지 내부 지연 시간의 P50, P95 및 P99가 사용됩니다.
| 시나리오 | P50, ms | P95, ms | P99, ms |
|---|---|---|---|
| Baseline | 2,5 | 4 | 6 |
| Loaded | 9 | 12 | 16 |
각 시나리오에 대해 가중치 50/30/20으로 G(эталон P50 / P50, эталон P95 / P95, эталон P99 / P99)가 계산됩니다. 그런 다음:
Core Latency Score = 10000 × G(Baseline, Loaded; 가중치 40/60)지연 시간이 감소하면 점수가 상승합니다. 밀리초 단위의 측정값 자체는 반대로 값이 작을수록 좋습니다.
Consistency
섹션 제목: “Consistency”이 구성 요소는 P99 / P50 비율을 살펴보며, 일반적인 시간 대비 지연 시간의 꼬리가 얼마나 강한지를 보여줍니다. 이는 개별 실행 간의 반복성 메트릭이 아닙니다.
| 입력 | 기준 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 |
각 입력에 대해 эталон / измеренное отношение가 계산된 다음, 다섯 값의 기하 평균을 동일 가중치로 구하고 10 000을 곱합니다. 현재 모델에서 GPU 꼬리는 Geometry, Shader 및 Compute의 통합 묶음이 아니라 Shader에서 가져옵니다.
최종 PC Score
섹션 제목: “최종 PC Score”PC Score = 10000 × (Performance / 10000)^0.50 × (Core Latency Score / 10000)^0.30 × (Consistency / 10000)^0.20가중치 50/30/20은 방법론 내부에서 정해집니다. 이는 모든 게임에 대한 CPU, GPU 및 지연 시간의 보편적인 비율을 의미하지 않습니다. 따라서 결과를 비교할 때는 구성 요소별 분석과 원본 메트릭도 함께 살펴봐야 합니다.
민감도 분석을 위해 엔진은 가중치 60/20/20 및 40/40/20 변형도 계산합니다. 추가로 각 리프 입력에 대해 분석적 민감도가 출력됩니다: 해당 입력이 +1, +5 및 +10% 편차될 때의 최종 점수입니다. 이는 가중치 선택과 개별 입력의 영향을 확인하는 데 도움이 되지만, 기본 평가를 대체하지는 않습니다.
8회 실행 검증에서 네 가지 평가 모두 저장된 요약 메트릭에서 재계산되었습니다. 차이는 0,000001점 미만이었습니다. 이러한 재계산은 모델의 산술을 검증합니다. 재계산은 부적합한 캡처를 적합하게 만들 수 없습니다: 취소된 실행, 불완전한 실행 및 진단 실행은 어떤 재처리에서도 부적합한 상태로 남습니다. 타이머 정밀도와 하드웨어에서의 반복성은 별도의 검증이 필요합니다.
검증됨: 2026-09-20.
