I vantaggi di Hyper Threading

October 18

I vantaggi di Hyper Threading


Hyper-Threading è multitasking; senza di essa, enormi quantità di tempo di CPU sono sprecati. Per capire Hyper-Threading, alcuni retroscena conoscenza di come è necessario un lavoro di processori. Conoscere le nozioni di base su come funziona il processore, e come hyper-threading colpisce esso, può aiutare a prendere una decisione informata la prossima volta si sta facendo un acquisto.

Parti di un processore

I processori moderni sono circuiti complessi che sono composti di due parti fondamentali. Il "front-end" di un processore legge i dati da una piccola memoria cache e organizza in calcoli discreti, cui passa poi sul "back-end", che legge le istruzioni ed esegue i calcoli. Il back-end passa quindi i risultati dei calcoli indietro attraverso la memoria. Ogni tipo di calcolo può essere eseguito solo dal corrispondente tipo di processore; per esempio, l'aggiunta viene eseguita da un'unità logica aritmetica.

Senza Hyper-threading

Senza Hyper-Threading, il multitasking è effettuata dando ogni programma una fetta di tempo per eseguire calcoli sulla CPU. Quando il tempo è scaduto, il programma deve attendere il successivo spazio disponibile. Tuttavia, alcuni programmi devono eseguire particolari tipi di calcoli. Questo porta a situazioni in cui tutte le unità aritmetiche potrebbero essere utilizzate, ma moltiplicatori sono seduti al minimo. cicli di CPU senza Hyper-Threading di solito finiscono con inefficienti, le unità vuote.

Hyper-Threading

Hyper-threading introduce la possibilità del processore di combinare istruzioni più programmi ed eseguirli sulla stessa ciclo. Per le unità di back-end, un calcolo è solo un calcolo, e quindi non si verifica alcuna confusione. Poiché i programmi condividono cicli, unità di calcolo inutilizzato rapidamente ottenere riempito, eliminando gli sprechi. Hyper-Threading migliora l'efficienza solo quando il multitasking, tuttavia, e non fa nulla per aumentare la velocità di base di un processore.

Prima di Hyper-threading

Prima di Hyper-Threading è stata implementata, una forma più elementare di multi-threading esistito. multitasking cooperativo avrebbe commutare la CPU tra diversi programmi, ma fatto affidamento su ogni programma di abbandonare l'uso della CPU quando è stato terminato. Anche se questo ha lavorato con gli sviluppatori di fiducia, programmi dannosi o mal codificati potrebbero intasare la CPU, rifiutando di rinunciare agli altri. Questo problema direttamente portato allo sviluppo di iper-threading, nonché altri utenti tecnologie contare, come la protezione della memoria.