糯米文學吧

位置:首頁 > 計算機 > 計算機硬件

超線程技術是什麼意思

雖然採用超線程技術能夠同時執行兩個線程,但它並不象兩個真正的CPU那樣,每個CPU都具有獨立的資源。當兩個線程都同時需要某一個資源時,其中一個要暫時停止,並讓出資源,直到這些資源閒置後才能繼續。因此超線程的性能並不等於兩顆CPU的性能。下面是YJBYS小編整理的超線程技術相關知識,希望對你有幫助!

超線程技術是什麼意思

  超線程技術介紹:

超線程技術是在一顆CPU同時執行多個程序而共同分享一顆CPU內的資源,理論上要像兩顆CPU一樣在同一時間執行兩個線程,P4處理器需要多加入一個Logical CPU Pointer(邏輯處理單元)。因此新一代的P4 HT的die的面積比以往的P4增大了5%。而其餘部分如ALU(整數運算單元)、FPU(浮點運算單元)、L2 Cache(二級緩存)則保持不變,這些部分是被分享的。

  超線程與效能提升

一般很多人都會認為,採用超線程技術,就能使得系統效能大幅提升,但是事實真是如此麼?不要忘了我們前面説到的超線程技術實現的必要條件,這可是超線程技術發揮應有效能的前提條件。除了操作系統支持之外,還必須要軟件的支持。從這點我們就可以看出,就目前的軟件現狀來説,支持雙處理器技術的軟件畢竟還在少數。對於大多數軟件來説,目前由於設計的原理不同,還並不能從超線程技術上得到直接的好處。因為超線程技術是在線程級別上並行處理命令,按線程動態分配處理器等資源。該技術的核心理念是“並行度(Parallelism)”,也就是提高命令執行的並行度、提高每個時鐘的效率。這就需要軟件在設計上線程化,提高並行處理的能力。而目前PC上的應用程序幾乎沒有為此作出相應的優化,採用超線程技術並沒不能獲得效能的大幅提升。

  提升CPU性能需要

儘管提高CPU的時鐘頻率和增加緩存容量後的確可以改善CPU性能,但這樣的CPU性能提高在技術上存在較大的難度。實際上在應用中基於很多原因,CPU的`執行單元都沒有被充分使用。如果CPU不能正常讀取數據(總線/內存的瓶頸),其執行單元利用率會明顯下降。另外就是目前大多數執行線程缺乏ILP(Instruction-Level Parallelism,多種指令同時執行)支持。這些都造成了目前CPU的性能沒有得到全部的發揮。因此,Intel則採用另一個思路去提高CPU的性能,讓CPU可以同時執行多重線程,就能夠讓CPU發揮更大效率,即所謂“超線程(Hyper-Threading,簡稱“HT”)”技術。超線程技術就是利用特殊的硬件指令,把兩個邏輯內核模擬成兩個物理芯片,讓單個處理器都能使用線程級並行計算,進而兼容多線程操作系統和軟件,減少了CPU的閒置時間,提高的CPU的運行效率。

採用超線程及時可在同一時間裏,應用程序可以使用芯片的不同部分。雖然單線程芯片每秒鐘能夠處理成千上萬條指令,但是在任一時刻只能夠對一條指令進行操作。而超線程技術可以使芯片同時進行多線程處理,使芯片性能得到提升。

  超線程技術

英特爾P4 超線程有兩個運行模式,Single Task Mode(單任務模式)及Multi Task Mode(多任務模式),當程序不支持Multi-Processing(多處理器作業)時,系統會停止其中一個邏輯CPU的運行,把資源集中於單個邏輯CPU中,讓單線程程序不會因其中一個邏輯CPU閒置而減低性能,但由於被停止運行的邏輯CPU還是會等待工作,佔用一定的資源,因此Hyper-Threading CPU運行Single Task Mode程序模式時,有可能達不到不帶超線程功能的CPU性能,但性能差距不會太大。也就是説,當運行單線程運用軟件時,超線程技術甚至會降低系統性能,尤其在多線程操作系統運行單線程軟件時容易出現此問題。

需要注意的是,含有超線程技術的CPU需要芯片組、軟件支持,才能比較理想的發揮該項技術的優勢。操作系統如:Microsoft Windows XP、Microsoft Windows 2003,Linuxkernel 2.4.x以後的版本也支持超線程技術。

標籤:超線程 技術