Történet – Szakértőnk és az órajel

A történet nemrégiben esett meg velünk. Egy nagyobb szerver parkkal rendelkező ügyfelünk keresett meg minket azzal, hogy szüksége lenne egy nagy kapacitású szerverre, amin az ügyviteli szoftverének az MSSQL adatbázisát futtatná. Most is rendelkezik egy elég erős géppel, de a szoftverből hamarosan új verziót vezetnek be, az adatbázis dinamikusan nő és már most is több száz gigabájt. Kell tehát egy még erősebb vas, ha már egyszer úgyis új rendszer épül. Mivel ismertük a dolgok pontos hátterét, nagyjából tisztában is voltunk a szükséges hardverrel, így a régi szerverre (ami szintén nem gyenge) kb. még 20%-nyi teljesítményt, plusz memóriát ráhagyva elküldtük az első ajánlatot.

Majd jött az ügyfél által megbízott szoftveres szakértő, aki megmondta, idézem: „3-3,5 órajel kell, különben a program lassulni fog”. Rendben. A mértékegység kimaradt, de nem baj, értjük. Mármint nem, nem értjük. Az órajeltől lesz gyors? Mint tudjuk az adatbázis rendszerek aztán szeretik a sok processzormagot, a rengeteg memóriát, a gyors merevlemezt. De hidegen hagyja őket mennyivel ketyeg az a nyomorult processzor, mert mint tudjuk már régesrég nem az a processzorok teljesítményének mértékegysége. Ajánlottunk hát egy 3,4GHz-es processzorcsodát magas fogyasztással és jó hőleadási képességekkel, mert az úgy jó. Az eredetileg tervezetthez képest még 10%-ot dob a teljesítményen, de szekértőnk még mindig nem érti, hogyan lehet a jelenlegi CPU toplista élén egy 2,5GHz-es Xeon processzor, és hogyan verhet a 3,4GHz-es csodára 20-30%-ot egy 2,2GHz-es Xeon, amikor az messze elmarad a 3GHz-től. Szívem szerint javasoltam volna egy LGA775 foglalatú Intel Pentium 4-et, ami gyárilag 3,8GHz-en megy, az a tuti. Persze szakértőkre szükség van, a szakértelmük kincs számunkra, hiszen nélkülük most nem jöhetett volna létre ez a cikk. 🙂

Erről ez a klasszikus juhász vicc jut eszembe, ami nagyon aktuális most:

Egy idős juhász a réten legelteti a nyáját, amikor a közeli országúton egy vadonatúj Mercedes tűnik elő a porfelhőből. Az autó hirtelen megáll a juhász mellett, a lehúzott ablakon kiszól egy öltönyös fickó:
– Uram! Ha megmondom, pontosan hány birkája van, nekem ad közülük egyet?
A juhász végigméri a fickót, és rábólint:
– Nem bánom.
A fiatalember kiszáll az autóból, előveszi a laptopját, az Interneten felcsatlakozik egy GPS műholdas navigációs rendszerre, beszkenneli a területet, majd odafordul az öreghez:
– Pontosan 2714 birkája van.
– Valóban – feleli a juhász – válasszon egyet.
Az idegen kiválaszt egy állatot, és beteszi az autóba.
A juhász utánaszól:
– Ha megmondom mi a foglalkozása, visszakaphatom?
– Persze! Miért ne?
– Fogadjunk, hogy maga egy tanácsadó.
– Tényleg az vagyok. Hogy találta ki?
– Nem volt nehéz. Maga egyszerűen csak megjelent itt, holott senki nem hívta. Jutalmat akart egy olyan válaszért, amit már eleve tudtam, egy olyan kérdésre, amit senki nem kérdezett. Aztán meg el akarja vinni a puli kutyámat!

A modern processzorok bűvöletében

Számos hardverelemet választhattunk volna cikkünk témájául – meg is fogjuk tenni a későbbiekben – de ezúttal mégiscsak a rendszer lelkéről, a műveletvégző egységről, a számítógép processzoráról és annak fejlődéséről lesz szó.

