Hyperthreading (officiellt kallad hyper-threading technology , HTT eller HT ) är en teknik utvecklad av Intel för att förbättra prestandan hos sina egna processorer . Det blev historiskt sett den första fullfjädrade implementeringen av konceptet simultaneous multithreading ( engelska simultaneous multithreading , SMT ), skapad i utvecklingen av super-threading-teknologi ( engelska super - threading , som implementerade temporär multithreading ). Efter att hyperthreading har aktiverats definieras en fysisk processorkärna av operativsystemet som två separata logiska kärnor. Under vissa arbetsbelastningar kan användningen av hyperthreading öka processorns prestanda. Kärnan i tekniken: överföringen av "nyttigt arbete" ( engelska användbart arbete ) till inaktiva verkställande enheter ( engelska exekveringsenheter ).
Till en början implementerades tekniken i enkärniga Xeon -serverprocessorer (februari 2002) och enkärniga stationära Pentium 4-processorer (november 2002) [1] . I de första flerkärniga Intel-processorerna, inklusive Core 2 -serien (Core 2 Duo, Core 2 Quad), implementerades inte tekniken; Sedan 2008 har flerkärniga processorer också stöds i Nehalem ( Core i7 )-arkitekturen, därefter dök stöd upp i Itanium [2] , Atom [3] och alla Xeon-serier.
En processorkärna som stöder hyperthreading-teknik kan lagra tillståndet för två exekveringstrådar samtidigt , innehåller en uppsättning register och en avbrottskontroller ( API ) för varje logisk kärna. För operativsystemet ser detta ut som att ha två logiska kärnor. Varje logisk kärna har sin egen uppsättning register och en avbrottskontroller ( APIC ). De återstående elementen i den fysiska kärnan är gemensamma för alla logiska kärnor.
Till exempel, när den fysiska kärnan exekverar instruktionstråden för den första logiska kärnan, avbryts exekveringen av instruktionsströmmen av en av följande anledningar:
Den fysiska kärnan kommer inte att vara ledig, utan kommer att överföra kontrollen till kommandoflödet för den andra logiska kärnan. Således, medan en logisk kärna väntar, till exempel, på data från minnet , kommer beräkningsresurserna för den fysiska kärnan att användas av den andra logiska kärnan [4] .
Fördelarna med tekniken är:
Enligt Intel, efter implementeringen av hyperthreading i Pentium 4 och Xeon 2001-2002:
Prestandavinsten varierar från applikation till applikation. Vissa program kan till och med köras långsammare. Detta beror främst på " replay- systemet" hos Pentium 4-processorer, som tar upp de nödvändiga datorresurserna, vilket är anledningen till att andra trådar börjar "svälta" [9] [10] .
Processor Technologies | Digital|||||||||
---|---|---|---|---|---|---|---|---|---|
Arkitektur | |||||||||
Instruktionsuppsättning arkitektur | |||||||||
maskinord | |||||||||
Parallellism |
| ||||||||
Genomföranden | |||||||||
Komponenter | |||||||||
Energihantering |