雙核多核時(shí)代的Windows 7如何跑的更快
微軟Windows7發(fā)布后受到了市場(chǎng)和用戶的追捧。雖然Windows7的內(nèi)核主要建立在Vista代碼的基礎(chǔ)上,但其幾個(gè)主要的進(jìn)展擺脫 Vista給用戶帶來(lái)的煩惱,大大改善了用戶體驗(yàn)。在內(nèi)核中,一項(xiàng)重大的改變就是如何提升多線程應(yīng)用的運(yùn)行。該進(jìn)展帶來(lái)的好處就是降低了能耗,提升了可擴(kuò)展性,并在理論上提高了性能。 為了驗(yàn)證Windows7對(duì)桌面電腦帶來(lái)的好處,技術(shù)人員采用最常用的反映多線程能力的桌面應(yīng)用程序(即圖形導(dǎo)向的軟件)進(jìn)行了測(cè)試。例如Adobe Photoshop和其它圖形應(yīng)用軟件在啟動(dòng)和功能配置時(shí)自我檢測(cè)桌面系統(tǒng)的負(fù)載量。在這種狀況下,圖形軟件一般會(huì)使用所有的處理器內(nèi)核和幾乎全部的內(nèi)存,使得系統(tǒng)能夠提供最快的性能。技術(shù)人員一般用VIEwperf基準(zhǔn)測(cè)試(一個(gè)綜合性的圖形測(cè)試軟件,由SPEC標(biāo)準(zhǔn)性能評(píng)估公司頒布的)和 Cinebench測(cè)試(這是一個(gè)單純的圖形渲染測(cè)試基準(zhǔn)工具),這兩個(gè)軟件是免費(fèi)的,可以從相關(guān)的網(wǎng)站下載后使用。 測(cè)試的硬件平臺(tái)是戴爾PrecisionT3500工作站。戴爾T3500是一款入門級(jí)工作站,一般用于高端圖形用戶。它有四核心 XeonW3540(Nehalem架構(gòu))處理器,2.93GHz的主頻,一塊NvidiaFXquadro4800顯示卡,4GB的內(nèi)存。這種配置大約是12至18個(gè)月后高端桌面系統(tǒng)的主流水平。 在此次測(cè)試中,技術(shù)人員使用了三塊相同的硬盤(pán)驅(qū)動(dòng)器,戴爾工作站預(yù)裝了WindowsXP專業(yè)版、Vista旗艦版和Windows7旗艦版,都是基于32位的,并且是最新版本的驅(qū)動(dòng)程序。然后,技術(shù)人員在每個(gè)操作系統(tǒng)運(yùn)行的基準(zhǔn)測(cè)試。當(dāng)測(cè)試下一個(gè)操作系統(tǒng)時(shí),會(huì)將前一次測(cè)試時(shí)用的硬盤(pán)換掉,以確保每次測(cè)試時(shí)不同版本的操作系統(tǒng)運(yùn)行在系統(tǒng)的硬件上。最后的測(cè)試結(jié)果如下表: 三個(gè)版本W(wǎng)indows的性能基準(zhǔn)測(cè)試結(jié)果
測(cè)試基準(zhǔn) (數(shù)值大的好) Windows XP SP3 Windows Vista SP2 Windows 7 UltimateSPEC Viewperf 10 (SMT off) 95.84 142.95 139.35SPEC Viewperf 10 (SMT on) 93.45 145.30 138.80Cinebench 10 (SMT off) 3.43 3.40 3.48Cinebench 10 (SMT on) 3.98 4.07 4.09
這些結(jié)果表明,在考慮是否部署Windows7時(shí),性能應(yīng)該被視為是從WindowsXP升級(jí)到Windows7的合理理由,但性能的因素不足以讓Vista用戶轉(zhuǎn)向Windows7。Windows7基于Vista內(nèi)核的因素使得兩者的性能比較接近。 讓人驚訝的是,Windows7的多線程變化并沒(méi)有提供更多的性能提升。對(duì)此的解釋是Windows7如何來(lái)管理超線程。Windows7多線程能力的主要變化包括增加處理器的親和力和 Windows內(nèi)核調(diào)度鎖定的變化。這種被稱作“玻璃眼的技術(shù)是現(xiàn)代操作系統(tǒng)的核心內(nèi)容,也即內(nèi)核如何阻止兩個(gè)線程在同一時(shí)間內(nèi)訪問(wèn)相同的數(shù)據(jù)或資源。 任何時(shí)候,一個(gè)線程想要訪問(wèn)一個(gè)可能另一個(gè)線程也需要訪問(wèn)的數(shù)據(jù),就必須使用鎖定機(jī)制,以確保只有一個(gè)線程可以修改該數(shù)據(jù)。在 Windows7之前,當(dāng)一個(gè)線程需要獲取或訪問(wèn)一個(gè)鎖定時(shí),它需要通過(guò)一個(gè)全球性的鎖定機(jī)制。這種機(jī)制通過(guò)內(nèi)核調(diào)度鎖來(lái)處理提出的要求。但因?yàn)樗仟?dú)特的、全球性的,它處理的需求可能來(lái)自數(shù)以千計(jì)的Windows硬件平臺(tái)。因此,這個(gè)調(diào)度鎖就成為了一個(gè)主要瓶頸。事實(shí)上,這也是 WindowsServer在相當(dāng)長(zhǎng)的一段時(shí)間內(nèi)最多只能在64個(gè)處理器上運(yùn)行的主要原因。 新的鎖定機(jī)制 Windows7包括一個(gè)全新的機(jī)制,擺脫了全球鎖定的概念,將推鎖定管理進(jìn)入到對(duì)資源的鎖定。這允許Windows7擴(kuò)展到256個(gè)處理器而沒(méi)有性能損失。在只有少數(shù)處理器的系統(tǒng)里,由于舊的內(nèi)核調(diào)度鎖不是負(fù)擔(dān)過(guò)重,所以這個(gè)新的機(jī)制對(duì)于臺(tái)式機(jī)和小型服務(wù)器而言性能的提升不是很明顯。 雖然SMT運(yùn)行時(shí)不可見(jiàn),但可以預(yù)料的是,基準(zhǔn)測(cè)試會(huì)利用一切可用的資源。當(dāng)運(yùn)行四個(gè)線程的帶SMT功能的Viewperf基準(zhǔn)測(cè)試時(shí),結(jié)果基本保持不變。 Cinebench基準(zhǔn)測(cè)試是一個(gè)衡量多個(gè)線程運(yùn)行比單個(gè)線程運(yùn)行時(shí)能快多少的工具。無(wú)論是否讓SMT功能激活,Cinebench在測(cè)試三個(gè)操作系統(tǒng)的性能時(shí)僅有微不足道的差異。但是和Viewperf不同的是,三個(gè)Windows系統(tǒng)的結(jié)果在SMT開(kāi)啟的情況下得分明顯好于不開(kāi)啟的情況。也就是說(shuō),無(wú)論是哪個(gè)版本的Windows,Cinebench渲染運(yùn)行在8個(gè)線程(SMT開(kāi)啟)比4(SMT關(guān)閉)個(gè)線程性能要高20%。基準(zhǔn)測(cè)試在這兩個(gè)方面的差異,使得用戶在決定現(xiàn)有應(yīng)用是否開(kāi)啟SMT功能時(shí),最好先進(jìn)行測(cè)試后再?zèng)Q定。 功耗情況 Windows7提供了幾個(gè)技巧,讓線程運(yùn)行在相同的執(zhí)行管道里,使底層Nehalem處理器能夠關(guān)閉那些較少使用或者不工作的晶體管。該功能的主要優(yōu)點(diǎn)是減少能源消耗。為了量化這一功能的好處,測(cè)試人員運(yùn)行了帶SMT功能的4線程版本的Viewperf程序。這種配置意味著大約有一半的管道,將看不到有任何活動(dòng)。下面表格中的數(shù)據(jù),就反應(yīng)了Windows7的節(jié)能效果。 三個(gè)版本W(wǎng)indows的Viewperf基準(zhǔn)測(cè)試結(jié)果
能耗考察項(xiàng) Windows XP SP3 Vista旗艦版SP2 Windows 7旗艦版功耗(三次測(cè)試平均值) 247瓦 248瓦 207瓦
從表中看到,Windows7的優(yōu)勢(shì)確實(shí)很大,大約能節(jié)省17%的能耗。而且這種測(cè)試是運(yùn)行在同一臺(tái)工作站上,且硬件配置是完全相同的,只有Windows版本是不同的。這是一個(gè)可觀的能耗節(jié)省,并有充分理由相信其它軟件將同樣受益于Windows7的能力,及充分利用英特爾處理器的魔力。 和Intel處理器聯(lián)合起來(lái)微軟操作系統(tǒng)和英特爾處理器這些年來(lái)幾乎成為了桌面系統(tǒng)的標(biāo)配。雖然不是每一個(gè)周期的迭代產(chǎn)品都對(duì)最終用戶帶來(lái)大量的利益,但微軟和英特爾的緊密關(guān)系已被一些業(yè)內(nèi)人士稱為良性循環(huán)。而這一次,新的產(chǎn)品聯(lián)動(dòng)周期確實(shí)提供了一些關(guān)鍵的優(yōu)勢(shì):Nehalem處理器的性能遠(yuǎn)遠(yuǎn)超過(guò)前任,并且已經(jīng)在市場(chǎng)上供貨。新處理器有很多節(jié)能技術(shù),可以有效地加以利用。而在微軟這邊,Windows7適時(shí)推出,在節(jié)能方面同樣出色。
看到Win7的酷炫功能流口水,已經(jīng)忍不住想擁抱呢?別急,Win7的脾氣可不好,要想擁抱它的新功能,我們的軟件必須嫁給它——在Win7下能正常運(yùn)行。,個(gè)人開(kāi)發(fā)者開(kāi)發(fā)的中小軟件,功能相對(duì)簡(jiǎn)單,與系統(tǒng)的緊密程度普遍較低,添加一些Win7必要的正常運(yùn)行的元素就OK啦!
嫁給Win7的必要條件
我們必須要給軟件添加的是系統(tǒng)版本檢測(cè)和安裝路徑選擇元素,為什么要考慮它們呢?
必要條件1:檢測(cè)系統(tǒng)版本
軟件在運(yùn)行初期需要判斷操作系統(tǒng)的類型及版本號(hào),并根據(jù)操作系統(tǒng)類型執(zhí)行特定的代碼,相同的功能在不同操作系統(tǒng)上可能會(huì)執(zhí)行不同的代碼。大多數(shù)軟件的在Win7下無(wú)法正常運(yùn)行都是因?yàn)榕袛嗖僮飨到y(tǒng)版本失敗造成的。
當(dāng)版本檢測(cè)出錯(cuò)時(shí),很多軟件也會(huì)跟著出錯(cuò),用戶可能會(huì)發(fā)現(xiàn)雙擊軟件圖片后,什么反映都沒(méi)有,或者可能會(huì)看到一個(gè)對(duì)話框“你必須運(yùn)行在Microsoft Windows XP或更新版本,但實(shí)際上計(jì)算機(jī)已經(jīng)安裝了Win7 。
必要條件2:適應(yīng)用戶權(quán)限
Win7默認(rèn)運(yùn)行的是非管理員賬號(hào),權(quán)限相對(duì)較小。而軟件的安裝程序會(huì)往包括系統(tǒng)盤(pán)的Program Files、Windows安裝目錄、注冊(cè)表中寫(xiě)入一些數(shù)據(jù)(軟件在運(yùn)行時(shí)可能會(huì)將一些用戶數(shù)據(jù)保存到系統(tǒng)文件夾或注冊(cè)表中),如果當(dāng)前用戶的權(quán)限不夠,軟件就無(wú)法正常入駐Win7。
小知識(shí): UAC是一種降低Windows用戶默認(rèn)權(quán)限的辦法,這樣會(huì)給用戶帶來(lái)安全性的提高,它可以一定程度上遏制了一些病毒的發(fā)作——關(guān)閉殺毒軟件、啟動(dòng)復(fù)制及散播病毒進(jìn)程、注入網(wǎng)游客戶端、監(jiān)聽(tīng)鍵盤(pán)操作從而盜竊密碼。
相關(guān)文章:
1. 硬盤(pán)安裝windows 7的高級(jí)實(shí)用方法3. Windows 7系統(tǒng)中IE8瀏覽器卸載步驟4. Windows 7 更新到“7600.16399” 釋疑5. 新卡新系統(tǒng):Windows 7、Ubuntu游戲性能再對(duì)決6. 微軟官方正式宣布Windows 7、Server 2008 R2 RTM7. Windows 7 SP1泄露版或含惡意軟件8. Windows 7 Beta泄漏版被曝存在嚴(yán)重安全漏洞9. Windows 7系列應(yīng)用教程:玩轉(zhuǎn)Win7之圖標(biāo)大小隨意調(diào)10. 調(diào)教Windows 7:令系統(tǒng)更新后無(wú)需再重啟
