CPU játékhoz - legyen két maggal több?

CPU versus VGA 3.5

Éppen készülőben van a nagy népszerűségnek örvendő, processzorok és videokártyák ideális párosításait firtató cikksorozatunk negyedik része. Ennek egyik kiemelt témája lehetne a manapság egyre nagyobb vitákat kirobbantó, a processzormagok számára vonatkozó kérdés: hány mag kell a játékokhoz? A kérdés jogos, hiszen a processzorgyártók egyre jobban nyomják a négymagosokat, de a plusz két mag nincs ingyen, ezért érdemes fontolóra vennünk, hogy egy játékos konfiguráció összeállítása során melyik az ésszerűbb választás, mivel járunk jobban: egy két plusz két magos CPU-val vagy egy erősebb videokártyával.

A témát nagyon leegyszerűsítve járjuk körbe, nem áll szándékunkban hosszú elemzésekbe bonyolódni, mert nincs értelme. Lássuk miért is. Egy játékban milyen feladatokat lát el egy processzor? Alapvetően feldolgozza magát a programot, végrehajtja az utasításokat, a monitoron megjelenő 2D-s képkockához szükséges geometriát (csontvázat) kiszámolja és elküldi a videokártyának (DX10-es hardver esetében ezt már a VGA végzi), egyes játékokban ráhúzza a bőrt a karakterekre (skinning), kiszámolja az árnyékokat, a fizikai kölcsönhatásokat, különböző transzformációkat, ezen felül kikalkulálja a számítógép által megszemélyesített karakterek AI-ját, vagyis mesterséges intelligenciáját, illetve a játékvilág fizikai modelljét. Utóbbi két területen további processzormagok bevonásával realisztikusabb játékélmény vagy gyorsabb futás érhető el. Minél nagyobb számítási kapacitás áll a rendelkezésünkre, annál több karakter AI-ját számolhatjuk ki, illetve elméletben annál okosabb lehet az AI (de ehhez hathatós programozói támogatás kell). Ezenfelül annál több dolgot tudunk szimulálni, tehát realisztikusabb lesz (lehet) a játékvilág. A fizika kiszámolása olyan erőforrásokat igényel, hogy erre a feladatra már különálló szoftvereket, sőt gyorsítókártyát fejlesztettek ki, gondoljunk az NVIDIA által felvásárolt Ageia PhysX-re vagy az Intel kezébe került Havok Physicsre.

Hirdetés

Mindez szépen hangzik, és akár már arra gondolhatnánk, hogy minél több magot tarzalmaz a processzorunk, annál jobb. Ez elméletben igaz, de a dolognak vannak buktatói is. Például mit érünk a szupererős processzorral, ha a játékban alkalmazott beállítás (amely alatt a felbontás nagyságát és a játékban található egyéb „csúszkákat” értjük) olyan mértékben terheli le a videokártyát, hogy annak valamelyik belső tulajdonsága válik szűk keresztmetszetté: a shaderszámolás (ALU) gyorsasága vagy a textúrázás (TEX) sebessége, esetleg a memóriasávszélesség (RAM) szűkössége vagy valami más? Miután a videokártya az a komponens, amely (egyszerűen fogalmazva) megjeleníti a játékot (kiszámolja a monitoron látható 2D-s jelenetet), alapvető befolyása van a játék sebességére. Ha a VGA belső felépítése okán adott beállítás mellett 43 fps-t képest magából kipréselni, akkor nincs mit tenni, 43 fps sebességgel fog futni a játék, lehet alatta 1 magos, 2 magos, 4 magos vagy akár 8 magos processzor. Utóbbi persze csak adott korlátokon belül igaz, mert a processzornak a felelőssége, hogy a videokártyát ellássa megfelelő mennyiségű számolnivaló adattal. Ha ez megtörténik, ha elérünk egy bizonyos pontot, onnantól többé szinte nincs is korlátozó hatása a játék sebességére. Ezt nevezzük videokártya-limitált szituációnak.

Ha az első probléma megkapná a hardverrel kapcsolatos aggályaink címszót, akkor a második probléma a szoftverrel kapcsolatos aggályokra vonatkozhatna. Mit értünk ezalatt? A játékokban konkrétan meg kell határozni, hogy az egyes programszálak (azaz processzormagok) milyen munkát végezhetnek. Ha ez nincs kikötve, akkor a processzormagok egyszerűen kihasználatlanul állnak, és nem csinálnak semmit. Ez a játékírók felelőssége. Ugyanakkor a meghajtóprogram összeállítása során is oda kell figyelni a megfelelő optimalizációk meglétére. Ezzel bizonyos mértékig akár a játékírók „trehányságát” is ki lehet küszöbölni.


