Od polovice rokov ponúkajú stolné procesory viacero jadier CPU v jednom balíku. Toto je viacjadrový procesor. Zatiaľ čo skoré návrhy boli obmedzené na dve alebo štyri jadrá CPU, moderné CPU ponúkajú až 64 fyzických jadier na jednom CPU. Vysoké počty jadier nie sú štandardom pre stolné procesory a sú vo všeobecnosti vyhradené pre špičkové pracovné stanice alebo servery. Typický počet jadier v moderných stolných procesoroch je medzi 4 a 16. Čo je však na viacjadrových procesoroch, ktoré ich robia dominantnými v moderných počítačoch?
Jedno jadro
Historicky bol jednojadrový CPU obmedzený na vykonávanie iba jednej úlohy naraz. S tým prichádza celý rad problémov. Napríklad na modernom počítači beží obrovské množstvo procesov na pozadí. Ak CPU dokáže spracovať iba jednu vec naraz, znamená to, že tieto procesy na pozadí musia procesom v popredí ubrať čas spracovania. Okrem toho vynechanie vyrovnávacej pamäte znamená, že údaje je potrebné získať z – pomerne – pomalej pamäte RAM. Počas načítavania údajov z pamäte RAM procesor jednoducho nečinne sedí, pretože nemôže nič robiť, kým údaje nezíska. To zadržiava bežiaci proces, ako aj všetky ostatné procesy, ktoré čakajú na dokončenie.
Zatiaľ čo moderné jednojadrové procesory v skutočnosti nie sú vecou vďaka nárastu rozpočtových viacjadrových procesorov, mohli by použiť iné moderné triky, aby fungovali rýchlejšie. Potrubie by umožnilo súčasne použiť každú inú časť spracovania inštrukcie, poskytuje výrazné zvýšenie výkonu oproti použitiu iba jednej fázy potrubia za hodinu cyklu. V širokom potrubí by bolo možné spracovať viacero inštrukcií v každom štádiu potrubia za cyklus hodín. Spracovanie mimo poradia by umožnilo plánovanie pokynov časovo efektívnejším spôsobom. Prediktor vetvenia by bol schopný predpovedať výsledok inštrukcie vetvenia a preventívne spustiť predpokladanú odpoveď.
Všetky tieto faktory by fungovali dobre a poskytovali by určitý výkon. Pridanie jedného alebo viacerých jadier však umožňuje toto všetko a naraz umožňuje spracovanie dvojnásobku údajov naraz.
Viacjadrový
Pridanie druhého jadra znie, ako by to malo zdvojnásobiť surový výkon. Veci sú, žiaľ, zložitejšie. Programová logika je často jednovláknová, čo znamená, že existuje iba jedna vec, ktorú sa program pokúša urobiť v jednom okamihu. Čo sa však môže stať, je, že iné procesy môžu súčasne využívať iné jadro. Zatiaľ čo väčšina individuálnych programov nemá vlastné zvýšenie výkonu, poskytuje sa navyše spracovanie zdroja, účinne znižuje konkurenciu o obmedzený zdroj, ktorý poskytuje a zvýšenie výkonu. Toto zvýšenie výkonu, jednoducho zo zníženia konkurencie o čas CPU, je najvýraznejšie pri skoku z jedného v prípade dvojjadrového CPU sa výnosy z ďalšieho zvyšovania počtu jadier znižujú, aj keď vo všeobecnosti je ich viac lepšie.
Ak chcete správne využiť výhody viacjadrových systémov a skutočne vidieť solídne zvýšenie výkonu, programy musia byť naprogramované tak, aby používali viaceré vlákna spracovania. Viacvláknovú logiku je notoricky ťažké spoľahlivo vykonávať, pretože je často ťažké sa ju naučiť a existuje veľa potenciálnych úskalí. Jeden príklad úskalia je známy ako podmienka pretekov. V race condition jeden proces predpokladá, že iný proces, ktorý spustí, bude bežať hladko, potom sa pokúsi urobiť niečo, čo sa spolieha na to, že tento iný proces prebehol hladko. Predstavte si napríklad, že proces spustí ďalší proces, ktorým zatvorí jeden dokument a otvorí ďalší. Ak pôvodný proces správne neskontroluje, či bol dokončený druhý proces, môže to viesť k neočakávaným výsledkom. Ak sa vyskytol problém napríklad pri zatváraní prvého dokumentu, môže byť stále otvorený, keď doň pôvodný proces iba zapisuje ďalšie údaje.

