En computer er lavet af forskellige komponenter. Den mest kritiske interne komponent er nok dens CPU. Kort for Central Processing Unit, CPU'en er computerens hjerne. Den er lavet af milliarder af små transistorer, der fungerer som elektroniske kontakter, der er ansvarlige for at kontrollere strømmen af elektricitet gennem komplekse kredsløb.
Udover at udføre opgaveprogrammer koordinerer CPU'er andre komponenter i en computer, herunder RAM (Random Access Memory), HDD (harddisk) og SSD (solid-state drive).
Der eksisterer adskillige faktorer, der bestemmer en processors ydeevne og effektivitet, men et af de mest diskuterede emner er kerner vs. tråde. Generelt tror folk at have flere kerner er lig med mere ydeevne. Det er dog ikke altid så ligetil.
At vide, hvad kerner vs. tråde gør, er vigtigt for at træffe de rigtige beslutninger, når du køber eller konfigurerer en computer. Ideelt set vil du gerne optimere strøm så meget som muligt uden at bruge for meget. Afhængigt af de opgaver, du ønsker at udføre, kan den rigtige mængde kerner og tråde variere betydeligt.
Desuden, hvis du vælger en bærbar enhed (som en bærbar computer), er strømeffektivitet noget, du ikke kan overse. Det sidste, du ønsker, når du tager din computer med på farten, er at løbe tør for batteri midt i at udføre en opgave. At vælge en CPU med tilstrækkeligt strømforbrug kan minimere risikoen for at løbe ind i sådanne hovedpine.
I dette indlæg vil jeg forklare alt, hvad du behøver at vide om computerprocessorkerner og -tråde, deres forskelle og andre faktorer, der påvirker en processors ydeevneniveauer.
Hvad er en CPU-kerne?
Grundlæggende er en kerne en fysisk behandlingsenhed inde i en CPU, der er ansvarlig for at udføre opgaver uafhængigt. Du kan tænke på din CPU som en fabrik, hvor hver kerne er en "arbejder", der kan håndtere opgaver. Generelt kan du udføre flere opgaver med flere medarbejdere på et kortere tidsrum.
Traditionelt blev en CPU-kerne designet til at udføre opgaver én ad gangen. Dette betød en mangel på multitasking-evner i de første iterationer af computere. Den måde, CPU-kerner fungerer på, ændrede sig dog betydeligt takket være udviklingen af multithreading-teknologier, som jeg vil komme ind på senere i denne artikel.
Single vs. Multi Core processorer
De tidligere iterationer af computere indeholdt single-core CPU'er, der kunne køre en opgave ad gangen. For at udføre flere programmer ad gangen forsøgte computeringeniører at udvide bundkortet og tilføje flere CPU-enheder sammen. Et par CPU'er, der kørte uafhængigt, introducerede dog en masse latens og viste sig upraktiske.
For at løse dette problem designede ingeniører multi-core processorer. Da hver kerne fungerer uafhængigt, kan hver kerne håndtere sit eget sæt instruktioner uden at påvirke en anden kerne. Det betyder, at jo flere kerner en computerprocessor har, jo flere opgaver kan den udføre samtidigt.
En enkeltkerne-CPU bruger betydeligt mindre strøm og kan være tilstrækkelig til hverdagsopgaver som f.eks. web-browsing. Men da de kommer med begrænsede præstationsevner, bliver de mindre og mindre gunstige. Selvom du måske stadig finder dem i nogle ældre systemer, er single-core CPU'er stort set forældede på dagens marked.
Normalt kommer hverdagscomputere med to, fire, otte eller 16 CPU-kerner. Det højeste antal kerner i forbrugerorienterede CPU'er på markedet er 64. Processorer målrettet datacentre og virksomhedsservere kan pakke endnu flere kerner. AMD EPYC 9654-processoren er for eksempel bevæbnet med hele 96 kerner.
Hvad er en behandlingstråd?
I computerbehandling refererer en tråd (eller en udførelsestråd) til en individuel opgave eller arbejdslinje, som CPU'en behandler. Hver tråd betragtes som den mindste sekvens af programmerede instruktioner, som dit operativsystem kan administrere uafhængigt. Det kan være alt fra at starte et program op eller gemme en fil.
Dine CPU-kerner er ansvarlige for at behandle disse tråde. I enhver CPU kan hver kerne udføre mindst én tråd ad gangen. Som nævnt giver flere kerner bedre multitasking-evner, men at kunne håndtere flere tråde kan også resultere i det samme.
At kende forskellene i tråde vs. kerner-kapaciteter, sammen med at forstå deres roller i din CPU, kan hjælpe dig med at træffe det bedste valg til dine behov.
Hvad er multithreading?
Som du kan gætte, kan det være meget tidskrævende at sende kun én tråd til processorchippen, vente på, at opgaven er færdig, og derefter sende den næste. På grund af dette udviklede computeringeniører forskellige metoder og strategier til at behandle flere tråde på kortere tid.
Den mest ligetil løsning er at bryde en tråd ned i separate, mindre og få en CPU til at køre dem parallelt. Dette kaldes "Multithreading" (ikke at forveksle med simultan eller tidsmæssig multithreading). Et program kan være let eller kraftigt trådet alt efter hvordan det er udviklet.
Koncepter til integration af forskellige multithreading-strategier går tilbage til 50'erne. Men det var først i slutningen af 90'erne, at Intel brugte en teknologi kaldet Simultaneous Multithreading (SMT) til at udvikle en hardwarebaseret multithreading-teknik til stationære computere. Intel døbte funktionaliteten Hyper-Threading-teknologi og introducerede den i Intel Pentium 4 desktop-processorchippen i 2002.
Med Intels Hyper-Threading kan op til to tråde dele de samme ressourcer som en CPU-kerne for at udføre de ønskede opgaver. Du har med andre ord stort set adgang til at fordoble antallet af "arbejdere", der kan udføre dine opgaver. Hver gruppe på to arbejdere deler dog de samme ressourcer.
Hyper-Threading: Fordele og ulemper
Den primære fordel ved Hyper-Threading er, at det markant øger systemets ydeevne ved at bruge flere af de tilgængelige behandlingsressourcer. I nogle tilfælde kan single-threading dog stadig være at foretrække.
I de fleste tilfælde, især under daglig multitasking, er din computers CPU-kerner ikke maks. Det betyder, at der stadig er plads til mere behandling. Hyper-Threading låser op for den ubrugte processorkraft i en CPU-kerne for at køre andre tråde, og dermed en mere strømlinet oplevelse i at bruge en CPU's maksimale potentiale.
Selvom det er fordelagtigt, har Hyper-Threading også klare ulemper. Den største ulempe er øget strømforbrug. Sammenlignet med ARM-baserede chips er Intel-processorer berygtede for at trække en masse juice fra bærbare computere, og Hyper-Threading er en af grundene til det.
Med mere strøm trukket til processoren resulterer Hyper-Threading i høje temperaturer og termisk drosling, hvor CPU'en sænker farten for at forhindre overophedning. Desuden kræver bærbare enheder med sådanne Intel-CPU'er større kølesystemer, hvilket kan øge enhedens vægt og proportioner betydeligt.
Endelig, da ydeevneforbedringen er stærkt afhængig af applikationen, er det i sidste ende i programmørernes hænder at designe applikationer, der anvender Hyper-Threading-teknologi. Dette øger udfordringerne ved at udvikle programmer, der maksimerer effektiviteten. Desuden kører software, der ikke understøtter Hyper-Threading, muligvis ikke problemfrit under processorkrævende forhold.
Flere kerner vs. tråde: Hvilken er bedre?
Da det i høj grad afhænger af de programmer, du har tænkt dig at bruge, er det svært at anse det ene som vigtigere end det andet i alle tilfælde. Flere kerner oversættes generelt til flere tilgængelige ressourcer. På den anden side kan flere tråde resultere i bedre multitasking-evner, men ikke altid.
For programmer med kraftigt gevind, vil det at have flere tråde dedikeret til en CPU-kerne ofte resultere i bedre og hurtigere eksekvering. På den anden side kan programmer, der er optimeret til enkelttrådede CPU-kernearkitekturer, vise et fald i ydeevnen, når Hyper-Threading er aktiveret på en CPU.
Når det er sagt, har nogle bemærket, at flere spil – både gamle og nye – kører væsentligt bedre, når Hyper-Threading er slået fra. En bruger på Reddit hævder for eksempel, at han så om en 30 % stigning i FPS i de fleste spil, når han deaktiverede Hyper-Threading på sin Intel Core i9 CPU.
I årevis dominerede Intel CPU-markedet inden for bærbare og stationære computere med chips, der gav dobbelt så mange tråde som kerner, takket være Hyper-Threading. Nogle rivaler er dog for nylig begyndt at arbejde på forskellige CPU-arkitekturer, der har vist sig utroligt mere effektive, mens de tilbyder enkelttrådede CPU-kerner.
Apple Silicon, for eksempel, er en ARM-baseret serie af chips, der viste sig væsentligt mere strømeffektive end Intel-baserede modeller i Apples nyere computere. Også flere nye Windows-bærbare computere, inklusive Microsoft Surface Pro 11, er skiftet til ARM-processorer for bedre batterilevetid og ydeevne til hverdagsbrug. Alle disse ARM-baserede chips kommer med enkelttrådede kerner.
Alt taget i betragtning, betyder det at have flere tråde ikke nødvendigvis bedre CPU-ydeevne. At have flere kerner er dog en mere direkte afgørende faktor for en processors evne til at håndtere mere komplekse og ressourcekrævende kommandoer.
Hvilke andre faktorer bestemmer en CPU's ydeevne?
Vi har dækket forskellene mellem processorkerne og tråd i computere. Det er dog ikke de eneste faktorer, der bestemmer din CPU's endelige output.
Urhastighed (også "clock rate" eller blot "frekvens") er en af de primære differentiatorer i computerprocessorer. Kort sagt måler klokhastigheden, hvor mange cyklusser en CPU kan gennemføre pr. sekund. For eksempel kan en processor med en clockhastighed på 3,2 GHz udføre 3,2 milliarder cyklusser i sekundet.
En anden parameter at overveje er en CPU's cachehukommelse. CPU-cachen er højhastighedshukommelse, der gemmer ofte adgang til data. Større og hurtigere caches accelererer en CPU's evne til at udføre opgaver, der kræver hyppig dataadgang.
Computerprocessorer er bygget ved hjælp af nanometer (nm) fremstillingsprocesser (såsom 7nm eller 5nm). Mindre noder betyder, at flere transistorer kan passe på chippen, hvilket resulterer i større strømeffektivitet og ydeevne, da signaler rejser kortere afstande og derfor kræver mindre tid og energi.
Andre faktorer såsom IPC (Instructions Per Cycle), bushastighed og termisk designkraft spiller også roller for, hvor meget ydeevne du kan presse ud af en CPU.
Inden jeg afslutter, så lad mig introducere dig til vores højtydende Cloud VPS hos Cloudzy. Vi tilbyder avancerede 3,2 og 4,2 GHz lynhurtige CPU'er, NVMe-lagring, høj båndbredde og op til 10 Gbps forbindelser. Hvis du leder efter en bundsolid virtuel maskine, så sørg for at tjekke vores VPS-planer for uovertruffen pålidelighed og hastighed!
Vil du have en højtydende Cloud VPS? Få din i dag, og betal kun for det, du bruger med Cloudzy!
Kom i gang herSidste tanker: Tråd vs. kerne
Når det kommer til computerens ydeevne, er CPU'en den primære afdeling, der er ansvarlig for at udføre programmer. En CPU-kerne er en fysisk enhed i en CPU til behandling af opgaver. Typisk har CPU'er flere kerner, der hver udfører mindst én tråd.
En tråd refererer ofte til den mindste sekvens af instruktioner, der sendes til en CPU-kerne for at blive behandlet. Hver CPU-kerne kan håndtere mindst én tråd ad gangen. I processorer, der har Hyper-Threading, øges dette antal op til to, hvilket betyder, at to tråde samtidigt kan bruge en kernes ressourcer til at udføre forskellige opgaver.
Mens kerner, der understøtter SMT-teknologier, kan håndtere mere end én tråd ad gangen og tilbyder bedre multitasking i teorien, oversættes det ikke altid til en direkte stigning i behandlingsoutput.
FAQ
Er det bedre at have flere kerner vs. tråde?
Det varierer afhængigt af de programmer, du har tænkt dig at bruge. Stærkt trådede applikationer kører typisk bedre givet flere tråde, mens nogle programmer kan køre bedre på enkelttrådede kerner. Imidlertid oversætter flere kerner til en mere direkte stigning i CPU-ydeevne.
Hvor mange tråde er der i en kerne?
I de fleste af nutidens Intel CPU'er kan hver kerne håndtere to tråde ad gangen, takket være en teknologi kaldet Hyper-Threading. Men det er ikke tilfældet for alle processorchips. ARM-baserede CPU'er har for eksempel én tråd pr. kerne.
Hvad er forskellen mellem en kerne og en processor?
En kerne er en fysisk behandlingsenhed inde i en computerprocessor (CPU). Inden for en processor kan der være flere kerner, som er individuelle behandlingsenheder, der kan udføre instruktioner uafhængigt.