Cum funcționează Hyper Threading în procesoarele Intel Core i7?

Componente / Cum funcționează Hyper Threading în procesoarele Intel Core i7? 4 minute citite

Ați auzit de multe ori termenul Hyper-Threading. Se presupune că este o tehnologie magică care dublează viteza procesorului dvs. după ce este activat. Companiile îl pot activa sau dezactiva și pot percepe mult mai mult ca o primă.



Aș vrea să spun că toate acestea sunt o prostie completă și că acest articol își propune să vă educe să înțelegeți mai bine ce este Hyper-Threading. Acest articol va fi foarte potrivit pentru începători.

Prefaţă

În zilele mai vechi, dacă Intel sau AMD ar fi trebuit să facă un procesor mai rapid, în general ar crește numărul potențial de tranzistoare prin micșorarea lor și încadrarea mai mare în același spațiu și ar încerca să-și mărească frecvențele (măsurate în MHz / GHz). Toate procesoarele au avut un singur nucleu. CPU-urile au devenit pe 32 de biți și pot gestiona RAM de până la 4 GB. Ulterior s-au mutat pe procesoare pe 64 de biți care ar putea face față RAM-urilor mai mult de doar 4 GB. Apoi, s-a decis să se utilizeze mai multe nuclee și să se răspândească sarcinile de lucru pe aceste nuclee multiple pentru o calculare mai eficientă. Toate nucleele comunică între ele pentru a distribui orice sarcină. Se spune că o astfel de sarcină este o sarcină cu mai multe fire.



Părți ale unui CPU



Un procesor este format din următoarele părți care funcționează în armonie. După cum sa menționat mai sus, aceasta va fi o simplificare excesivă. Acesta este pur și simplu un curs rapid și, nu luați aceste informații drept cuvântul Evangheliei. Aceste părți nu sunt listate într-o ordine specială:



  • Programator (de fapt la nivelul sistemului de operare)
  • Fetcher
  • Decodor
  • Miezul
  • Fir
  • Cache
  • Memorie și controler I / O
  • FPU (unitate cu virgulă mobilă)
  • Registrele

Funcțiile acestor părți sunt următoarele

Memoria și controlerul I / O gestionează intrarea și ieșirea datelor către și de la CPU. Datele sunt aduse de pe hard disk sau SSD pe RAM, apoi datele mai importante sunt aduse în memoria cache a procesorului. Cache-ul are 3 niveluri. De exemplu. Core i7 7700K are cache L3 de 8 MB. Această memorie cache este partajată de întregul procesor la 2 MB per nucleu. Datele de aici sunt preluate de memoria cache L2 mai rapidă. Fiecare nucleu are propria cache L2, care este 1 MB în total și 256 KB pe nucleu. Ca și în cazul Core i7, acesta are Hyper-Threading. Fiecare nucleu are 2 fire, deci această cache L2 este partajată de ambele fire. Memoria cache L1 în total este de 256 KB la 32 KB pe fir. Aici datele intră apoi în registre care sunt un total de 8 registre în modul pe 32 de biți și 16 registre în modul pe 64 de biți. Sistemul de operare (sistemul de operare) planifică procesele sau instrucțiunile către firul disponibil. Deoarece există 8 fire într-un i7, acesta va trece la și de la fire din nuclee. Sistemele de operare precum Windows sau Linux sunt suficient de inteligente pentru a ști ce sunt nucleele fizice și care sunt nucleele logice.

Cum funcționează Hyper Threading?



Într-un procesor tradițional multi-core, fiecare nucleu fizic are propriile resurse și fiecare nucleu constă dintr-un singur fir care are acces independent la toate resursele. Hyper-Threading implică 2 (sau, în cazuri rare, mai multe) fire care împart aceleași resurse. Planificatorul poate comuta sarcini și procese între aceste fire.

Într-un procesor tradițional multi-core, nucleul poate „parca” sau rămâne inactiv dacă nu are date sau procese atribuite. Această stare se numește foame și este rezolvată sănătos prin SMT sau Hyper-Threading.

Nucleuri fizice vs logice (și ce sunt firele)

Dacă citiți foaia de specificații pentru aproape fiecare Core i5, veți observa că are 4 nuclee fizice și 4 nuclee logice sau 4 fire (Coffee Lake i5 are 6 nuclee și 6 fire). Toate i7-urile până la 7700K sunt 4 nuclee și 8 fire / nuclee logice. În contextul arhitecturii CPU-urilor Intel, firele și nucleele logice sunt același lucru. Nu au schimbat aspectul arhitecturii lor de la prima generație Nehalem până acum cu Coffee Lake, astfel încât aceste informații vor păstra. Aceste informații nu vor fi suficiente pentru CPU-urile AMD mai vechi, dar Ryzen și-a schimbat și aspectul, iar procesoarele lor sunt acum similare ca design cu Intel.