Számítógép processzorok
Számítógép processzorok

Ahogyan a rövid bevezetőben is jeleztük, ez az a részegység ami alapján meghatározzuk mennyire gyors vagy sem a gépünk. Persze az elkészült, feldolgozott adatokat tudni kell megfelelő sebességgel tárolni, betölteni, kiírni és vannak speciális feladatok is, de az  alapvető műveletek elvégzése mindig is a processzor (CPU) feladata volt és az is marad.

A Neumann-féle számítógépek óta ez a részegység hatalmas fejlődésen ment keresztül. A gyártástechnológia és a miniatürizálás modernizálásával egyre több tranzisztort lehetett egyre kisebb helyre zsúfolni, így a mai processzorok már több milliárddal rendelkeznek. Sokan ismerhetik egyetemről, főiskoláról vagy akár egyéb internetes olvasmányokból az Intel egyik alapítója után elnevezett Moore-törvényt, ami szerint „az integrált áramkörökben lévő tranzisztorok száma – ami használható a számítási teljesítmény durva mérésére – minden 18. hónapban megduplázódik.” Ugyan ez a tendencia ma már azért nem állja meg teljes mértékben a helyét, azért jól mutatja a technológiai fejlődés mértékét.

A processzorok fejlődése

Természetesen bár az alapok még a régiek, a mai processzorok már tényleg csak nyomokban hasonlítanak azokra, amelyekre a számítástechnikai ősatyjai, technológiai óriásai alapoztak. Az első új szelek 2002-ben kezdtek fújni, amikor is az Intel beépítette a HyperThreading technológiát a processzoraiba. Ezt a többszálasításos technikát végülis tekinthetjük a több magos processzorok elődjének, még ha nem is lett annyira sikeres, a gondolkodásmód mégiscsak változott. Korábban a gyártók egyszerre hajszolták az órajelet, az egyre újabb utasításkészleteket és különböző gyártástechnológiai váltásokkal, a kisebb méretű lapkáknak köszönhetően próbálták a fogyasztást és a vele járó hőmennyiséget csökkenteni. Aztán a két nagy gyártó rivalizálása a piacon egy nagy órajelháborúban csúcsosodott ki valahol 4GHz környékén, ahol már nem lehetett a hagyományos léghűtéses technikák mellett kordában tartani a hőt és az energiatakarékossági szempontok is egyre inkább előrébb törtek, ezért taktikát kellett változtatni. Bár a technológia lehetővé tenne ettől lényegesen magasabb órajelet is, az egyéb szempontokat figyelembe véve mindkét nagy gyártó, az Intel és az AMD is belátta, hogy nem jó az irány. Elkezdték tehát a magot fejleszteni és az egy órajel ciklus alatt elvégzett műveletek számát növelni. Erre született első megoldásként a HyperThreading, ami többszálú feldolgozást tett lehetővé és nem keverendő össze a multitasking fogalmával, ami az operációs rendszerekből jön. Természetesen nem minden program futása gyorsult ettől, viszont a hardverrel együtt fejlődött szoftverek lehetővé tették a feldolgozás gyorsítását, miközben a gyártó nem növelte az órajelet. Képzeljünk bele abba, hogy egy gyártósornál ülünk, ahol egyenletes tempóban végezzük a munkánkat. Két művelet között van egy pici időnk, így a jobb kihasználtság érdekében beszervezünk oda valami olyan feladatot, amit a köztes időben el tudunk végezni vagy netán olyan feladattal töltjük ki az időt, amivel gyorsítunk majd a következő művelet elvégzésén. Valami hasonlóról szólt a többszálasítás, némi plusz szervezéssel, a szoftverek hozzá hangolásával önmagában ezzel a funkcióval is sikerült gyorsulást előidézni.

