Hyperthreading (numit oficial tehnologie hyper-threading , HTT sau HT ) este o tehnologie dezvoltată de Intel pentru a îmbunătăți performanța propriilor procesoare . A devenit din punct de vedere istoric prima implementare cu drepturi depline a conceptului de multithreading simultan ( în engleză simultaneous multithreading , SMT ), creată în dezvoltarea tehnologiei super-threading ( în engleză super - threading , care a implementat multithreading temporar ). După ce hyperthreading este activat, un nucleu de procesor fizic este definit de sistemul de operare ca două nuclee logice separate. În anumite sarcini de lucru, utilizarea hyperthreading-ului poate crește performanța procesorului. Esența tehnologiei: transferul „muncă utilă” ( muncă utilă în limba engleză ) către dispozitive executive inactive ( unități de execuție în limba engleză ).
Inițial, tehnologia a fost implementată în procesoare server Xeon single-core (februarie 2002) și procesoare desktop Pentium 4 single-core (noiembrie 2002) [1] . În primele procesoare Intel multi-core, inclusiv seria Core 2 (Core 2 Duo, Core 2 Quad), tehnologia nu a fost implementată; Din 2008, procesoarele multi-core au fost suportate și în arhitectura Nehalem ( Core i7 ), ulterior a apărut suport în seria Itanium [2] , Atom [3] și în toate seriile Xeon.
Un nucleu de procesor care acceptă tehnologia hyperthreading poate stoca starea a două fire de execuție simultan , conține un set de registre și un controler de întrerupere ( APIC ) pentru fiecare nucleu logic. Pentru sistemul de operare, acest lucru pare să aibă două nuclee logice. Fiecare nucleu logic are propriul său set de registre și un controler de întrerupere ( APIC ). Elementele rămase ale nucleului fizic sunt comune tuturor nucleelor logice.
De exemplu, atunci când nucleul fizic execută firul de instrucțiuni al primului nucleu logic, execuția fluxului de instrucțiuni este suspendată din unul dintre următoarele motive:
Nucleul fizic nu va fi inactiv, dar va transfera controlul fluxului de comandă al celui de-al doilea nucleu logic. Astfel, în timp ce un nucleu logic așteaptă, de exemplu, date din memorie , resursele de calcul ale nucleului fizic vor fi utilizate de al doilea nucleu logic [4] .
Avantajele tehnologiei sunt:
Potrivit Intel, după implementarea hyperthreading-ului în Pentium 4 și Xeon 2001-2002:
Câștigul de performanță variază de la aplicație la aplicație. Unele programe pot rula chiar mai lent. Acest lucru se datorează în primul rând „ sistemului de reluare ” al procesoarelor Pentium 4, care ocupă resursele de calcul necesare, motiv pentru care alte fire încep să „fomete” [9] [10] .
Tehnologii de procesoare digitale | |||||||||
---|---|---|---|---|---|---|---|---|---|
Arhitectură | |||||||||
Arhitectura set de instrucțiuni | |||||||||
cuvânt mașină | |||||||||
Paralelism |
| ||||||||
Implementări | |||||||||
Componente | |||||||||
Gestionare a energiei |