Többmagos processzor: mindig jobb a több?

Tartalomjegyzék:

Többmagos processzor: mindig jobb a több?
Többmagos processzor: mindig jobb a több?
Anonim

Több mag hozzáadása egyetlen processzorhoz jelentős előnyökkel jár a modern operációs rendszerek többfeladatos jellegének köszönhetően. Bizonyos célokra azonban van egy felső gyakorlati korlát annak, hogy hány mag növeli a hozzáadás költségeit.

Többmagos technológiai fejlesztések

Image
Image

A többmagos processzorok a 2000-es évek eleje óta elérhetők a személyi számítógépekben. A többmagos konstrukciók azt a problémát oldották meg, hogy a processzorok elérik a fizikai korlátaik plafonját az órajelben, valamint a hűtési hatékonyság és a pontosság megőrzése terén. Azáltal, hogy egyetlen processzorlapkán extra magokra költöztek, a gyártók elkerülték az órajelekkel kapcsolatos problémákat, mivel hatékonyan megsokszorozták a CPU által kezelhető adatmennyiséget.

Amikor eredetileg megjelentek, a gyártók mindössze két magot kínáltak egyetlen CPU-ban, de most már négy, hat, sőt, akár 10 vagy több mag is rendelkezésre áll. A magok hozzáadása mellett az egyidejű többszálú technológiák – például az Intel Hyper-Threading – megduplázhatják az operációs rendszer által látott virtuális magok számát.

Folyamatok és szálak

A folyamat egy meghatározott feladat, például egy program, amely a számítógépen fut. Egy folyamat egy vagy több szálból áll.

A szál egyszerűen egyetlen adatfolyam egy programból, amely áthalad a számítógép processzorán. Minden alkalmazás létrehoz egy vagy több szálat, attól függően, hogy hogyan fut. Multitasking nélkül az egymagos processzor egyszerre csak egy szálat tud kezelni, így a rendszer gyorsan vált a szálak között, hogy látszólag egyidejűleg dolgozza fel az adatokat.

A több mag előnye, hogy a rendszer egynél több szálat tud kezelni egyszerre. Minden mag külön adatfolyamot tud kezelni. Ez az architektúra nagymértékben növeli a párhuzamos alkalmazásokat futtató rendszer teljesítményét. Mivel a szerverek általában sok egyidejű alkalmazást futtatnak egy adott időpontban, a technológiát eredetileg a vállalati ügyfelek számára fejlesztették ki – de ahogy a személyi számítógépek bonyolultabbá váltak és a többfeladatos munkavégzés nőtt, ők is profitáltak az extra magokból.

Azonban minden folyamatot egy elsődleges szál irányít, amely csak egyetlen magot foglalhat el. Így egy program, például egy játék vagy egy videó renderer relatív sebessége szigorúan az elsődleges szál által felhasznált mag képességére korlátozódik. Az elsődleges szál abszolút delegálhat másodlagos szálakat más magokhoz – de a játék nem lesz kétszer olyan gyors, ha megduplázzuk a magokat. Így nem szokatlan, hogy egy játék teljesen maximalizálja az egyik magot (az elsődleges szálat), de a többi magot csak részlegesen használja a másodlagos szálak számára. Semmiféle magduplázással nem lehet megkerülni azt a tényt, hogy az elsődleges mag az alkalmazás sebességkorlátozója, és az erre az architektúrára érzékeny alkalmazások jobban teljesítenek, mint azok, amelyek nem.

Szoftverfüggőség

Bár a többmagos processzorok koncepciója vonzónak hangzik, van egy fontos figyelmeztetés a technológiával kapcsolatban. Ahhoz, hogy a több processzor valódi előnyeit élvezhessük, a számítógépen futó szoftvert úgy kell megírni, hogy támogassa a többszálú feldolgozást. Az ilyen funkciót támogató szoftver nélkül a szálak elsősorban egyetlen magon keresztül futnak, ami rontja a számítógép általános hatékonyságát. Végül is, ha csak egy magon tud működni egy négymagos processzorban, akkor valójában gyorsabb lehet, ha kétmagos processzorral futtatja magasabb alap órajellel.