Persze ez még csak az előfutára volt a későbbi technikának, a több magos processzoroknak. Itt már több futószalag fut egyszerre, mindegyik dolgoz fel adatokat. Aztán ennek továbbfejlesztéseként a gyártók elkezdték szervezni a magok közötti munkát, közös gyorsítótárat (cache) vezettek be és a kezdeti változatok után valódi csapatmunkát kezdtek végezni ezek a magok. Közben persze történt még számos fontos újítás is, például a memória vezérlés terén, először az AMD-nél, majd nem sokra rá az Intelnél is bekerült a memória vezérlő a processzor foglalaton belülre, így sokkal közvetlenebb és gyorsabb memóriavezérlést lehetett megvalósítani. A processzormagok közötti szervezés fejlesztése aztán elhozta számunkra a ma kapható processzor generációt és egy új irányvonalat mutatott a gyártóknak, amit a mai napig követnek.

A mai modern processzorok

Ha már az irányvonalakról esett szó nagyon fontos megjegyezni egy szintén processzorokhoz köthető, de kicsit más jellegű vonalat. Ez pedig nem más, mint a beépített grafikus processzor, amit a gyors elérésű memóriavezérlő sikere alapján az AMD vezetett be először. Ezeket nevezik CPU helyett APU-nak, hiszen a szokványos feldolgozó egység mellett a tokozásba belekerült egy grafikus chip is, amit amúgy korábban az alaplapra forrasztva vagy külön videokártyán vásároltunk meg. Mivel fizikailag messzebb vannak a processzor kimeneteitől és így némi extra válaszidővel tudnak csak kommunikálni, ha nincsenek egy helyen. Így a memóriavezérlőhöz hasonlóan nagy sikert aratott ez a technika, amit rövid időn belül az Intel is átvett és a ma kapható processzorok nagy részében meg is található ez a grafikus chip, így az alaplapon lévő monitor csatlakozók csak egy kivezetésnek tekinthetőek, a képi elemek előállítása már a processzorban zajlik. Ezek az egységek ma már egészen elfogadható teljesítményre képesek, de azért ha igazi grafikus teljesítmény kell, mondjuk játék vagy 3D tervezési feladatokra ugyanúgy kénytelenek leszünk egy plusz videokártyával bővíteni a gépet.

Aztán van egy másik irányvonal is, amit pedig a mobileszközök elterjedése keltett életre. Valójában ezekben nem a hagyományos típusú CPU-k vannak jelen, hanem úgynevezett RISC típusúak, amely a Reduced Instruction Set rövidítésből ered, tehát ezek lényegesen egyszerűbb felépítésű, csökkentett utasításkészlettel rendelkező egységek. Lényegében minden egyszerűbb hardver ilyen típusú processzort használ, legyen ez egy hálózati eszköz (pl. router) vagy akár egy bővítő kártya (pl. hálózati kártya) vezérlő chip-je. Mivel a mobileszközök sokkal egyszerűbb felépítésűek voltak kezdetben, ezért ez az architektúra terjedt el bennük, melyeket továbbfejlesztettek és az X86 és AMD64 architektúrás példányokhoz hasonlóan ugyanaz az irányvonal mutatkozik meg bennük, egyre inkább javítják a többmagos feldolgozást, a gyártástechnológiát és ezzel érnek el egyre jobb műveleti teljesítményt, egyre kevesebb felhasznált watt-al. Ezen a területen a hagyományos Intel-alapú processzorok éppen emiatt nem rúgnak labdába, mivel a teljesítmény/fogyasztás arány az akkumulátoros eszközökön elsődleges prioritással bír, az okostelefonok piacán nem véletlen sokan azt nézik melyik példány hány napig bírja egy feltöltéssel.

