Fordele og ulemper ved cpu'er med mere end 1 kerne i 3D-spil
af Webmaster Sunday den 13 July 2008 kl. 22:12 [ Processorer ] Både AMD og Intel har lanceret cpu'er med mere end éen kerne. I flere tilfælde, hvor applikationer anvendes, der ikke understøtter mere end en enkelt cpu-kerne, er der ikke nødvendigvis fordele ved disse nye cpu'er, mens der kan være langt større fordele i nyere 3D-spil, der understøtter mere end éen processorkerne. Endvidere har specielt AMD leveret uheldige hastighedsbetegnelser, som vi også ser nærmere på i denne oversigtsartikel.
AMD har i år 2005 lanceret cpu'er med 2 kerner. For cpu'er med 2 kerner gælder, at disse bærer tilføjelsen "X2" i cpu-betegnelsen. Der er indtil videre tale om følgende cpu'er:
AMD ser dog ud til at have åbnet for en række problemer, der kan give anledning til beklagelige misforståelser, ved at anvende særligt nummersystem for nye cpu'er med 2 kerner. Dette skyldes, at en "Athlon 64 X2" med en given hastighedsbetegnelse generelt er markant langsommere til 3D-spil end en almindelig "Athlon 64" med kun éen kerne, som har tilsvarende hastighedsbetegnelse. Prøv f.eks. at se her, hvorledes en X2 3800+ klarer sig mod en almindelig single-kerne 3800+:
Ydelse i Half-Life 2 - Athlon 64 X2 3800+ mod Athlon 64 3800+
Som billedet viser, er en almindelig Athlon 64 3800+ hele 28% hurtigere end X2-modellen med samme hastighedsbetegnelse (32bit). Også i Far Cry er der store problemer:
Ydelse i Far Cry - Athlon 64 X2 3800+ mod Athlon 64 3800+
Her er single-kerne 3800+ hele 21% hurtigere end dual-kerne 3800+ (32bit). Dette er dog at forvente, eftersom der er begrænset effekt af dual-kerne-cpu'er i aktuelle 3D-spil. Med andre ord gælder følgende i 3D-spil som tommelfingerregel:
Athlon 64 X2 4800+ (2,4 GHz og 1MB cache per kerne) = Athlon 64 4000+ (2,4 GHz og 1MB cache)
Athlon 64 X2 4600+ (2,4 GHz og 512kb cache per kerne) = Athlon 64 3800+ (2,4 GHz og 512kb cache)
Athlon 64 X2 4200+ (2,2 GHz og 512kb cache per kerne) = Athlon 64 3500+ (2,2 GHz og 512kb cache)
Athlon 64 X2 3800+ (2,0 GHz og 512kb cache per kerne) = Athlon 64 3200+ (2,0 GHz og 512kb cache)
Athlon 64 3800+ (2,4GHz og 512kb) burde derfor være max. 20% hurtigere end Athlon 64 X2 3800+ (2,0GHz og 512kb) i 3D-spil, men ovenstående resultater viser forskelle på op til næsten 30%. Dette er vanskeligt at forklare, men også tidligere har der været problemer med at benytte 2 kerner i Quake3 Arena, selv om dette spil understøttede flere cpu'er - læs evt. mere om dette fænomen her:
Både John Carmack fra ID Software (Doom3) og Gabe Newell fra Valve Software (Half-Life 2) ser heller ikke ud til at være specielt begejstrede over cpu'er med mere end éen kerne - her er Newells kommentar (specielt rettet mod XBox 360 og Playstation 3, der begge anvender cpu'er med mere end en kerne):
"Technologically, I think every game developer should be terrified of the next generation of processors. Your existing code, you can just throw it away. It's not going to be helpful in creating next generation game titles," said Newell. "Most of the problems of getting these systems running on these multicore processors are not solved. They are doctoral theses, not known implementation problems. So it's not even clear that over the lifespan of these next generation systems that they will be solved problems. The amount of time it takes to get a good multicore engine running, the Xbox 360 might not even be on the market any longer. That should scare the crap out of everybody." [...] "If writing in-order code [in terms of difficulty] is a one and writing out-of-order code is a four, then writing multicore code is a 10," cautions Newell. "That's going to have consequences for a lot of people in our industry. People who were marginally productive before, will now be people that you can't afford to have write engine or game code. They can't get a big enough picture of what's going on in the box so they'll be a net negative on the project."
Kilde: http://www.next-gen.biz/index.php?option=com_content&task=view&id=510&Itemid=2
Og Carmacks kommentar:
"... the returns on multi-core are going to be initially disappointing, for developers or for what people get out of it. [...] The xbox 360 has an architecture where you’ve essentially got three processors and they’re all running from the same memory pool and they’re synchronized and cache coherent and you can just spawn off another thread right in your program and have it go do some work. Now that’s kind of the best case and it’s still really difficult to actually get this to turn into faster performance or even getting more stuff done in a game title. The obvious architecture that you wind up doing is you try to split off the renderer into another thread. Quake 3 supported dual processor acceleration like this off and on throughout the various versions. It’s actually a pretty good case in point there, where when we released it, certainly on my test system, you could run and get maybe a 40% speed up in some cases, running in dual processor mode, but through no changing of the code on our part, just in differences as video card drivers revved and systems changed and people moved to different OS revs, that dual processor acceleration came and went, came and went multiple times. At one point we went to go back and try to get it to work, and we could only make it work on one system. We had no idea what was even the difference between these two systems. It worked on one and not on the other. A lot of that is operating system and driver related issues which will be better on the console, but it does still highlight the point that parallel programming, when you do it like this, is more difficult. Anything that makes the game development process more difficult is not a terribly good thing."
Kilde: http://www.beyond3d.com/forum/showthread.php?t=22648
Hvad fremtiden bringer er uvist, men ifølge Carmack og Newell er der næppe gode grunde til at købe dual-kerne cpu'er frem for single-kerne mht. 3D-spil indtil videre. Anandtech har endvidere beskrevet, at der kan være kompatibilitetsproblemer mellem Athlon 64 X2 og flere spil, hvorfor det kan være en god ide at afvente svar fra mere omfattende undersøgelser, hvis man påtænker at købe Athlon 64 X2:
Opdatering 10/11 2005: XBitLabs har netop udgivet større undersøgelse af diverse aktuelle cpu'er i nyeste 3D-spil som BattleField 2, F.E.A.R., Serious Sam 2, Quake4 og Call of Duty 2. I deres undersøgelse var Athlon 64 X2 3800+ (med 2 kerner) 4% hurtigere end Athlon 64 3800+ (med éen kerne) i Serious Sam 2 og begge cpu'er var lige hurtige i Quake 4 (forskel på 1%). Imidlertid var Athlon 64 3800+ hhv. 9% og 24% hurtigere i F.E.A.R. og BattleField 2, hvorfor Athlon X2 64 3800+ i gennemsnit var markant langsommere end Athlon 64 3800+ (bemærk, at resultater fra F.E.A.R. og Call of Duty 2 var så begrænsede af grafikkortet, at disse resultater i mindre grad afspejler reelle cpu-forskelle - ærgerligt, at XBitLabs ikke testede i lavere opløsninger som 640x480 eller 800x600). Læs mere her:
Resultater fra Quake4 og Serious Sam 2 indikerer, at der kan være fordele ved 2 kerner samlet i éen cpu i aktuelle 3D-spil, såfremt der sammelignes cpu'er med ens taktfrekvens og cache-lager (f.eks. var Athlon 64 X2 4800+ sammenlignet med Athlon 64 4000+ hhv. 19% og 14% hurtigere i Serious Sam 2 og Quake4, men 7% langsommere i BattleField 2 - i F.E.A.R. og Call of Duty 2 var der ingen forskelle). Indtil videre er så få spil berørt, at der fortsat må forventes ringe gevinst ved cpu'er med 2 kerner ifht. pris og effektforbrug (og i 3D-spil er Athlon 64 3800+ med éen kerne fortsat markant hurtigere end Athlon 64 X2 3800+ med to kerner). Endvidere var konklusionen følgende hos XBitLabs, da de vurderede aktuelle cpu'ers betydning i BattleField 2, F.E.A.R., Quake4, Serious Sam 2 og Call of Duty 2 - og denne konklusion kan måske virke meget overraskende og give stof til eftertanke:
"...in real gaming conditions the performance will still be limited by the graphics processor, and not by the CPU. I have to stress that we arrived at this conclusion having one of the today’s fastest and most powerful graphics cards in our system: NVIDIA GeForce 7800 GT. And if this powerful graphics card doesn’t require a super-fast CPU, then what can we say about the mainstream graphics solutions? It means that gamers with the mainstream or slower video subsystem shouldn’t even think of getting a powerful CPU: it will be just a waste of money.
So, we can state that games are not the applications you should look at when shopping for the new CPU."
Kilde: http://www.xbitlabs.com/articles/cpu/display/28cpu-games.html
Og Toms Hardware nåede den 12. januar 2006 en tilsvarende konklusion:
"Dual core will be the way of the future, but we are still waiting on applications and drivers to fully support the added capabilities. In the short term, single core is the best approach if you are solely running games."
Kilde: http://www.twitchguru.com/2006/01/12/how_many_cores_do_you_need_to_be/
Gennem test af Athlon 64 4000+ mod Athlon 64 X2 4800+ oplevede NVNews i slutningen af januar 2006 følgende med GeForce 7800GTX-512 i SLI (med Forceware 81.98, der er optimeret til at udnytte 2 kerner på nyeste cpu'er):
Her ses, at 2 kerner med 2,4 GHz og 1MB cache (=Athlon 64 X2 4800+) gav 13% (0 - 25%) mere i ydelse i 1024x768 ifht. éen kerne med 2,4 Ghz og 1MB cache (Athlon 64 4000+). Dog kostede Athlon 64 X2 4800+ (kr. 5.000,00) i februar 2006 næsten 100% mere end Athlon 64 4000+ (kr. 2.600,00), hvorfor en så ringe ydelsesmæssig gevinst gør det vanskeligt at anbefale X2 4800+ over 4000+. Bemærk også, at i 1600x1200 med 4xFSAA kræves hurtigere grafikkort end 7800GTX-512 i SLI, før der kan måles markante fordele ved cpu'er med 2 kerner (her var X2 4800+ i gennemsnit 5% hurtigere end 4000+) - hvilket i nogen grad underbygger de tidligere beskrevne konklusioner fra XBitLabs og Toms Hardware.
En undersøgelse fra 28. februar 2006 bekræfter fortsat, hvad vi i denne artikel startede med at konstatere, nemlig at Athlon 64 3800+ er bedre valg til PC-spil end Athlon X2 3800+; her er et uddrag (baseret på test med 7800GT i 640x480-opløsning):
"One of my concerns about the dual core technology is the naming system that AMD have chosen. It confuses people. People read Athlon 64 X2 3800+ and they mentally think of 2 3800+ CPUs. That's not the case at all. It's closer to two Athlon 64 3200+ CPUs in terms of clock speed. Although there are two cores, every game we tested equals the performance of one single core 3200+. FarCry has dual core support but during testing I monitored CPU usage and if 75% of one core was in use, only 25% of the other core was used. So you still have the equivalent of one CPU core sitting there doing nothing [...] If you are a die hard competitive gamer and every frame per second counts and you want the extra features turned on like AA and shadows then MHz is still king. This may change as the year draws on, but everything I have seen in testing shows that the higher the MHz, the better the fps. So out of the three CPUs I have tested here (=Athlon 64 3200+, Athlon 64 X2 3800+ og Athlon 64 3800+, red.), the Athlon 64 3800+ is the goer for hardcore competitive gamers."
Kilde: http://www.viaarena.com/default.aspx?PageID=5&ArticleID=461&P=1
HardOCP har i en undersøgelse publiceret den 21. marts 2006 beskrevet følgende mht. vurdering af cpu'er med 2 kerner i aktuelle 3D-spil:
"There just simply aren’t any major 3D game titles that utilize dual core processors in any way that is advantageous. Yes, NVIDIA drivers “support” dual core CPUs and are able to leverage the second core for some offloading of driver work but this did not result in any tangible real-world benefits at all. We are sorry to say if you are purchasing a dual core CPU in hopes of better gameplay you aren’t going to see any difference right now [...] In our gameplay we did come across some problems that we believe are associated with dual core CPUs, games and possibly drivers. There were times in some games, such as F.E.A.R. that we would ‘feel’ a slowdown in the framerate. It was as if we were moving along smoothly and then out of no where, unexpectedly in situations not typical of bringing the framerate down we would feel a change in the framerate. Now, it wasn’t enough of a drop to bring us below 30 FPS or cause the game to not be playable. It was however a slight annoyance because when you are at a high framerate and the framerate drops, let’s say for example from 80 FPS to 50 or 40 FPS you feel that change in the framerate and it may bother you. We feel this is a problem with dual core CPUs because we did not experience this problem with the single core 2.8 GHz Prescott or our regular single core FX-55 we test with on a regular basis."
Kilde: http://enthusiast.hardocp.com/article.html?art=MTAwMiwxLCxoZW50aHVzaWFzdA==
Firingsquad har den 25. april 2006 publiceret undersøgelse af betydningen af cpu'er med 2 kerner i spillet "The Elder Scrolls IV: Oblivion", hvor de fandt, at Athlon 64 X2 4800+ (2,4 GHz og 1MB cache per kerne) var fra 12 - 19% hurtigere end Athlon 64 4000+ (2,4 GHz og 1MB cache). Så der var op til 19% ekstra ydelse at vinde med "dual-core" cpu i dette spil, men desværre kun i meget lave opløsninger (800x600 med lavt detaljeniveau), da Oblivion var så grafikkort-begrænset allerede i 1280x1024 med ATi Radeon X1900XTX grafikkort, at der ingen forskelle var på systemer med Athlon 64 3500+ eller Athlon 64 FX-60 cpu'er. Mere information her:
Anandtech har tillige undersøgt cpu-betydning i "The Elder Scrolls IV: Oblivion" og fandt, at Athlon 64 X2 4800+ var 9 - 11% hurtigere end Athlon 64 4000+, så her var der mindre gevinst end hos Firingsquad (og i Danmark koster 4800+ forsat 100% mere end 4000+, så den ekstra ydelse med dual-core cpu er ganske dyr). Anandtechs cpu-resultater fra Oblivion, som udkom den 28. april 2006, kan findes her:
Her var der absolut ingen gevinst ved dual-core i de tætte skovområder, hvor der netop er mest behov for ekstra ydelse - mens der i de relativt trange, men mindre cpu-belastende, grotter var 19% mere ydelse med dual-core.
Cpu'er med mere end 2 kerner er dog på vej, og den 2. november 2006 offentliggjorde bl.a. Anandtech resultater fra Intel Core 2 Extreme QX6700, som har 4 kerner:
Tiden må vise, om spil som Alan Wake mm., der angiveligt understøtter 4 cpu-kerner, virkelig er i stand til at drage markant fordel af mere end 1-2 kerner (Alan Wake ser også ganske intensivt ud mht. grafikken, så uden meget hurtigt grafikkort kan man umiddelbart gætte på, at en hurtig cpu med mange kerner kan miste betydning). Aktuelt anbefaler vi dog alligevel at købe Intel cpu med 4 kerner (Core 2 Quad), og argumenterne for dette samt mere relevant information om cpu'er med 4 kerner kan findes i begyndelsen af denne artikel:
Resultater fra Far Cry 2, her målt af tyske PC Games Hardware, har netop illusteret nogle af de mest lovende resultater med fler-kerne-cpu'er i længere tid - se her:
Det helt fantastiske er, hvis vi skal tro disse resultater, at en almindelig Core 2 Quad på 2,4 Ghz (Q6600) er hele 6 gange hurtigere end en single-core Athlon 64 på 2,4 GHz (4000+). Det kan virke mystisk, at Core 2 Quad 2,4 Ghz er mere end 4 gange hurtigere end Athlon 64 4000+, men resultaterne er ikke til at diskutere med. Sådanne resultater bekræfter også, hvorfor vi fortsat anbefaler Core 2 Quad Q6600 - dels er denne efterhånden gamle cpu stadig blandt de mest overclockningsvenlige, og dels, som grafen viser, er der begrænset gevinst ved hurtigere modeller (Core 2 Quad overclocket til 4GHz er her kun ca. 20% hurtigere end 2,4 GHz). Så Core 2 Quad Q6600 eller tilsvarende (til prisen) er fortsat, hvad vi anbefaler som bedste cpu til prisen her i efteråret 2008. Endvidere, i en omfattende artikel fra 23. oktober 2008, hvor diverse quad-core cpu'er til rimelige priser testes, konkluderer XBitLabs:
"One of the best choices among low-cost quad-core processors is still the old 65nm Core 2 Quad Q6600. Intel has dropped its price so significantly lately that is remains in the spotlight despite its age and relatively high power consumption. Especially since in some applications such as 3D games, for instance, it manages to perform as fast as a more expensive Core 2 Quad Q9300 thanks to large L2 cache."
Endvidere har Toms Hardware den 24. oktober 2008 testet en god gammel Athlon 64 4000+ (2,4 GHz, single-core og 1MB cache) mod Athlon 64 X2 4200+ (2,2 GHz, dual-core og 512kb cache per kerne) og Athlon 64 X2 5600+ (2,8 GHz, dual-core og 1MB cache per kerne) og resultaterne viser følgende:
Her er 5600+ hele 148% hurtigere end 4000+, og havde Call of Duty 4 understøttet blot éen kerne, så burde 5600+ kun have været 17% hurtigere - så her er fuld smæk og lidt til for hver en kerne. Og de 148% ekstra hastighed ved to kerner, der hver anvender 17% højere taktfrekvens end Athlon 64 4000+, er kun en minimums-estimering via Radeon HD 4850-grafikkort - måske ville resultater med hurtigere grafikkort medføre endnu højere hastighed. Desværre inkluderede Toms Hardware ingen quad-core cpu i denne test, men til gengæld blev Crysis også testet:
Her er 5600+ hele 107% hurtigere end 4000+ i 1024x768 (eftersom cpu'erne laver det samme uanset skærmopløsning, så gælder, at jo lavere skærmopløsning, desto mere præcist kan vi se, hvad de forskellige cpu'er kan yde - i høje skærmopløsninger bliver cpu'ernes reelle formåen skjult af flaskehals ved grafikkortet). Igen er dette kun en minimumsestimering, da vi mangler resultater fra lavere opløsninger såsom 800x600 til at bevidne, at det anvendte grafikkort ikke udgør flaskehals i selv 1024x768. Det korte af det lange er dog, at single-core nu er helt død - så alle Gabe Newells ovenstående bekymringer må siges at have være relativt grundløse. Så afvikles et nyt spil utilfredsstillende på single-core cpu, og er ydelsen/billedraten/FPS relativt ensartet i forskellige skærmopløsninger, så er der næppe nogen vej udenom en ny cpu med mere end éen kerne - og vi anbefaler fortsat quad-core som Q6600, bedre eller tilssvarende.
I det populære spil Grand Theft Auto 4 (GTA IV) er der heller ingen vej uden om quad-core, hvis spillet skal være en nydelse:
Her ses, at Core 2 Quad Q6600 (2,4 Ghz) med 4 kerner er 52% hurtigere end Core 2 Duo E6600 (2,4 Ghz) med 2 kerner. Endvidere er den mest interessante udvikling vel set fra AMD's perspektiv:
Så her giver springet fra en god gammel single-core Athlon 64 til en quad-core Phenom med tilsvarende taktfrekvenser næsten fuld valuta for hver en kerne. Med andre ord, så er der næppe tvivl om, at cpu'er med under 4 kerner allerede nu ved at være forældede - medmindre disse er overclocket betydeligt.
Førnævnte trend er også mere end tydelig i Dragon Age: Origins, hvor quad-core cpu'er er langt hurtigere end tilsvarende dual-core cpu'er - se her:
Herved ses, at quad-core cpu var hele 75% hurtigere end dual-core cpu, hvilket er et yderst interessant resultat, da quad-core her næsten medfører fordoblet cpu-ydelse.
Bemærk også, at selv overclocket til 3,6 GHz, så var dual-core E8400 langsommere end quad-core Q6600 på 2,4 Ghz. Dvs. ønskes bedst mulig ydelse i Dragon Age: Origins, så behøves en quad-core cpu - jf. de cpu'er, som dominerer testresultaterne.
Vi følger naturligvis udviklingen og adderer yderligere information, når dette tilkommer.
HardwareTidende er en omfattende guide til optimal afvikling af computerspil på PC. Dette kræver viden om hardware såsom grafikkort, cpu'er, ram og meget mere. Du kan læse mere om konceptet bag HardwareTidende her:
Hardwaretidende bliver kun opdateret, når der sker noget nyt og interessant. Skriv endelig til os, hvis der er noget, vi har overset; nyheder modtages gerne.