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.

A cikk még nem ért véget, kérlek, lapozz!

Hirdetés

Azóta történt

Előzmények