Hvordan fungerer Hyper Threading i Intel Core i7-processorer?

Hjem/Anmeldelser/Komponenter/ Hvordan fungerer Hyper Threading i Intel Core i7-processorer?

Hvordan fungerer Hyper Threading i Intel Core i7-processorer?

Af Bill Wilson 10. september 2019 4 minutter læst

Du har hørt udtrykket Hyper-Threading mange gange. Det formodes at være en eller anden magisk teknologi, der fordobler hastigheden på din processor, når den er aktiveret. Virksomheder kan enten tænde eller slukke for det og opkræve meget mere som en præmie.

Jeg vil gerne sige, at alt dette er komplet vrøvl, og at denne artikel har til formål at uddanne dig til bedre at forstå, hvad Hyper-Threading er. Denne artikel vil være meget nybegyndervenlig.

Forord

I de ældre dage, hvis Intel eller AMD skulle lave en hurtigere CPU, ville de generelt øge det potentielle antal transistorer ved at krympe dem og montere mere i samme rum og forsøgte at øge deres frekvenser (målt i MHz / GHz). Alle CPU'erne havde kun en enkelt kerne. CPU'er blev 32 bit og kunne håndtere RAM på op til 4 GB. De flyttede senere til 64 bit CPU'er, der kunne håndtere RAM-spring mere end kun 4 GB. Derefter blev det besluttet at bruge flere kerner og sprede arbejdsbelastninger på tværs af disse flere kerner til mere effektiv computing. Alle kerner kommunikerer med hinanden for at distribuere enhver opgave. En sådan opgave siges at være en multi-threaded opgave.

Dele af en CPU

En CPU består af følgende dele, der fungerer i harmoni. Som nævnt ovenfor vil dette være en overforenkling. Dette er simpelthen et nedbrudskurs, og tag ikke disse oplysninger som evangeliets ord. Disse dele er ikke angivet i nogen bestemt rækkefølge:

  • Planlægning (faktisk på OS-niveau)
  • Fetcher
  • Dekoder
  • Kerne
  • Tråd
  • Cache
  • Hukommelse og I / O-controller
  • FPU (flydende punkt enhed)
  • Registrerer

Disse dele har følgende funktioner

Hukommelsen og I / O-controlleren styrer ind- og udgang af data til og fra CPU'en. Dataene bringes fra harddisken eller SSD'en til RAM'en, så de vigtigere data bringes ind i cachen på CPU'en. Cachen har 3 niveauer. For f.eks. Core i7 7700K har L3-cache på 8 MB. Denne cache deles af hele CPU'en med 2 MB pr. Kerne. Dataene herfra samles op af den hurtigere L2-cache. Hver kerne har sin egen L2-cache, som er 1 MB i alt og 256 KB pr. Kerne. Som tilfældet med Core i7 har den Hyper-Threading. Hver kerne har 2 tråde, så denne L2-cache deles af begge tråde. L1-cachen er i alt 256 KB ved 32 KB pr. Tråd. Her indgår dataene derefter i registre, som i alt er 8 registre i 32-bit-tilstand og 16 registre i 64-bit-tilstand. OS (operativsystem) planlægger processer eller instruktioner til den tilgængelige tråd. Da der er 8 tråde i en i7, skifter den til og fra tråde i kernerne. OS som Windows eller Linux er kloge nok til at vide, hvad der er fysiske kerner, og hvad der er logiske kerner.

Hvordan fungerer Hyper Threading?

I en traditionel multi-core CPU har hver fysisk kerne sine egne ressourcer, og hver kerne består af en enkelt tråd, der har uafhængig adgang til alle ressourcerne. Hyper-Threading involverer 2 (eller i sjældne tilfælde flere) tråde, der deler de samme ressourcer. Planlæggeren kan skifte opgaver og processer mellem disse tråde.

I en traditionel multi-core CPU kan kernen “parkere” eller forblive inaktiv, hvis den ikke har tildelt nogen data eller proces. Denne tilstand kaldes sult og løses sundt ved hjælp af SMT eller Hyper-Threading.

Fysiske vs logiske kerner (og hvad er tråde)

