CPU Basics Multiple CPUs, Cores, and Hyper-Threading Explained
Den centrala bearbetningsenheten (CPU) i din dator gör i grunden de beräkningsbaserade programmen. Men moderna processorer erbjuder funktioner som flera kärnor och hyper-threading. Vissa datorer använder även flera processorer. Vi är här för att hjälpa till att sortera allt ut.
Klockhastigheten för en CPU brukade vara tillräckligt när man jämförde prestanda. Saker är inte så enkla längre. En CPU som erbjuder flera kärnor eller hyper-threading kan fungera signifikant bättre än en enstaka CPU med samma hastighet som inte innehåller hypertrådning. Och datorer med flera processorer kan ha en ännu större fördel. Alla dessa funktioner är utformade för att göra det möjligt för datorer att köra flera processer samtidigt, vilket ökar din prestanda vid multitasking eller enligt kraven från kraftfulla appar som video-kodare och moderna spel. Så, låt oss ta en titt på var och en av dessa funktioner och vad de kan betyda för dig.
Hyper Threading
Hyper-threading var Intels första försök att föra parallell beräkning till konsument-datorer. Det debuterade på stationära CPU-enheter med Pentium 4 HT tillbaka 2002. Pentium 4-dagarna innehöll bara en enda CPU-kärna, så det kunde verkligen bara utföra en uppgift i taget - även om det kunde växla snabbt mellan uppgifter att det verkade som multitasking. Hyper-threading försökte klara av det.
En enda fysisk CPU-kärna med hyper-threading visas som två logiska processorer till ett operativsystem. CPU: n är fortfarande en enda CPU, så det är lite av en fuska. Medan operativsystemet ser två processorer för varje kärna, har den faktiska CPU-hårdvaran bara en enda uppsättning exekveringsresurser för varje kärna. CPU låtsas att den har mer kärnor än den gör, och den använder sin egen logik för att påskynda programkörning. Med andra ord luras operativsystemet på att se två CPU: er för varje faktisk CPU-kärna.
Hyper-threading gör det möjligt för de två logiska CPU-kärnorna att dela med sig av fysiska exekveringsresurser. Detta kan påskynda lite saker - om en virtuell CPU stannar och väntar kan den andra virtuella CPU låna sina exekveringsresurser. Hyper-threading kan hjälpa till att påskynda ditt system, men det är ingenstans lika bra som att ha faktiska ytterligare kärnor.
Lyckligtvis är hyper-threading nu en "bonus". Medan de ursprungliga konsumentprocessorerna med hyper-threading bara hade en enda kärna som masqueraded som flera kärnor, har moderna Intel-processorer nu både flera kärnor och hyper-threading-teknik. Din dual-core CPU med hyper-threading visas som fyra kärnor till ditt operativsystem, medan din fyrhjuliga CPU med hyper-threading visas som åtta kärnor. Hyper-threading är ingen ersättning för ytterligare kärnor, men en dual-core CPU med hyper-threading bör fungera bättre än en dual-core CPU utan hyper-threading.
Flera kärnor
Ursprungligen hade CPU: er en enda kärna. Det innebar att den fysiska CPU hade en enda centralbehandlingsenhet på den. För att öka prestanda lägger tillverkarna ytterligare "kärnor" eller centrala bearbetningsenheter. En dual-core CPU har två centrala bearbetningsenheter, så det verkar som operativsystem som två processorer. En CPU med två kärnor kan till exempel köra två olika processer samtidigt. Detta påskyndar ditt system, eftersom din dator kan göra flera saker på en gång.
Till skillnad från hyper-threading finns det inga knep här - en dual-core CPU har bokstavligen två centrala bearbetningsenheter på CPU-chipet. En fyrkärnig CPU har fyra centrala bearbetningsenheter, en okta-core CPU har åtta centrala bearbetningsenheter och så vidare.
Detta bidrar dramatiskt till att förbättra prestanda samtidigt som den fysiska CPU-enheten är liten så den passar i ett enda uttag. Det behöver bara vara en enda CPU-uttag med en enda CPU-enhet inlagt i den - inte fyra olika CPU-uttag med fyra olika CPU-enheter, vilka alla behöver egen kraft, kylning och annan hårdvara. Det finns mindre latens eftersom kärnorna kan kommunicera snabbare, eftersom de är alla på samma chip.
Windows Task Manager visar det här ganska bra. Här kan du till exempel se att det här systemet har en faktisk CPU (socket) och fyra kärnor. Hyperthreading gör att varje kärna ser ut som två processorer på operativsystemet, så det visar 8 logiska processorer.
Flera processorer
De flesta datorer har bara en enda CPU. Den enda CPU kan ha flera kärnor eller hyper-threading-teknik, men det är fortfarande bara en fysisk CPU-enhet som sätts in i en enda CPU-uttag på moderkortet.
Innan hyper-threading och multi-core CPUs kom omkring, försökte folk lägga till ytterligare bearbetningskraft på datorer genom att lägga till ytterligare CPUer. Detta kräver ett moderkort med flera CPU-uttag. Moderkortet behöver också extra hårdvara för att ansluta dessa CPU-uttag till RAM och andra resurser. Det finns mycket överhuvudtaget i denna typ av installation. Det finns ytterligare latens om CPU: erna behöver kommunicera med varandra, system med flera processorer förbrukar mer ström och moderkortet behöver fler uttag och hårdvara.
System med flera CPU-enheter är inte särskilt vanliga bland hemanvändardatorer idag. Även ett högdrivet spelbord med flera grafikkort kommer i allmänhet bara att ha en enda CPU. Du hittar flera CPU-system bland superdatorer, servrar och liknande avancerade system som behöver så mycket antal krossande ström som de kan få.
Ju fler processorer eller kärnor en dator har desto mer saker kan det samtidigt göra, vilket förbättrar prestanda på de flesta uppgifter. De flesta datorer har nu CPU-enheter med flera kärnor, det effektivaste alternativet vi har diskuterat. Du hittar även CPU-enheter med flera kärnor på moderna smartphones och tabletter. Intel CPU-enheter har också hyper-threading, vilket är typ av bonus. Vissa datorer som behöver mycket CPU-ström kan ha flera CPU-enheter, men det är mycket mindre effektivt än det låter.
Bildkredit: Lungstruck på Flickr, Mike Babcock på Flickr, DeclanTM på Flickr