Az összes jelentős jelenlegi operációs rendszer támogatja a többszálú feldolgozást. De a többszálat is be kell írni az alkalmazásszoftverbe. A többszálú fogyasztói szoftverek támogatása az évek során javult, de sok egyszerű program esetében a többszálú támogatás még mindig nem valósult meg a szoftver felépítésének összetettsége miatt. Például egy levelezőprogram vagy webböngésző valószínűleg nem látja akkora előnyöket a többszálú feldolgozásban, mint egy grafikus vagy videószerkesztő program, ahol a számítógép összetett számításokat dolgoz fel.

Jó példa ennek a tendenciának a magyarázatára, ha megnézünk egy tipikus számítógépes játékot. A legtöbb játéknak szüksége van valamilyen renderelő motorra, hogy megjelenítse, mi történik a játékban. Ezenkívül valamilyen mesterséges intelligencia irányítja a játék eseményeit és karaktereit. Egymagos esetén mindkét feladat a közöttük való váltással hajtható végre. Ez a megközelítés nem hatékony. Ha a rendszer több processzorral rendelkezne, a renderelés és a mesterséges intelligencia mindegyike külön magon futhatna – ez ideális helyzet többmagos processzorok számára.

A 8 > 4 > 2?

A két magon túllépés vegyes előnyökkel jár, mivel az adott számítógép-vásárló válasza az általa jellemzően használt szoftvertől függ. Például sok klasszikus játék még mindig csekély teljesítménykülönbséget kínál két és négy mag között. Még a modern játékok sem teljesítenek jobban – amelyek közül némelyik állítólag nyolc magot igényel vagy támogat –, mint egy hatmagos gép, magasabb alap órajellel, mivel az elsődleges szál hatékonysága szabályozza a többszálú teljesítmény hatékonyságát.

Másrészt egy videó kódoló program, amely átkódolja a videót, valószínűleg hatalmas előnyökkel jár, mivel az egyedi képkocka-megjelenítés átadható a különböző magoknak, majd a szoftver egyetlen adatfolyamba gyűjtheti össze. Így a nyolc mag még előnyösebb lesz, mint a négy. Lényegében az elsődleges szálnak nincs szüksége viszonylag gazdag erőforrásokra; ehelyett a kemény munkát olyan leányszálakra adhatja ki, amelyek maximalizálják a processzormagokat.

Órajelek

Image
Image

Általánosságban elmondható, hogy a magasabb órajel gyorsabb processzort jelent. Az órajelek homályosabbá válnak, ha figyelembe vesszük a több maghoz viszonyított sebességet, mivel a processzorok több adatszálat is összetörnek az extra magoknak köszönhetően, de ezek a magok mindegyike alacsonyabb sebességgel fog működni a hőkorlátozások miatt.

Például egy kétmagos processzor minden processzornál támogathatja a 3,5 GHz-es alap órajelet, míg a négymagos processzorok csak 3,0 GHz-en működhetnek. Ha csak egy-egy magot nézünk mindegyiken, a kétmagos processzor 14 százalékkal gyorsabb, mint a négymagos. Így, ha csak egyszálú programja van, a kétmagos processzor valójában hatékonyabb. És ha a szoftver mind a négy processzort tudja használni, akkor a négymagos processzor valójában körülbelül 70 százalékkal gyorsabb lesz, mint a kétmagos processzor.

Következtetések

A legtöbb magszámú processzor általában jobb, ha a szoftver és a tipikus használati esetek támogatják. Egy kétmagos vagy négymagos processzor többnyire elegendő teljesítményt biztosít egy alap számítógép-felhasználó számára. A fogyasztók többsége semmilyen kézzelfogható előnyt nem fog látni a négy processzormagon túli használatból, mivel nagyon kevés nem speciális szoftver használja ki ezt. A nagy magszámú processzorok legjobb használati esete olyan gépekhez kapcsolódik, amelyek összetett feladatokat hajtanak végre, például asztali videószerkesztést, a csúcskategóriás játék bizonyos formáit vagy bonyolult tudományos és matematikai programokat.

Nézze meg gondolatainkat arról, hogy milyen gyors számítógépre van szükségem? hogy jobb képet kapjunk arról, hogy milyen típusú processzor felel meg legjobban számítástechnikai igényeinek.

Ajánlott: