多核時代的Windows 7:如何跑得更快
為了驗證Windows 7對桌面電腦帶來的好處,技術人員采用最常用的反映多線程能力的桌面應用程序(即圖形導向的軟件)進行了測試。例如Adobe Photoshop和其它圖形應用軟件在啟動和功能配置時自我檢測桌面系統的負載量。在這種狀況下,圖形軟件一般會使用所有的處理器內核和幾乎全部的內存,使得系統能夠提供最快的性能。技術人員一般用Viewperf基準測試(一個綜合性的圖形測試軟件,由SPEC標準性能評估公司頒布的)和Cinebench測試(這是一個單純的圖形渲染測試基準工具),這兩個軟件是免費的,可以從相關的網站下載后使用。
測試的硬件平臺是戴爾Precision T3500工作站。戴爾T3500是一款入門級工作站,一般用于高端圖形用戶。它有四核心Xeon W3540(Nehalem架構)處理器,2.93GHz的主頻,一塊Nvidia FX quadro 4800顯示卡,4GB的內存。這種配置大約是12至18個月后高端桌面系統的主流水平。
在此次測試中,技術人員使用了三塊相同的硬盤驅動器,戴爾工作站預裝了Windows XP專業版、Vista旗艦版和Windows 7旗艦版,都是基于32位的,并且是***版本的驅動程序。然后,技術人員在每個操作系統運行的基準測試。當測試下一個操作系統時,會將前一次測試時用的硬盤換掉,以確保每次測試時不同版本的操作系統運行在系統的硬件上。***的測試結果如下表:
三個版本Windows的性能基準測試結果
測試基準 |
Windows XP SP3 |
Windows Vista SP2 |
Windows 7 Ultimate |
SPEC Viewperf 10 |
95.84 |
142.95 |
139.35 |
SPEC Viewperf 10 |
93.45 |
145.30 |
138.80 |
Cinebench 10 |
3.43 |
3.40 |
3.48 |
Cinebench 10 |
3.98 |
4.07 |
4.09 |
這些結果表明,在考慮是否部署Windows 7時,性能應該被視為是從Windows XP升級到Windows 7的合理理由,但性能的因素不足以讓Vista用戶轉向Windows 7。Windows 7基于Vista內核的因素使得兩者的性能比較接近。
讓人驚訝的是,Windows 7的多線程變化并沒有提供更多的性能提升。對此的解釋是Windows 7如何來管理超線程。Windows 7多線程能力的主要變化包括增加處理器的親和力和Windows內核調度鎖定的變化。這種被稱作“玻璃眼”的技術是現代操作系統的核心內容,也即內核如何阻止兩個線程在同一時間內訪問相同的數據或資源。
任何時候,一個線程想要訪問一個可能另一個線程也需要訪問的數據,就必須使用鎖定機制,以確保只有一個線程可以修改該數據。在Windows 7之前,當一個線程需要獲取或訪問一個鎖定時,它需要通過一個全球性的鎖定機制。這種機制通過內核調度鎖來處理提出的要求。但因為它是獨特的、全球性的,它處理的需求可能來自數以千計的Windows硬件平臺。因此,這個調度鎖就成為了一個主要瓶頸。事實上,這也是Windows Server在相當長的一段時間內最多只能在64個處理器上運行的主要原因。
新的鎖定機制
Windows 7包括一個全新的機制,擺脫了全球鎖定的概念,將推鎖定管理進入到對資源的鎖定。這允許Windows 7擴展到256個處理器而沒有性能損失。在只有少數處理器的系統里,由于舊的內核調度鎖不是負擔過重,所以這個新的機制對于臺式機和小型服務器而言性能的提升不是很明顯。
雖然SMT運行時不可見,但可以預料的是,基準測試會利用一切可用的資源。當運行四個線程的帶SMT功能的Viewperf基準測試時,結果基本保持不變。
Cinebench基準測試是一個衡量多個線程運行比單個線程運行時能快多少的工具。無論是否讓SMT功能激活,Cinebench在測試三個操作系統的性能時僅有微不足道的差異。但是和Viewperf不同的是,三個Windows系統的結果在SMT開啟的情況下得分明顯好于不開啟的情況。也就是說,無論是哪個版本的Windows,Cinebench渲染運行在8個線程(SMT開啟)比4(SMT關閉)個線程性能要高20%。基準測試在這兩個方面的差異,使得用戶在決定現有應用是否開啟SMT功能時,***先進行測試后再決定。
功耗情況
Windows 7提供了幾個技巧,讓線程運行在相同的執行管道里,使底層Nehalem處理器能夠關閉那些較少使用或者不工作的晶體管。該功能的主要優點是減少能源消耗。為了量化這一功能的好處,測試人員運行了帶SMT功能的4線程版本的Viewperf程序。這種配置意味著大約有一半的管道,將看不到有任何活動。下面表格中的數據,就反應了Windows 7的節能效果。
三個版本Windows的Viewperf基準測試結果
能耗考察項 |
Windows XP SP3 |
Vista 旗艦版SP2 |
Windows 7旗艦版 |
功耗(三次測試平均值) |
247瓦 |
248瓦 |
207瓦 |
從表中看到,Windows 7的優勢確實很大,大約能節省17%的能耗。而且這種測試是運行在同一臺工作站上,且硬件配置是完全相同的,只有Windows版本是不同的。這是一個可觀的能耗節省,并有充分理由相信其它軟件將同樣受益于Windows 7的能力,及充分利用英特爾處理器的魔力。
和Intel處理器聯合起來
微軟操作系統和英特爾處理器這些年來幾乎成為了桌面系統的標配。雖然不是每一個周期的迭代產品都對最終用戶帶來大量的利益,但微軟和英特爾的緊密關系已被一些業內人士稱為良性循環。而這一次,新的產品聯動周期確實提供了一些關鍵的優勢:Nehalem處理器的性能遠遠超過前任,并且已經在市場上供貨。新處理器有很多節能技術,可以有效地加以利用。而在微軟這邊,Windows 7適時推出,在節能方面同樣出色。
【編輯推薦】