Avantajele filetării hiper

  • Hyper-Threading rezolvă problema „foametei”. Dacă un nucleu sau un fir este liber, programatorul îi poate transmite datele în loc ca nucleul să rămână inactiv sau să aștepte ca alte date noi să curgă prin el.
  • Sarcini de lucru mult mai mari și paralele pot fi realizate cu o eficiență mai mare. Deoarece există mai multe fire de paralelizat, aplicațiile care depind în mare măsură de mai multe fire de lucru își pot îmbunătăți semnificativ activitatea (nu de două ori mai rapid).
  • Dacă vă jucați și aveți un fel de sarcină importantă care rulează în fundal, procesorul nu se va lupta pentru a oferi cadre adecvate și pentru a rula acea sarcină fără probleme, deoarece poate comuta resursele între fire.

Dezavantaje ale filetării hiper

Următoarele nu sunt prea multe dezavantaje, ci mai degrabă sunt mai multe inconveniente.

  • Hyper-Threading are nevoie de implementare de la nivel de software pentru a profita. Chiar dacă din ce în ce mai multe aplicații sunt dezvoltate pentru a profita de mai multe fire de execuție, aplicațiile care nu profită de nicio tehnologie SMT (Simultaneous Multi-Threading) sau chiar mai multe nuclee fizice vor rula exact la fel indiferent. Performanța acestor aplicații depinde mai mult de viteza de ceas și de IPC-ul unui procesor.
  • Hyper-Threading poate face ca CPU să creeze mai multă căldură. Acesta este motivul pentru care i5-urile obișnuiau să se uite mult mai mult decât i7-urile, deoarece nu s-ar încălzi la fel de mult pe cât au mai puține fire.
  • Mai multe thread-uri împart aceleași resurse într-un nucleu. Acesta este motivul pentru care performanța nu se dublează. Este, în schimb, o metodă foarte inteligentă pentru a maximiza eficiența și a spori performanța acolo unde este posibil.

Concluzie

Hyper-Threading este o tehnologie veche, dar una aici pentru a rămâne. Pe măsură ce aplicațiile devin din ce în ce mai solicitante și creșterea ratei de deces din legea lui Moore, capacitatea de a paralela sarcinile de lucru a contribuit la îmbunătățirea semnificativă a performanței. Abilitatea de a rula încărcări de lucru parțial paralele vă ajută să vă creșteți productivitatea și vă faceți munca mai rapidă, fără a se balbați. Și dacă doriți să cumpărați cea mai bună placă de bază pentru procesorul dvs. i7 de generația a 7-a, aruncați o privire acest articol.

#previzualizareNumeNVIDIA SLIAMD CrossFireFaze VRMRGBCumpărare
1 ASUS Formula 9 10

Verificați prețul
2 MSI Arsenal Gaming Intel Z270 10

Verificați prețul
3 MSI Performance Gaming Intel Z270 unsprezece

Verificați prețul
4 ASRock Gaming K6 Z270 10 + 2

Verificați prețul
5 GIGABYTE AORUS GA-Z270X Gaming 8 unsprezece

Verificați prețul
#1
previzualizare
NumeASUS Formula 9
NVIDIA SLI
AMD CrossFire
Faze VRM10
RGB
Cumpărare

Verificați prețul
#2
previzualizare
NumeMSI Arsenal Gaming Intel Z270
NVIDIA SLI
AMD CrossFire
Faze VRM10
RGB
Cumpărare

Verificați prețul
#3
previzualizare
NumeMSI Performance Gaming Intel Z270
NVIDIA SLI
AMD CrossFire
Faze VRMunsprezece
RGB
Cumpărare

Verificați prețul
#4
previzualizare
NumeASRock Gaming K6 Z270
NVIDIA SLI
AMD CrossFire
Faze VRM10 + 2
RGB
Cumpărare

Verificați prețul
#5
previzualizare
NumeGIGABYTE AORUS GA-Z270X Gaming 8
NVIDIA SLI
AMD CrossFire
Faze VRMunsprezece
RGB
Cumpărare

Verificați prețul

Ultima actualizare pe 2021-01-05 la 22:02 / Linkuri afiliate / Imagini din Amazon Product Advertising API