Viacjadrový procesor je integrovaný obvod, ku ktorému sú pripojené dva alebo viac procesorov pre rýchlejšie súčasné spracovanie niekoľkých úloh, zníženú spotrebu energie a pre vyšší výkon. Vo všeobecnosti sa skladá z dvoch alebo viacerých procesorov, ktoré čítajú a vykonávajú programové inštrukcie.
Inými slovami, na jednom čipe obsahuje viacjadrový procesor množstvo procesorových jednotiek alebo „jadier“, z ktorých každá má potenciál vykonávať odlišné úlohy. Napríklad, ak vykonávate veľa úloh naraz, ako je sledovanie filmu a používanie WhatsApp, jedno jadro zvládne činnosti, ako je sledovanie filmu, zatiaľ čo druhé sa postará o iné povinnosti, ako je WhatsApp.
Dvojjadrová konfigurácia je porovnateľná s niekoľkými rôznymi procesormi nainštalovanými v rovnakom počítači, ale spojenie medzi nimi je rýchlejšie, pretože dva procesory sú zapojené do rovnakej zásuvky. Jednotlivé jadrá môžu vykonávať niekoľko paralelných inštrukcií, čím sa zvyšuje rýchlosť softvéru vytvoreného na využitie jedinečných vlastností architektúry.
V porovnaní s jednojadrovým procesorom je dvojjadrový procesor za ideálnych okolností zvyčajne dvakrát výkonnejší. V skutočnosti sa očakáva zvýšenie výkonu približne o 50 %: dvojjadrový procesor je približne 1,5-krát výkonnejší ako jednojadrový procesor.
Keďže jednojadrové procesory narážajú na svoje fyzické limity zložitosti a rýchlosti, viacjadrové výpočty sú čoraz populárnejšie. V modernej dobe je väčšina systémov viacjadrových. Mnohojadrové alebo masívne viacjadrové systémy označujú systémy s veľkým počtom jadier CPU, ako sú desiatky alebo stovky.
Začiatkom roku 2000 vydali Intel a AMD prvé viacjadrové procesory. V modernej dobe sa procesory dodávajú s dvomi („dvojjadrovými“), štyrmi („štvorjadrovými“), šiestimi („šesťjadrovými“) a ôsmimi („osemjadrovými“) jadrami („oktojadrovými“ ). Procesory založené na FPGA obsahujú až 100 fyzických jadier a 1000 efektívnych nezávislých jadier (Field Programmable Gate Arrays).
Architektúra viacjadrových procesorov
Konštrukcia viacjadrového procesora umožňuje komunikáciu medzi všetkými dostupnými jadrami, ktoré vhodne rozdeľujú a priraďujú všetky úlohy spracovania. Spracované údaje z každého jadra sa po dokončení všetkých operácií spracovania prenesú späť na hlavnú dosku počítača (základnú dosku) cez jedinú spoločnú bránu. Táto metóda poráža jednojadrový procesor z hľadiska celkového výkonu.
Výhody viacjadrového procesora
Viacjadrové procesory majú množstvo výhod (klady), medzi ktoré patria:
Výkon
Viacjadrový procesor dokáže od svojej podstaty urobiť viac práce v porovnaní s jednojadrovým procesorom. Vzdialenosť medzi jadrami integrovaného obvodu umožňuje rýchlejšie taktovanie. Výsledkom je, že signály nemusia prekonať veľkú vzdialenosť, aby dosiahli svoj cieľ, a sú tiež trvalé. V porovnaní s použitím samostatného procesora sú rýchlosti oveľa rýchlejšie.
Spoľahlivosť
Vo viacjadrových CPU je softvér vždy priradený k rôznym jadrám. Keď jeden softvér zlyhá, ostatné zostanú nedotknuté. Kedykoľvek vznikne porucha, postihne iba jedno jadro. Výsledkom je, že viacjadrové procesory lepšie odolávajú poruchám.
Softvérové interakcie
Aj keď softvér beží na viacerých jadrách, bude medzi sebou komunikovať. Priestorová a časová izolácia je proces, ktorým prechádza viacjadrový procesor. Vlákna jadra nie sú v dôsledku týchto procesov nikdy oneskorené.
bash while loop
Multitasking
Operačný systém môže použiť viacjadrový procesor na spustenie dvoch alebo viacerých procesov súčasne, aj keď sa môže súčasne spustiť veľa programov. Napríklad aplikácia photoshop sa dá použiť na vykonávanie dvoch úloh naraz.
Spotreba energie
Na druhej strane multitasking s viacjadrovým CPU vyžaduje menej energie. Využije sa len tá časť CPU, ktorá generuje teplo. Spotreba energie je nakoniec minimalizovaná, čo má za následok menšie využitie batérie. Niektoré operačné systémy na druhej strane potrebujú viac zdrojov v porovnaní s inými.
Vyhýbanie sa zastarávaniu
Architekti sa môžu vyhnúť zastaraniu technológie a zvýšiť udržiavateľnosť pomocou viacjadrových CPU. Výrobcovia čipov využívajú vo svojich viacjadrových procesoroch najnovšie technologické pokroky. S rastúcim počtom jadier je čoraz ťažšie získať jednojadrové čipy.
Izolácia
Viacjadrové procesory môžu zvýšiť (ale nezaručujú) geografickú a časovú izoláciu v porovnaní s jednojadrovými systémami. Je menej pravdepodobné, že softvér na jednom jadre ovplyvní softvér na druhom, ak obe jadrá pracujú na rovnakom jednom jadre. Toto oddelenie sa deje v dôsledku geografickej a časovej izolácie (vlákna na jednom jadre nie sú oneskorené vláknami na inom jadre). S pomocou obmedzenia vplyvu chýb na jedno jadro môže viacjadrové spracovanie zvýšiť robustnosť. Pri samostatnom vykonávaní programov so zmiešanou kritickosťou je táto vylepšená izolácia veľmi dôležitá (kritická z hľadiska bezpečnosti, kritická pre misiu a kritická pre bezpečnosť).
Niektoré ďalšie kľúčové body výhod viacjadrových procesorov:
- V porovnaní s jednojadrovými procesormi má viacjadrový procesor potenciál vykonávať viac úloh.
- Nízka spotreba energie pri vykonávaní viacerých činností naraz.
- Dátam trvá dosiahnutie cieľa kratšie, pretože obe jadrá sú integrované na jednom čipe.
- S použitím malého okruhu je možné zvýšiť rýchlosť.
- Detekcia infekcií pomocou antivírusového softvéru počas hrania hry je príkladom multitaskingu.
- S použitím nízkej frekvencie môže vykonávať množstvo úloh súčasne.
- V porovnaní s jednojadrovým procesorom je schopný spracovať veľké množstvo dát.
Nevýhody viacjadrových procesorov
Prejdeme si niektoré obmedzenia (nevýhody) viacjadrového procesora, vrátane:
Rýchlosť aplikácie
Napriek tomu, že viacjadrový procesor je určený na multitasking, jeho výkon je nedostatočný. Pri každom spracovaní aplikácie má tendenciu preskakovať z jedného jadra na ďalšie. V dôsledku toho sa vyrovnávacia pamäť zaplní, čím sa zvýši jej rýchlosť.
Jitter
So zvyšujúcim sa počtom jadier vo viacjadrovom procesore vzniká väčšie rušenie, čo vedie k nadmernému chveniu. V dôsledku toho môže utrpieť výkon programu vášho operačného systému a môže dochádzať k častým zlyhaniam. Len pomocou vhodnej synchronizácie a mikrojadra sa používateľ dokáže vysporiadať s jitterom.
Analýza
Keď robíte dve alebo viac vecí naraz, budete musieť použiť ďalšie modely pamäte. Vo viacjadrových strojoch to robí analýzu náročnou. Najmä časové obmedzenia je ťažké určiť a môžu byť nepresné.
Okrem toho sa analýza rušenia stáva zložitejšou so zvyšujúcim sa počtom jadier. V dôsledku toho O/S nebude schopný poskytnúť sľúbené výsledky.
Zdieľanie zdrojov
Viacjadrový procesor zdieľa rôzne zdroje, interné aj externé. Medzi tieto zdroje patria siete, systémové zbernice a hlavná pamäť. V dôsledku toho bude mať každý program bežiaci na rovnakom jadre väčšiu šancu na prerušenie. Pri tejto forme interferencie môže dôjsť k geografickej aj časovej izolácii.
Softvérové rušenie
V dôsledku zdieľania zdrojov môže softvérové rušenie spôsobiť problémy s priestorovou a časovou izoláciou. Ak sú ďalšie jadrá, táto šanca sa ešte zvyšuje. Prítomnosť viacerých jadier znamená väčší počet rušivých ciest. Je takmer nemožné preskúmať všetky možné interferenčné cesty.
Niektoré ďalšie kľúčové body obmedzení viacjadrových procesorov:
- Hoci obsahuje niekoľko procesorov, nie je dvakrát rýchlejší ako jednoduchý procesor.
- Úloha správy je zložitejšia v porovnaní so správou jednojadrového CPU.
- Výkon viacjadrových procesorov úplne závisí od úloh, ktoré používatelia vykonávajú.
- Ak iné procesory vyžadujú lineárne/sekvenčné spracovanie, viacjadrovým procesorom trvá spracovanie dlhšie.
- Batéria sa vybíja rýchlejšie.
- Jeho spotreba energie je taká vysoká v porovnaní s jednoduchším procesorom.
- Navyše je v porovnaní s jednojadrovým procesorom drahší.
Prečo sa používa viacjadrový procesor?
Konfigurácia je podobná dvojjadrovému procesoru. Viacjadrové procesory sú klasifikované podľa počtu jadier a typov jadier. Cieľom viacjadrového CPU je dosiahnuť vysoký výkon. Bol navrhnutý tak, aby prekonal fyzické obmedzenia jednojadrového CPU.
Podporné operačné systémy viacjadrových procesorov zahŕňajú:
- Linux
- Microsoft Windows (Windows XP alebo vyšší)
- Väčšina systémov založených na BSD
- Solaris
- Mac OS X
Stručná história viacjadrových procesorov
Pretože spoločnosti, ktoré vytvorili počiatočné procesory založené na čipoch, mohli umiestniť iba jeden procesor na jeden čip, mohli umiestniť iba jeden procesor na jeden čip. Výrobcovia čipov dokázali s napredovaním technológie výroby čipov skonštruovať čipy s viacerými obvodmi a nakoniec boli výrobcovia čipov schopní vyrábať čipy s viac ako jedným procesorom, čo viedlo k viacjadrovému čipu.
V roku 1998 vynašiel prvý viacjadrový procesor Kunle Olukotun, profesor elektrotechniky na Stanforde, a jeho študenti. Viacjadrové čipy boli prvýkrát komerčne dostupné v roku 2005 od spoločností Advanced Micro Devices (AMD) a Intel. Takmer každý výrobca čipov odvtedy začal vytvárať viacjadrové procesory.
Kde sa používajú viacjadrové procesory?
V modernej dobe sa viacjadrové procesory nachádzajú vo väčšine zariadení, ako sú tablety, stolné počítače, notebooky, smartfóny a herné systémy.
Uvedené dve základné možnosti ukazujú, ako model procesora nehovorí celý príbeh o výkone. V porovnaní s dvojjadrovým i5 je výkon štvorjadrového i5 podstatne lepší a tomu sa odzrkadlí aj cena počítača. Všetky súčasné modely notebookov pre model i5 sú dvojjadrové, zatiaľ čo všetky modely stolných počítačov sú v čase písania tohto článku štvorjadrové. Pretože verzie notebookov sú skôr dvojjadrové ako štvorjadrové, i5 v notebooku bude mať horší výkon ako i5 na stolnom počítači. Dvojjadrový typ je vhodnejší pre prenosné notebooky, ktoré vyžadujú dlhšiu výdrž batérie a spotrebujú menej energie, ale stolný počítač používa procesor, ktorý využíva viac energie, ako napríklad štvorjadrový model, pretože nevyžaduje výdrž batérie. Niektoré aplikácie viacjadrového procesora sú nasledovné:
- Hry s vysokou grafikou, ako napríklad Overwatch a Star Wars Battlefront, ako aj 3D hry.
- Viacjadrový procesor je vhodnejší v programoch Adobe Premiere, Adobe Photoshop, iMovie a ďalších softvéroch na úpravu videa.
- Solidworks s počítačom podporovaným dizajnom (CAD).
- Vysoká sieťová prevádzka a databázové servery.
- Priemyselné roboty sú napríklad vstavané systémy.