超線程技術已經不是什么新鮮事物了,但普通用戶可能與雙核心技術區分不開。例如開啟了超線程技術的Pentium 4 530與Pentium D 530在操作系統中都同樣被識別為兩顆處理器,它們究竟是不是一樣的呢?這個問題確實具有迷惑性。
其實,可以簡單地把雙核心技術理解為兩個"物理"處理器,是一種"硬"的方式;而超線程技術只是兩個"邏輯"處理器,是一種"軟"的方式。 其實這方面更詳細的還可以在52硬件論壇查到(http://bbs.52hardware.com)
從原理上來說,超線程技術屬于Intel版本的多線程技術。這種技術可以讓單CPU擁有處理多線程的能力,而物理上只使用一個處理器。超線程技術為每個物理處理器設置了兩個入口-AS(Architecture State,架構狀態)接口,從而使操作系統等軟件將其識別為兩個邏輯處理器。這兩個邏輯處理器像傳統處理器一樣,都有獨立的IA-32架構,它們可以分別進入暫停、中斷狀態,或直接執行特殊線程,并且每個邏輯處理器都擁有APIC(Advanced Programmable Interrupt Controller,高級可編程中斷控制器)。雖然支持超線程的Pentium 4能同時執行兩個線程,但不同于傳統的雙處理器平臺或雙內核處理器,超線程中的兩個邏輯處理器并沒有獨立的執行單元、整數單元、寄存器甚至緩存等等資源。它們在運行過程中仍需要共用執行單元、緩存和系統總線接口。在執行多線程時兩個邏輯處理器均是交替工作,如果兩個線程都同時需要某一個資源時,其中一個要暫停并要讓出資源,要待那些資源閑置時才能繼續。因此,超線程技術所帶來的性能提升遠不能等同于兩個相同時鐘頻率處理器帶來的性能提升。可以說Intel的超線程技術僅可以看做是對單個處理器運算資源的優化利用。
而雙核心技術則是通過"硬"的物理核心實現多線程工作:每個核心擁有獨立的指令集、執行單元,與超線程中所采用的模擬共享機制完全不一樣。在操作系統看來,它是實實在在的雙處理器,可以同時執行多項任務,能讓處理器資源真正實現并行處理模式,其效率和性能提升要比超線程技術要高得多,不可同日而語。
新聞熱點
疑難解答