“超線程”(Hyperthreading Technology)技術是通過采用特殊的硬件指令,可以把兩個邏輯內核模擬成兩個物理超線程芯片,在單處理器中實現線程級的并行計算,同時大幅提高運行 效能,從而實現在單處理器上模擬雙處理器的效能。
如果我們CPU將一件工作,分成10份,由10個人來分別完成,只有10個人全完成了,這個工作才算全完成,可以理解為10跳流水線共同完成完這項工作的所有部分,CPU才可以進行下一件工作。一件工作分得越細致,需要的人越多,流水線就越長,效率(CPU頻率)越高,就像工廠里的生產線一樣。
然而可能分給每個人(每條流水線)的任務不盡相同,有的先完成了,有的后完成了,先完成的必須等待后完成的做完了才可以進行CPU下一工作。這樣就造成了空閑。流水線做的越長(工作分得越細致、共同完成這個工作的人越多)這種情況越嚴重。
因此超線程技術就誕生了,超線程技術實際上是虛擬一個CPU,讓已經完成自己任務的,進入等待狀態的流水線(那個分配的任務比較輕的,干活比較快的人),提前進行下一任務。理論上這樣可以提高效率。