英特爾桌上型處理器的壓箱寶,第一顆搭載Hyper-Threading技術的Pentium 4現身英特爾自2000年末推出第一顆Pentium 4處理器,至今已有兩年的時間,從原先不被市場看好,到現在幾乎成為桌上型平臺高階處理器的代名詞,期間經歷了不少演進。像是搭配的記憶體從早期堅持走RDRAM路線,到現在力拱的DDR333;製程技術從0.18微米、256kB第二階快取的「Willamette」核心,到現在的0.13微米、512kB第二階快取的「Northwood」核心;處理器前端匯流排頻率也從400MHz提升至533MHz。時脈和效能不斷攀升的同時,價格也在一次又一次的調降下趨於合理,英特爾藉著Pentium 4的成功,不但坐穩了處理器龍頭大廠的寶座,並將對手AMD的市佔率進一步壓縮至20%以下。
英特爾真的能就此高枕無憂了嗎?那可不一定,AMD醞釀已久的Clawhammer(K8)處理器即將在明年第一季問世,這顆採用x86-64位元技術的處理器,極有可能為桌上型電腦的發展寫下新頁。為了因應此威脅,英特爾將原本排定2003年問世的Pentium 4 3.06GHz處理器,提前於今年11月14日正式在全球發表。特別的是,這顆處理器最受矚目的地方,並不在於時脈突破3GHz(英特爾曾表示目前Pentium 4架構的時脈可延伸至10GHz以上),而是它具備英特爾開發的創新技術-Hyper-Threading。
Hyper-Threading是何方神聖?
事實上在Pentium 4 3.06GHz問世之前,Hyper-Threading這項技術就已經應用在今年發表的新一代伺服器級處理器Intel Xeon(Xeon 512)身上。在了解Hyper-Threading的工作原理之前,我們先來溫習一下處理器的基礎運作原理。當使用者向程式下達命令(或輸入資料),程式會向處理器發送執行緒,告訴它應該做什麼,對處理器來說,一個執行緒就是一組必須執行的指令,而指令是如何進入處理器的呢?靠的是處理器入口處的程式計數器(Program Counter,簡稱PC),當程式計數器接收的每一組指令進入處理器之後,下一組指令都會自動存放在記憶體中,並在下一個周期送進處理器。執行緒可以強制處理器終止指令,如此執行緒之間就能相互中斷彼此的運行,不過在一個特定時間內只能有一組執行緒能夠被執行。
近十年來x86架構處理器運算速度的爆炸性成長,靠的是處理器製造商不斷拉高運作時脈、加大快取記憶體容量,並開發出多種技術以便讓處理器可以在一個周期內執行更多指令,受到執行緒的限制,單一處理器的效能的確到了一個瓶頸,從英特爾不斷推出時脈更高的Pentium 4,效能進步幅度卻是相當有限這點可以看出端倪。即使時脈再怎麼攀高,同一時間內能被執行的指令增加不多,系統資源真正能運用到的部分依舊相當有限。
在伺服器、高階工作站領域,很早就已經朝向多執行緒方面尋求解決處理器的效能瓶頸,運用對稱式多處理器系統(Symmetric Multi-processor,簡稱SMP),配合作業系統將執行緒以平行方式排定處理程序,增進運作效能。不過SMP系統需要兩顆以上的處理器,昂貴的價格並不適合做為桌上型電腦的解決方案。而一種稱之為同時多重執行緒(Simultaneous Multi-threading,簡稱SMT)的技術,則是提供了另一條解決處理器效能瓶頸的途徑,Hyper-Threading採行的正是這項技術。
讓單顆處理器具備雙處理器的效能
SMT技術是在單一處理器上提供執行緒層級的平行處理(Thread-Level Parallelism,TLP)功能,簡單的說,這項技術可讓作業系統將單一實體處理器視為兩顆甚至更多顆的邏輯處理器,提高處理器執行資源的利用程度。以Pentium 4 3.06GHz所具備的Hyper-Threading技術來說,作法是藉由複製處理器上的結構(Architecture State),並共用同一組處理器的執行資源。執行資源指的是處理器內進行加、乘、載入等工作的單元,結構則是負責追蹤程式或執行緒的流向。
我們假設處理器是一座工廠,生產線(執行資源)有一位負責追蹤訂單(執行緒)並確保工廠運作順利的監工(結構),一旦發生某個零件缺料,在待料的同時,生產線(執行資源)的速度也會降低。運用Hyper-Threading技術的處理器就像是工廠內有兩位監工(結構),共享工廠中相同的生產線(執行資源),當一位監工(結構)在等待零件送達時,另一位監工(結構)就可以使用生產線(執行資源)。由於生產線(執行資源)的使用率提高,工廠可以在不增加任何設備的情況下,更有效率的運作,生產更多的貨品。
Hyper-Threading技術和SMP系統不同的是,SMP系統中每顆處理器都擁有自己的執行資源,而Hyper-Threading中的兩顆邏輯處理器則是共用執行資源,只不過它們都各自配備暫存器。為了讓技術的複雜性降至最低,Hyper-Threading並不將獲取資源和編解碼這兩個步驟指向兩個執行緒,而是在兩顆處理器之間交替進行,試圖讓兩個執行緒同時執行指令,進而充分運用系統資源,增加執行效率。
Hyper-Threading的軟硬體支援現況
測試軟硬體介紹
Pentium 4 3.06GHz處理器雖然具備Hyper-Threading技術,不過正確運作的前提是必須搭配適當的軟硬體。系統晶片組方面,英特爾最新的三款晶片組Intel 845PE、845GE、845GV,以及最高階的Intel 850E已經可以支援Hyper-Threading,部分845E、845G主機板的使用者也可以透過更新BIOS的方式,開啟Hyper-Threading的支援功能。其他晶片組廠商方面,目前已知的僅有矽統科技將會在年底推出的SiS 655晶片組內,提供Hyper-Threading的支援。
作業系統方面,目前支援Hyper-Threading技術的作業系統包括Windows XP Home/Professional,以及核心版本2.4.18以上的Linux作業系統,包括最新的Red Hat Linux 8.0以及Mandrake Linux 9.0。
本次測試平臺採用華碩P4PE主機板,這張主機板除了採用最新的Intel 845PE晶片組之外,還內建Serial ATA硬碟傳輸介面、Gbit網路及IEEE 1394,BIOS內建超頻相關的選項也相當完整,效能和功能兼具,堪稱是P4 DDR平臺最頂級的主機板。記憶體採用體質相當優異的勤茂PC3200(DDR400) SDRAM,經我們測試在DDR333模式下,延遲時間(CAS Latency)可調整為CL=2並穩定運作。顯示卡採用青雲GeForce 4 Ti 4200,具備64MB顯示記憶體。硬碟則是採用Maxtor 5T040H4,主軸轉速7200rpm,並支援Ultra ATA/100傳輸模式。
作業系統方面,測試平臺採用支援Hyper-Threading技術的Windows XP Professional英文版,並安裝Service Pack 1修正檔、Intel Chipset Software Installation Utility 4.04.1007及Application Accelerator 2.22。顯示卡驅動程式安裝Nvidia最新的Detonator 40.72 Beta版。
測試軟體部分,系統層級的效能測試採用SiSoft Sandra Standard 2002.68.97,透過這套軟體可以分別測試處理器在一般應用程式下,以及多媒體環境下的整數運算效能和浮點運算效能。PCMark 2002則是另一套知名的測試軟體,特色是除了測試處理器效能,也可同時測試記憶體和硬碟的運作效能。
應用層級的效能測試方面,採用CC Winstone 2002 1.0.1和Business Winstone 2001 1.0.3,前者主要是執行Photoshop、Director等繪圖、多媒體製作軟體,後者則是執行Office 2000、WinZip等辦公室常用的應用軟體,利用實際執行多種應用軟體來評估系統的整體運作效能。
3D效能方面,採用業界最普遍的測試軟體3DMark 2001SE和著名的遊戲軟體Quake III:Team Arena進行測試,前者主要針對DirectX 8.1所設計,並支援Pixel Shader、D3D T&L等功能,後者則是用來測試OpenGL架構下的3D顯示表現。測試環境的設定上,解析度統一設為1024×768,畫面更新率鎖定在85Hz,顏色數設定在32位元色深。為了解Hyper-Threading技術對處理器效能的影響,我們分別測試Hyper-Threading開啟及關閉的狀態,並加入Pentium 4 2.8GHz處理器的測試數據做為對照。
Pentium 4 3.06GHz處理器
目前測試軟體還無法評估Hyper-Threading的真正效能
首次安裝Pentium 4 3.06GHz的測試平臺開機時,系統辨識出處理器具備Hyper-Threading技術,BIOS偵測畫面即會出現兩顆處理器的型號,作業系統中的工作管理員和裝置管理員畫面也會顯示兩顆處理器。以WCPUID 3.10偵測處理器內容,由於P4PE主機板預設外頻為135.02MHz,處理器真正時脈為3105.43MHz。
從測試結果來看,目前的應用軟體、遊戲都還不支援Hyper-Threading,除了單純測試處理器整數運算和浮點運算的SiSoft Sandra Standard 2002,開啟Hyper-Threading的測試成績有相當大幅度的進步之外,其他不管是執行應用程式還是3D遊戲,都看不出Hyper-Threading技術帶來的影響,在CC Winstone 2002這一個測試項目,開啟Hyper-Threading的Pentium 4 3.06GHz分數甚至還落後Pentium 4 2.8GHz。
之所以產生這樣的結果,關鍵是在於Hyper-Threading在一個周期內兩組執行緒同時運行時,會有指令相衝突的情況發生,必須從應用程式的編譯上加以改善,目前英特爾正加強這方面的努力,希望能幫助程式開發者編寫針對Hyper-Threading最佳化的軟體。
雖然Hyper-Threading技術已經證實應用在Intel Xeon伺服器平臺上的功效,由於缺乏應用程式的配合,目前看來移植到Pentium 4桌上型平臺的成熟度似乎略嫌不足,但是不可否認的,從執行緒層面根本解決處理器效能瓶頸的問題,已經是未來的發展趨勢。從長遠來看,使用者對多工處理的需求漸增,Hyper-Threading技術可使桌上型電腦具備雙處理器系統的多工處理能力,卻不用負擔第二顆處理器的成本,相較於傳統處理器,Hyper-Threading技術可提升處理器的附加價值。
自從去年英特爾在秋季開發者論壇上演示Hyper-Threading技術以來,市場便傳聞Northwood核心的Pentium 4處理器原本就具備Hyper-Threading,英特爾基於種種考量刻意將這項功能隱藏起來,只須修改BIOS設定即可開啟。根據我們向英特爾亞太臺灣分公司查證的結果,證實這只是謠傳,英特爾也不打算在3GHz以下的處理器當中加入Hyper-Threading技術。根據發展藍圖,未來3GHz以上的處理器,包括90奈米製程的「Prescott」核心Pentium 4(Pentium 5?),都將具備Hyper-Threading技術。文⊙張智鴻
熱門新聞
2025-12-31
2025-12-31
2026-01-02
2025-12-31
2025-12-31
2026-01-02
2025-12-31