Tepelné problémy
Jedným z najväčších problémov, s ktorým viacjadrové procesory nakoniec zápasia, je teplo. Zatiaľ čo jedno jadro CPU nevydáva toľko tepla, dve vydávajú viac. V procesoroch s vysokým počtom jadier môže táto koncentrácia tepla viesť k nižším zosilňovacím hodinám, pretože procesor riadi svoju teplotu. Nižšia zosilňovacia frekvencia spôsobí nižší výkon v jednovláknových aplikáciách. Často je to vidieť v benchmarkoch herného výkonu. Videohry sú často veľmi závislé od jedného vlákna. Výkon s jedným vláknom je preto pre hranie hier často kritický. Procesory s vysokým počtom jadier, ako sú 16-jadrové modely, sú často z vysokovýkonných zásobníkov. Napriek tomu sa dá pravidelne zistiť, že ich výkon prevyšujú „menšie“ procesory s nižším počtom jadier v jednovláknových benchmarkoch. Tento problém je ešte zrejmejší v CPU s ultra vysokým počtom jadier, ako je 64-jadrový AMD Threadripper, kde je rýchlosť hodín výrazne nižšia ako u špičkových stolných CPU.
Úspechy
Mnoho aplikácií dokáže správne využiť viacero jadier CPU. Napríklad vykresľovanie CPU je pomerne jednoduchá úloha na paralelizáciu. Zlepšenie výkonu možno pozorovať až na 64 jadrách a vyššie, hoci žiadny procesor momentálne neponúka viac ako 64 jadier. Mnoho aplikácií jednoducho nemôže byť viacvláknových, pretože sa spoliehajú na sekvenčnú logiku. Zatiaľ čo tieto nevidia nikde blízko zrýchlenia viacvláknového programu, skutočnosť, že viacvláknové programy a ďalšie jednovláknové programy môžu používať iné jadrá CPU, uvoľňujú čas procesora, čo umožňuje lepšie výkon.
Architektonické možnosti
V desktopových procesoroch je každé jadro CPU v rámci viacjadrového CPU vo všeobecnosti identické. Táto homogenita zjednodušuje plánovanie práce na jadrách. Použitie rovnakého opakujúceho sa dizajnu tiež pomáha znižovať náklady na vývoj. Mobilné procesory však už dlho využívajú heterogénne jadrové architektúry. V tomto dizajne sú dve alebo dokonca tri vrstvy jadra CPU. Každá vrstva môže spúšťať rovnaké procesy, avšak niektoré sú navrhnuté pre energetickú účinnosť a iné sú vyladené na výkon. To sa ukázalo ako recept na úspech pre zariadenia napájané z batérie, pretože mnohé úlohy dokážu viac využiť pomalšie energeticky úsporné jadrá, čím sa zvyšuje životnosť batérie, pričom procesy s vysokou prioritou môžu stále bežať vysokou rýchlosťou keď je to potrebné.
Architektúra CPU pre stolné počítače sa tiež uberá smerom k heterogénnemu dizajnu jadra. Alder Lake 12 od Inteluth generácia Core CPU je prvým stolným CPU, ktorý to dokázal. V tomto prípade nie je hlavným hnacím faktorom menších jadier nevyhnutne energetická účinnosť, ale tepelná účinnosť, hoci ide o dve strany tej istej mince. Viac výkonných jadier poskytuje vysoký výkon, zatiaľ čo mnohé efektívne jadrá dokážu zvládnuť úlohy na pozadí bez toho, aby príliš ovplyvnili hlavné jadrá.
Záver
Viacjadrový procesor je procesor, ktorý obsahuje viacero procesorových jadier v jednom balíku, často, aj keď nie výlučne na tej istej matrici. Viacjadrové procesory neponúkajú veľa priameho zvýšenia výkonu mnohým programom, avšak zvýšením počtu jadier nemusia programy s jedným vláknom toľko súťažiť o čas procesora. Niektoré programy môžu plne využívať výhody viacerých jadier a priamo využívať toľko, koľko je k dispozícii. To poskytuje veľké zvýšenie výkonu, aj keď v dôsledku tepelných a energetických obmedzení toto zvýšenie nemusí nevyhnutne znamenať priame zdvojnásobenie výkonu so zdvojnásobením jadier.