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