Skrivet av Mordekai:
HEDT lider väl av låg singel core performance, hur multitrådat ett spel än är så är det alltid beroende av en huvudtråds prestanda. Till skillnad från en rendering då lastbalansering är enkelt är ju ett spel i realtid och fysikberäkningar är beroende av ett sekventiellt beräknande.
Fast om man tittar på AMDs ThreadRipper så är all-core frekvensen ungefär densamma som konsumentmodellerna, ändå presterar konsumentmodellerna bättre i spel. Nu ligger en stor del av förklaringen i att designen hos TR är allt annat än optimal för sådant som är latensberoende.
Tittar man i stället på Intels HEDT plattform har den "Turbo boost 3.0" som gör att en (7000-serien) eller två kärnor (9000-serien) alltid boostar till 4,5 GHz. Ändå visar SweC tester att en på alla sätt lägre klockad i5-8400 är snabbare än 7900X i spel.
Och att minneshastigheten på senare tid börjat påverka spelprestanda uppmärksammades första gången på lite bredare front när Eurogamer testade i3-8100, en 2C/4T modell, med snabbare RAM. Om det är bättre utnyttjade av kärnor som är förklaringen blir det lite lurigt att förklara varför just 2C/4T är fallet där snabbare RAM gett högst utdelning (var perfekt skalning i vissa spel, något vi inte riktigt ser på 8C modellerna).
Latens
Vad är det som Ryzen är bättre på jämfört med TR och Intels S-serien är bättre på än X-serien? Latens mot RAM! Om förklaringen ligger i latens borde ett lackmustest vara att Ryzen 3000 rimligen skalar sämre med minneshastighet jämfört med både Ryzen 2000 och framförallt jämfört med S-serien. Orsaken är att total latens är summan av latens i kretsen (som är högre för Ryzen 3000) och latens i RAM (som enbart är en funktion av RAM-timings och RAM-frekvens).
Relativ ökning från DDR4-2666 till DDR4-3200
Hade varit betydligt enklare om SweC även testat minneskalning för Ryzen 2000 och Coffee Lake, men en liten fingervisning kan man få genom att ställa resultaten i denna artikel mot den minneskalning som SweC gjorde i deras 9900K test. Ställer man då DDR4-2666 mot DDR4-3200 ser man att
FPS ökning från att gå från DDR4-2666 till DDR4-3200
Vad | 3700X | 9900K |
---|
Genomsnittlig FPS | 6,8 % | 8,5 % |
Lägsta FPS | 5,0 % | 8,8 % |
D.v.s. det förväntade resultatet om minskning total latens är primär faktor, borde varit samma skalning om det enbart var bandbredd som var flaskhals. Notera dock att latens påverkas positivt också av högre bandbredd. Lägre "timings" minskar tiden till att första bit levereras till CPU, men högre bandbredd minskar latensen för slutförande av varje enskild transaktion!
Om det är ökad användning av antalet kärnor som är förklaringen: hur kommer det sig då att saker som skalar brutal väl med CPU-kärnor, som kompilering, rendering etc, i princip ser noll skalning med snabbare RAM-hastighet? HEDT presterar här bättre p.g.a. fler kärnor, men vi ser ju nu att 3700X konsekvent slår 2920X (lika många kärnor, högre RAM-bandbredd) och i flera fall även når 2950X (i alla fall i de fall Phoronix testade, trots att Linux har rätt mycket mindre problem med TR NUMA konfiguration jämfört med Windows).
Relativ ökning CPU med färre kärnor/trådar
Slutligen, ställer man genomsnittlig spelprestanda mellan 3900X, 3700X, 2700X, 9900K, 9700K samt 9600K hos SweC (där Ryzen 3000 har fördel av snabbare RAM) mot Guru3D (där alla kör med DDR4-3600 CL14) så ser detta om 3900X sätts som baseline (listar alltså relativ prestandaskillnad mot 3900X)
CPU | SweC | Guru3D |
---|
3900X | 0 % (baseline) | 0 % (baseline) |
3700X | -3 % | -4 % |
2700X | -16 % | -11 % |
9900K | 10 % | 20 % |
9700K | 7 % | 18 % |
9600K | -6 % | 10 % |
Det som står ut här är dels att 2700X tar in på 3000-serien med snabbare RAM, men framförallt vilket rejält lyft 9600K (6C/6T) gör när RAM-hastigheten skruvas upp.
Kan inte förklara varför spel börjat se sådan skalning med RAM-hastighet, men verkar varar så att ju med lastade CPU-kärnorna i genomsnitt ju viktigare blir RAM-hastighet för spelprestanda.