Ezen a ponton tegyünk egy rövid, de érdekes történelmi kitekintést hogyan is alakult a két nagy processzorgyártó története. Egészen pontosan sokan nem is gondolnák hogyan keletkezett az AMD, a „kisebbik” óriás. Annak idején a 70-es években, amikor a mai számítástechnika meghatározó alakjai bontogatták szárnyaikat még csak egy nagy processzorgyártó létezett, aki a 8086-os processzorával történelmet írt a piacon, ez volt az Intel. Ennek az architektúrának az alapjaira épülnek a mai processzorok, egészen pontosan a 32 bites részük, a 64 bitest már AMD64-nek hívják. Senki nem gondolná, de mégis igaz, az AMD-t az Intel keltette életre, nem szimpla inspirációval, hanem tőkét, tudást és pénzt adott egy csapatnak, hogy létrehozzanak egy konkurens céget a piacon, aminek odaadták egy licencszerződés keretében az X86-os processzorok gyártásához szükséges jogot is. Mielőtt bárki azt gondolná nem őrültek meg az Intelnél, nem csupa jó szándék vezérelte őket. Amerikában akkoriban (és talán még ma is) volt egy olyan törvény, ami kizárta állami beszerzésekből a monopól helyzetben lévő cégeket. Márpedig a friss technikára bőven lett volna kereslet az államtól, de a törvényeik kizárták, hogy az Intel beszállítson. Ezért kellett egy konkurens, aki úgysem jelent veszélyt, így hoztak létre egyet maguknak. Aztán később ez a konkurens, először a 80-as években a K6-os processzorok megjelenésével, majd a K7 Athlon életre keltésével tört nem kevés borsot a riválisa orra alá, majd most a legújabb Ryzen processzorokkal, de ne rohanjunk ennyire előre…

AMD Ryzen
AMD Ryzen

A rövid történeti kitekintés és az egyéb utak megtárgyalása után térjünk vissza eredeti témánkhoz, a ma kapható hagyományos PC processzorokhoz, ide sorolva a mai kínálat többségét kitevő APU-kat is, tehát a grafikus maggal is rendelkező változatokat. Az elmúlt néhány évben a fejlődés kicsit leragadt, nem pörgött akkora intenzitással, mint azt korábban megszokhattuk. Ennek több oka is van. Egyrészt az Intelt korábban nagyon megszorongató rivális AMD folyamatosan lemaradt az elmúlt kb. 10 év versenyében, így nem volt ami a nagy óriást igazán cselekvésre ösztönözze. Ezzel együtt a hagyományos PC ipar is visszaesett (a mobileszközök terjedésével), illetve átalakult és változott a felhasználás is. Míg korábban a nagyteljesítményű processzorok tipikus felhasználói a gamerek voltak, addig a játékkonzolok elterjedésével egyrészt a PC ipar ugyancsak alulteljesített (bár a konzolokban is hagyományos CPU-k találhatóak), ráadásul korábban elértek egy olyan teljesítményszintet, aminél a legtöbb alkalmazás egyszerűen nem igényelt többet. Kevesen vágnak videót, terveznek 3D-ben, vagy renderelnek, esetleg játszanak 4K-ban, ami igazán igénybe venné ezeket a processzorokat. A kereslet és az igény csökkenése pedig szintén nem vitte előrébb a gyártókat, pontosabban az AMD ezidáig gőzerővel dolgozott egy nagy dobáson, amit a Ryzen névvel fémjelzett processzoraival nemrégiben piacra is dobott. Az pedig, hogy mennyire igaz a fentebbi megállapítás, miszerint a nagytestvér ellustult jól példázza, hogy az első Ryzen teszteket követően az Intel azonnal lépett és elővette a tarsolyából az i9-es processzorát, ami az i5 és i7 folytatásaként szeretné megszorongatni a kistesót. Az AMD erre válaszként bejelentette újabb Ryzen processzorok érkezését, így az elkövetkező hónapok ádáz teljesítmény csatával fognak telni.

Intel Core i9
Intel Core i9

Természetesen ezzel együtt az irányvonal nem változott. Az AMD a Ryzen-nel teljesen átszervezte a processzora feldolgozási folyamatait, miközben az érkező új termékei az előzőekhez képest újabb gyártástechnológiával és alacsonyabb órajelekkel érkeznek, miközben a felszabaduló watt-okat további magok táplálására fordítják, tehát tovább növekszik a magszám. Korábban éppen az mutatta az AMD gyengeségét, hogy a csúcs processzoraival az Intel középmezőnyével úgy versenyzett, hogy közben a lehető legmagasabbra növelte az órajeleit, közelítve a 4GHz-es lélektani határokhoz, ahol magas fogyasztással, kezelhetetlen melegedéssel kellett megküzdeni. Ahhoz, hogy megértsük a mai processzorokban rejlő erők forrásait egy autós példával fogok élni, ami tökéletesen példázza mi történik ma a számítástechnika ezen területén. Egy mai autó motorjának a teljesítményét ugye sok tényező határozza már meg, régen a motorok ún. sima szívók voltak, 4 henger, 8 szelep, és hozzá a köbcenti. A processzorok esetében az órajel pontosan ugyanaz, mint az autók esetében a köbcenti. Szerepe ugyan van a lóerők számának alakulásában, de ma már a gyártók törekednek a kis köbcentis, turbós motorokra, ahol általában már 16 szelep dolgozik, változott a befecskendezés (ahogy a processzorokban a szervezés), és V6, V8 motorok is elérhetőek turbós és sima változatban is utcai autókban. A befecskendezés tehát legyen a processzor belső munkaszervezése, a hengerek száma a processzor magok száma, a szelepek pedig a végrehajtási szálak (HyperThreading), turbónak tekinthetjük a beépített memóriavezérlőt, az új processzorokban jelen lévő órajel kezelő automatikát, amit ráadásul TurboCore-nak is hívnak (visszaveszi menet közben XY kevésbé terhelt mag órajelét és a felszabaduló energiakerettel megtolja picit a terheltebbek órajelét), végül pedig a köbcentihez hasonló mérőszámként ott áll az órajel. Ezeknek a technikáknak a képlete adja meg egy mai processzor teljesítményét. Az autós példa azért is nagyon jó, mert még egy halom fontos ponton lehet párhuzamot vonni. Hiába a nyers motor erő, ha nem sikerül azt átvinni az útra (processzor-memória közötti tempó és a bevezetőben már említett háttértárak szerepe), illetve a teljesítményleadás nem egy állandó függvénye. Az autóban az adott sebességi fokozathoz társított fordulatszám ad egy értéket, hogy mekkora a nyomtaék és lóerő azon a ponton (teljesítmény görbe), a számítógép processzor esetében pedig ugyanez a helyzet az adott alkalmazások futtatása során. Az egyik fel van készítve többszálas/több magos feldolgozásra, a másik nem, az egyik program kihasznál egy adott utasításkészletet a processzorban a feladata gyorsítására, a másik nem. Az egyik program a CPU egyik egységét, a másik a másikat mozgatja meg jobban és ezek nem egyforma sebességre képesek, továbbá adott esetben belejátszik a képletbe az első, második és harmadik szintű gyorsítótár mérete és sebessége is. Így a „nyomaték görbe” vagy a PC esetében a teljesítmény típusonként változó. Ugyanígy a szerverekbe gyártott processzorok (Intel Xeon, AMD Opteron) teljesítménye is eltér szerver környezetben a hagyományos asztali modellekhez képest, mivel más képességekkel vannak kiképezve, másra vannak optimalizálva.

Ennek megfelelően érdemes egyébként a megvásárolni kívánt egységet is megválasztani. Ezzel el is érkeztünk utolsó témánkhoz.

Milyen processzort válasszak?

Rengeteg szempont létezik a kiválasztásnál, szinte lehetetlen minden felsorolni és kitárgyalni.

Első körben fontos tisztázni milyen felhasználásra szeretnénk elsősorban használni, ahhoz pedig milyen teljesítményre van szükség. A szoftver gyártók meg szoktak adni egy alap specifikációt, ami iránymutatásnak megfelel, általában az ajánlott oszlopot érdemes elolvasni.