2 mag vagy 4 mag? [+]

Összességében tehát elmondhatjuk, hogy a sokmagos processzorok látható és érzékelhető kihasználásához sok tényező együttállására van szükség. Először is kell egy olyan játék, melyben a többedik mag(ok) számára a játékprogram írói kiadták a megoldandó feladatot (vagyis képes kihasználni azokat), ez általában az AI és/vagy a fizika számolása. Kell egy meghajtóprogram, amelyet megfelelően optimalizáltak, nem áll összeütközésben a játékkal. És olyan beállítást kell használnunk, ahol a videokártya még nem szűk keresztmetszet a rendszerben. Ez utóbbi egyébként felvet egy érdekes kérdést. Ha ahhoz, hogy a sokmagos processzor látható és érzékelhető mértékben gyorsítsa a játékot, olyan beállításra van szükség, ami nem hajtja ki a videokártyát, akkor mi értelme erős VGA-t venni? Ha gyengébb VGA-t használunk, akkor ez a bizonyos pont lejjebb csúszik, és VGA-limitessé válik az a beállítás, ami az előző, erősebb VGA-val még nem volt az. És éppen ez lehetne mondanivalónk lényege röviden, de először lássuk a teszteket.


Videokártya / driverGigabyte GeForce 8800 GTS 512 MB (@675/1688/1100 MHz) / GeForce 174.74
Asus Radeon HD 3870 X2 1024 MB (825/900 MHz) / Catalyst 8.3

ProcesszorCore 2 Duo E6700 - 2,66 GHz (4 MB L2 cache)
Core 2 Quad Q6700 - 2,66 GHz (2 x 4 MB L2 cache)
AlaplapGigabyte P35T-DQ6 – Intel P35 chipset
Memória2 x 1024 MB Samsung DDR3, 1066 MHz-en 5-5-5-15 időzítésekkel
MerevlemezSamsung SpinPoint T166 500 GB (SATA, 7200 rpm, 16 MB cache)
TápegységCooler Master 550 Watt
Op. rendszerWindows Vista Ultimate 32 bit SP1

Játékok

  • Epic Games / Midway – Unreal Tournament 3; max (5/5) beállítás, DX10, 8xAF
  • Crytek / EA Games – Crysis; high és very high beállítás, 8xAF
  • Capcom / Capcom – Lost Planet: Extreme Condition; medium/high és high (medium HDR) medium, 8xAF
  • Codemasters / Codemasters – Colin McRae: DiRT; high és high + 4xAA/16xAF beállítás
  • Massive Entertainment / Vivendi – World in Conflict; high/DX9 beállítás és high/DX10 beállítás, 16xAF

A meghajtóprogramokban a képminőségi beállításokat a GeForce-on „legjobb minőség”-re, a Radeonon pedig a legszebbre kapcsoltuk, az anizotropikus szűrés (8x-os) végig be volt kapcsolva, később csak az élsimítás mértékét állítgattuk játékból. A „Catalyst AI”-t alapállapotban hagytuk.

A legtöbb játékban (Crysis, Lost Planet, Colin McRae DiRT) egy begyakorolt útvonalat jártunk be háromszor egymás után, miközben FRAPS-szel mértük az fps-eket. A három lefutott kör után az átlagot jegyeztük fel. A World in Conflictban a játékba beépített teljesítménytesztet futtattuk le, az UT3 esetében pedig a Shangri-la fly-by demót alkalmaztuk a mérések során.

Melyik éri meg?

Azt mindenképpen le kell szögeznünk, hogy direkt és kifejezetten csak olyan játékokat teszteltünk, amelyekről biztosan tudjuk, hogy már tartalmaznak többmagos optimalizációt. Teljesen nyilvánvaló, hogy ebből a szempontból felesleges lenne egy olyan játékot letesztelnünk, amely csak egyetlen processzormagot képes kihasználni (a legtöbb még ilyen), hiszen ez két vagy négy CPU-maggal nagyon minimálisan gyorsulna, azt is csak azért, mert a háttérben futó folyamatokat egy többmagos processzor esetében a második mag magára vállalhatná. Videokártyákból azért választottunk egy-egyet a két nagy gyártótól, mert nem tudhatjuk, hogy a meghajtóprogram a két rivális esetében milyen szinten van felkészítve a többmagos működésre (elvileg mindketten támogatják). Szokásunkhoz híven az összes játékot két beállítás mellett néztük meg, egy kevésbé VGA-izzasztó és egy jobban VGA-ra támaszkodó beállítást választottunk.