Hvis du læser specarket til næsten alle Core i5, vil du bemærke, at det har 4 fysiske kerner og 4 logiske kerner eller 4 tråde (Coffee Lake i5s har 6 kerner og 6 tråde). Alle i7s indtil 7700K er 4 kerner og 8 tråd / logiske kerner. I forbindelse med Intels CPU'er-arkitektur er tråde og logiske kerner den samme. De har ikke ændret layoutet af deres arkitektur siden 1. generation Nehalem helt frem til i dag med Coffee Lake, så disse oplysninger holder. Disse oplysninger vil ikke være nok til ældre AMD-processorer, men Ryzen har også ændret meget af deres layout, og deres processorer er nu ens i design til Intels.

Fordele ved Hyper Threading

  • Hyper-Threading løser problemet med "sult". Hvis en kerne eller tråd er fri, kan planlæggeren videregive dataene til den i stedet for at kernen forbliver inaktiv eller venter på, at andre nye data strømmer gennem den.
  • Meget større og parallelle arbejdsbelastninger kan udføres med større effektivitet. Da der er flere tråde, der skal paralleliseres, kan applikationer, der er stærkt afhængige af flere tråde, øge deres arbejde markant (dog ikke dobbelt så hurtigt).
  • Hvis du spiller og har en slags vigtig opgave, der kører i baggrunden, vil CPU ikke kæmpe for at give tilstrækkelige rammer og køre opgaven problemfrit, da den kan skifte ressourcer mellem tråde.

Ulemper ved Hyper Threading

Følgende er ikke meget af ulemper, men de er mere ulemper.

  • Hyper-Threading har brug for implementering fra softwareniveau for at drage fordel af. Selvom flere og flere applikationer udvikles for at drage fordel af flere tråde, kører applikationer, der ikke udnytter nogen SMT (Simultaneous Multi-Threading) -teknologi eller endda flere fysiske kerner nøjagtigt det samme uanset. Disse applikations ydeevne er mere afhængig af CPU-nes hastighed og IPC.
  • Hyper-Threading kan få CPU'en til at skabe mere varme. Dette er grunden til, at i5s plejede at ur meget højere end i7s, fordi de ikke ville varme så meget, som de har færre tråde.
  • Flere tråde deler de samme ressourcer inden for en kerne. Derfor fordobles ydeevnen ikke. Det er i stedet en meget smart metode til at maksimere effektiviteten og øge ydeevnen, hvor det er muligt.

Konklusion

Hyper-Threading er gammel teknologi, men en her for at blive. Da applikationer bliver mere og mere krævende, og den stigende dødelighed i Moores lov, har evnen til at parallelisere arbejdsbyrder bidraget til at forbedre ydeevnen betydeligt. At være i stand til at køre delvist parallelle arbejdsbelastninger hjælper med at øge din produktivitet og få dit arbejde udført hurtigere uden stamming. Og hvis du ønsker at købe det bedste bundkort til din 7. generation i7-processor, så kig på denne artikel.

#EksempelNavnNVIDIA SLIAMD CrossFireVRM-faserRGBKøb
1ASUS MAXIMUS IX-FORMEL10

Tjek pris

2MSI Arsenal Gaming Intel Z27010

Tjek pris

3MSI Performance Gaming Intel Z27011

Tjek pris

4ASRock Gaming K6 Z27010+2

Tjek pris

5GIGABYTE AORUS GA-Z270X Gaming 811

Tjek pris

#1
Eksempel
NavnASUS MAXIMUS IX FORMEL
NVIDIA SLI
AMD CrossFire
VRM-faser10
RGB
Køb

Tjek pris

#2
Eksempel
NavnMSI Arsenal Gaming Intel Z270
NVIDIA SLI
AMD CrossFire
VRM-faser10
RGB
Køb

Tjek pris

#3
Eksempel
NavnMSI Performance Gaming Intel Z270
NVIDIA SLI
AMD CrossFire
VRM-faser11
RGB
Køb

Tjek pris

#4
Eksempel
NavnASRock Gaming K6 Z270
NVIDIA SLI
AMD CrossFire
VRM-faser10+2
RGB
Køb

Tjek pris

#5
Eksempel
NavnGIGABYTE AORUS GA-Z270X Gaming 8
NVIDIA SLI
AMD CrossFire
VRM-faser11
RGB
Køb

Tjek pris

Sidste opdatering den 2020-12-23 kl. 05:32 / Tilknyttede links / Billeder fra Amazon Product Advertising API