A felhasználási kör már segít kiindulni. Amióta világ a világ ár/teljesítményben az AMD mindig az Intel előtt volt. Nem is nagyon tudott mást tenni a fennmaradás érdekében a kisebbik gyártó, egyszerűen olcsóbban adja az ugyanolyan teljesítményű megoldásait a riválisánál. Tehát a pontszám/forint mutató jobb. Akik figyelmesen olvasták az előzményeket itt most az is beugorhatott nekik, hogy a pontszám az bizony felhasználási területenként változhat, tehát az arányban csak az ár a fix. Általánosan elmondható az elmúlt időszak tendenciáiból, hogy az AMD-t a játékosok veszik. A játékok rendre jól futnak több magon, illetve az AMD az ATI felvásárlással egy olyan GPU gyártót kebelezett be ami jót tett a cégnek ezen a területen és ez a processzorok, a grafikus képességek terén is jól látszik. Nem véletlen, az XBox játékkonzolokban hosszú ideje AMD-ATI párosítás lakik. Ugyanakkor ha a játékosok szűk rétegét elhagyjuk a többi területen már inkább az Intel érvényesül. Az energiagazdálkodási szempontokat figyelembe véve régóta köröket ver az AMD-re, tehát ahol ez magasabb prioritású, fontosabb szempont ott biztosan valamelyik Intel modellből kell választani. Az irodai processzorok terén az igényelt teljesítménytől függően valamilyen Celeron vagy Pentium típust, komolyabb munkákra már az i betűvel kezdőeket. Tehát i3, i5 és i7, hamarosan pedig az i9 is elérhető lesz. Az i3-as modellek már komolyabb irodai felhasználásra, néhány éves játékokhoz, kicsit nagyobb műveleti teljesítményt igénylő feladatokra is alkalmas 2 magos processzorok. Az i5-ösök már az Intel komolyabb játékok, 3D-s alkalmazások, 4K-s videók kezelésére is alkalmas 4 magos megoldásai. A legnagyobb műveleti igényű alkalmazásokhoz pedig ott vannak a leggyorsabb i7-es modellek. Ezt a piacot formálja most át egy kicsit az AMD új Ryzen szériája, amely a csúcsra tör és a nagyobb modelljei rendre az i7-esekkel szállnak ringbe, persze ennek megfelelően alakulnak az áraik is. Annak eldöntésére pedig, hogy kinek melyik a legjobb választás számos interneten elérhető teszt segít eligazodni, ahol rendre tesztelnek Photoshop-ot, renderelést, videó vágást, különböző játékokat és 3D-s dolgokat, tömörítést és nagyon sok minden mást. Ezeken meg lehet találni egy-egy típus hogyan teljesít.

Aztán sokak számára lehet érdekes az is, hogy az adott processzorban található GPU mire képes. Ma már a legtöbb alkalmas nagyfelbontású filmek akadásmentes lejátszására, vagy néhány éves játékok futtatására is. Sokan nem akarnak külön videokártyát, hanem az APU-ba integrált megoldás elegendő nekik. Minden processzorban más grafikus chip lakik, így az is elképzelhető, hogy egy erősebb modellt kell válasszunk ahhoz, hogy ne kelljen különálló VGA kártyába is beruháznunk.

Végül ejtenék pár szót az utasításkészletekről is. Vannak olyan programok, amelyek Intel processzorral futnak jobban és vannak, amelyek AMD-vel. Ennek egyik oka lehet a bennük rejlő utasításkészlet is, amelynek a lényege, hogy bizonyos célfeladatokat máshogyan oldanak meg, de ezekhez mindenképpen szükség van szoftveres támogatásra. Ha egy adott processzorban jelen van egy ilyen utasításkészlet, amit az adott program használ és a másikban nincs jelen, akkor az átlagostól eltérő sebességkülönbséget is érzékelhetünk a két egység teljesítménye között. Ezért is jöhet jól egy ilyen átfogó teszt ahol esetleg a speciális célszoftvert is kipróbálták a kiszemelt processzoron. Ha normál irodai munkára veszünk gépet, akkor szinte bármelyik, akár a legolcsóbb processzorral  is megvehetjük, fontosabb az alacsony fogyasztás és a kis hő, míg játéknál ez a szempont nagyjából az utolsó helyre lép vissza és első a teljesítmény.

Reméljük cikkünket hasznosnak találta és segíthettünk újabb nézőpontokból megmutatni a témát. Ha ötlete, észrevétele vagy kérdése van ossza meg velünk, akár itt vagy a Facebook oldalunkon, örömmel válaszolunk rájuk!

Facebook