Pāriet uz saturu

CPU un GPU slodzes

Šajā lapā

PCBenchmarkX palaiž savas sintētiskās slodzes ar fiksētu darba apjomu katrā atkārtojumā, tāpēc tās var salīdzināt starp dažādām sistēmām. Šādos testos netiek izmantoti spēļu ieraksti, un gala skaitļi nav vienādi ar “FPS konkrētā spēlē”. Pilns mērījumu cikls ir aprakstīts metodikā.

Pašlaik tiek izmantots dzinējs 0.5.2 un slodze phase4.6-dev-1. Versija ir jāpatur prātā: scenārija maiņa padara dažādu laidienu rezultātus tieši nesalīdzināmus.

CPU blokā tiek izveidoti 65 536 objekti ar koordinātām, ātrumiem un karodziņiem. Katrā solī tiek pārrēķināta kustība, atsitieni no robežām un redzamība. Galvenais pavediens vispirms apstrādā 8 192 objektus pēc kārtas, pēc tam nodod atlikušo daļu darba pavedieniem un paralēli veic sagatavošanu. Pēc tam pavedieni tiek sinhronizēti.

Darba pavedienu skaits tiek izvēlēts pēc noteikuma:

workers = clamp(physical_cores − 1, 1, 6)

Ja fizisko kodolu skaits nav zināms, tiek ņemts novērtējums pēc loģiskajiem procesoriem. Kodoli pavedieniem netiek fiksēti manuāli. Šāda pieeja imitē “viena vadošā” pavediena modeli ar ierobežotu palīdzību, nevis totālu paralēlu izpildi uz katra kodola.

Objektu stāvoklis un apstaigāšanas kārtība ir determinēti. Pirms katra CPU sadaļas mērījuma tas tiek atiestatīts un veic 512 sagatavošanas kadrus ārpus ieskaites, lai sērijā neievilktu atlikušo stāvokli no iepriekšējā palaišanas reizes.

Slodzes determinisms nenozīmē vienādu izpildes laiku: frekvences, temperatūra, plānotājs un fona procesi turpina ietekmēt mērījumu.

GPU daļa darbojas caur Direct3D 12. Iekšējās darba tekstūras ir fiksētā izmērā 1920×1080, neatkarīgi no loga un darbvirsmas izmēra.

Slodze Skaitļošanas darbs Ko palīdz atšķirt
Geometry 6 ainas renderējumi ar 9 216 instancēm un 2 pēcapstrādes piegājieni Ģeometrijas apstrādi un grafiskā darba padevi
Shader 1 ainas renderējums, 16 pēcapstrādes piegājieni, šadera sarežģītības parametrs 24 Pikseļu un tekstūru slodzi
Compute Režģis 1920×1080, grupas 8×8, veselo skaitļu aprēķini ar 96 iterācijām Skaitļošanas šadera izpildi
Combined CPU simulācija un fiksēts grafiskais konveijers CPU, draivera un GPU kopdarbu

Tie ir atsevišķi scenāriji ar atšķirīgu darba apjomu. Piemēram, 8 000 nosacītus Compute kadrus nevar lasīt kā 8 000 FPS spēlē vai tieši salīdzināt ar 800 Geometry kadriem. Apvienošanai tiek izmantota normēšana pēc scenārija, kas aprakstīta punktu aprēķinā.

Slodzes ir rakstītas uz pārnesama iespēju līmeņa: shader model 5.0 un feature level 11_0 bez ražotāja paplašinājumiem. Viens un tas pats kods tiek izpildīts uz dažādām videokaršu paaudzēm un ražotājiem, bez atsevišķa atzara konkrētam ražotājam.

Pēc mērījumiem dzinējs pārbauda katras GPU slodzes izvadi: Geometry, Shader, Compute, Combined un ielādētajam aiztures testam ir fiksēta kontroles signatūra — gaidāmais neliela rezultāta fragmenta izskats. Pēc pabeigšanas nolasītais fragments tiek salīdzināts ar gaidīto; neatbilstība nozīmē, ka slodze izpildījās nepareizi, un padara palaišanu nederīgu. Pārbaude tiek veikta pēc ieskaites mērījumiem un pašus skaitļus neietekmē.

Atsevišķu diska ātruma un RAM caurlaidspējas testu šajā komplektā nav. Atmiņa un draiveris ietekmē slodžu izpildi, tomēr atsevišķus SSD un RAM novērtējumus benchmark neaprēķina.

Piecas veiktspējas slodzes tiek izpildītas trīs raundos ar kārtības pārkārtošanu:

Raunds Kārtība
1 CPU → Geometry → Shader → Compute → Combined
2 Shader → Compute → Combined → CPU → Geometry
3 Combined → CPU → Geometry → Shader → Compute

Katras slodzes vieta secībā mainās no raunda uz raundu. Tas samazina tās ietekmi uz salīdzinājumu. Iesildīšanās joprojām var mainīt rezultātus, tāpēc blokiem papildus tiek saglabāta izpildes ātruma izkliede un tās izmaiņas no pirmā bloka uz pēdējo.

Scenārija novērtējumam tiek ņemts trīs tā bloku throughput aritmētiskais vidējais. Bloku mediānu un ģeometrisko vidējo var apskatīt kā papildu diagnostiku, bet gala rādītājs joprojām paliek uz šī vidējā.

Kāpēc zemā izšķirtspēja neatvieglo galveno testu

Section titled “Kāpēc zemā izšķirtspēja neatvieglo galveno testu”

CPU, GPU un Combined slodzes tiek izpildītas ārpus ekrāna bufera. To komandu nosūtīšanas ceļš neizsauc Present un negaida attēlošanas rindas ierobežojumu. Iekšējās tekstūras paliek 1920×1080, pat ja darbvirsma ir pārslēgta uz 800×600.

Saskarne un aiztures tests darbojas caur atsevišķu izvades ceļu. Tāpēc darbvirsmas izšķirtspējas maiņa pati par sevi neatvieglo pašu slodzi. Tomēr lasīt “absolūti vienādu” rezultātu jebkurā izšķirtspējā joprojām nevar: izvades posmā piedalās draiveris un pašreizējais sistēmas stāvoklis.

Praktiskā pārbaude ar 1920×1080, 1280×768 un 800×600 ir sniegta rakstā par atkārtojamību.

Pārbaudīts aprakstītajai implementācijai: 2026-09-20.