2 mag4 mag2 mag4 mag
Unreal Tournament 3
1280x1024 8xAF
Unreal Tournament 3
2048x1536 8xAF
GeForce 8800 GTS 512 MB1181518687
Radeon HD 3870 X211514983115
Crysis DX10
1280x1024 high 8xAF
Crysis DX10
1280x1024 very high 8xAF
GeForce 8800 GTS 512 MB40402324
Radeon HD 3870 X232322222
Lost Planet EC
1024x768 DX10 medium/high 8xAF
Lost Planet EC
1280x960 DX10 high (medium HDR) 8xAF
GeForce 8800 GTS 512 MB1001002020
Radeon HD 3870 X2981012929
Colin McRae DiRT
1280x1024 high 8xAF
Colin McRae DiRT
1600x1200 high 4xAA/8xAF
GeForce 8800 GTS 512 MB45533536
Radeon HD 3870 X243473839
World in Conflict
1280x1024 DX9 high/compressed text. 16xAF
World in Conflict
1280x1024 DX10 high/compressed text. 16xAF
GeForce 8800 GTS 512 MB54584244
Radeon HD 3870 X255574143

Az Unreal Tournamentben remekül látszik, hogy a program motorja jól lett megírva, kettőről négymagosra cserélve is nőtt az fps-ek száma. A játék nem támogat semmilyen élsimítást, ezért a HD 3870 X2-vel még a 2048x1536-os beállítás is CPU-limites volt. A valóság az, hogy tesztünk többi játékában nem leszünk szemtanúi ilyen látványos különbségeknek. Az UT3 volt a kivétel, ami erősíti a szabályt. A Crysis gyakorlatilag sehogyan sem skálázódott a magok számának növekedésével. A Lost Planet esetében csak a gyengébbik beállításnál és csak a Radeonnal tapasztaltunk minimális gyorsulást, pedig CPU-teszjeinkben CPU-limites beállítások mellett ebben a játékban szépen kiütközik a végrehajtóegységek száma. A Colin McRae DiRT is egy kellemes meglepetés, a vegyeslimitesebb (alacsonyabb felbontású) beállítás a processzorcserére mutatott némi reakciót, de az erősebbik beállításnál már ez a játék sem gyorsult négy maggal. A World in Conflictról ugyanez mondható el, csak nagyon kis mértékben változott a játék sebessége.

Következtetés

Olybá tűnik, hogy napjaink játékaiban nincs szükségünk a négymagos processzorokra. A helyzet viszont az, hogy a CPU-k már jó ideje a szálszintű párhuzamosítás irányába mozdultak el, ezért igen valószínűtlen, hogy mondjuk a mostaniakhoz viszonyítva "hiperkomplex", 6 GHz-es processzorokkal találkozzunk a közeljövőben, ehelyett azok egyre több magból fognak felépülni. Ez „rákényszeríti” majd a játékprogramok fejlesztőit arra, hogy kihasználják ezt a lehetőséget, és egyre több játékkal fogunk találkozni, melyek egy sokmagos processzorral gyorsabban fognak futni. Egészen addig, amíg olyan beállítást használunk, ami nem hajtja ki teljesen a videokártyát. Amint elérjük ezt a pontot, a videokártya válik szűk keresztmetszetté.

Aki sok évre előre tervez, és nagy beruházásra készül, annak érdemes már most négymagos processzorban gondolkodnia. Nemcsak a játékok miatt, hiszen az alapvető, mindennapokban használt alkalmazások közül is egyre többet készítenek fel a kettőnél több magos processzorok kihasználására. Viszont aki rövidebb távban gondolkodik, annak mi inkább egy erősebb videokártyát javasolunk. Mint láthattuk a tesztben, a plusz két mag csak kivételes esetben hozott nagyjából 15%-nál több fps-t, ezzel szemben ha VGA-t választunk, lehetőségünk van akár 50–100 vagy még több százalékkal gyorsabbat is venni.

fLeSs

Az Asus Radeonját az Asus, a Gigabyte GeForce-át pedig az Expert Computer Kft. bocsátotta rendelkezésünkre.

Azóta történt

Előzmények

Hirdetés