就在前兩個月22日微軟發布Windows 7 Service Pack 1引起PC Folks熱烈討論,除了一般「按照慣例」會有的安全性更新,針對硬體所增加的更新項目,我挑了以下幾個重點跟大家分享:(參考微軟官方網站)
⊙ 支援最新處理器AVX指令集。
⊙ 改進現代硬碟先進格式化(Advanced Format)的支援度。
⊙ 針對HDMI進行Debug修正(官方的用詞是「Improved」)。
什麼是AVX?AVX是Advanced Vector Extensions的縮寫,中文譯作「先進向量擴充指令集」。Intel首度在代號「Sansy Bridge(以下簡稱為SNB)」系列處理器中支援AVX指令集,對密集浮點運算的趨勢有推波助瀾之效,並協助擴展到各種一般用途,包括影像、視訊、音效處理、以及各種工程應用,包括 3D 模型建構與分析、科學模擬、和金融分析等。
今天就來看看更新SP1前後,對於SNB的浮點預算效能有沒有顯著的提升。理論上SIMD頻寬由128位元變成256位元,應該速度可以快上兩倍,但是這只是「理論上」而已。
產品外觀
▲咦?CPU勒?嘿嘿!歹勢啦!老闆沒問過我就把CPU拆了裝上主機板試機去了,我回頭來才發現,又加上沒帶散熱膏所以沒辦法拆散熱器拍照重抹一次,只好就這樣給他放著囉。
測試環境:
⊙ CPU:INTEL Core i5-2400/HD2000
⊙ RAM:Kingston DDR3-1333 4GB*4 Dual-Channel (Hynix)
⊙ M/B:GIGABYTE H67MA-UD2H (B3)
⊙ HDD:WD SATA3 AAKX 500GB
⊙ OS:Windows 7 Ultimate X64
要測試AVX當然不能單單只是軟體或系統單方面的支援,就像一個武士除了膽識過人的勇氣還必須配上國色天香的美人‧‧‧‧‧‧咳咳!講錯了,是削鐵如泥的寶劍。過去經常用來監看系統狀態、系統訊息或是系統測試的EVEREST,現在已經變身成為AIDA64,最近新版的1.60也加進了AVX指令集的支援,所以今天我主要就拿這個軟體來進行測試。
▲AIDA64 1.60 CPU AES Benchmark(更新SP1之前)。這個測試主要是針對AES加密效能做的測試,這套加密標準經常使用在常見的壓縮軟體,例如:7-Zip、WinRAR等等。更新前的分數為356495分。
▲AIDA64 1.60 CPU AES Benchmark(更新SP1之後)。意料中的結果,因為這項測試並不是在針對AVX指令集,更新前後的數據結果只有些許差異,分數為357865分。
▲AIDA64 1.60 CPU Queen Benchmark(更新SP1之前)。CPU Queen是測試CPU本身的分支預測能力以及預測錯誤時所造成的效能影響。分數為30269分。
▲AIDA64 1.60 CPU Queen Benchmark(更新SP1之後)。由於這項測試是針對整數運算所做的計算,對MMX、SSE2、SSSE3有較佳的優化,看來AVX在這部分沒有用處。最後的分數為30227分。
▲AIDA64 1.60 FPU Julia Benchmark(更新SP1之前)。這是透過幾何運算來評估處理器對Single Precision(32位元)的浮點運算能力。分數是10092分。
▲AIDA64 1.60 FPU Julia Benchmark(更新SP1之後)。這項測試所支援的多媒體指令集包括MMX、MMX+/SSE、SSE2與SSSE3等,最重要的一點是它還支援AVX擴展指令!果不其然,效能馬上增進了56%!分數為15751分。
▲AIDA64 1.60 FPU VP8 Benchmark(更新SP1之前)。這個項目跟最近打得火熱的瀏覽器大戰有關,主要是測試Google VP8(WebM)視頻編碼的能力。分數為3031分。
▲AIDA64 1.60 FPU VP8 Benchmark(更新SP1之後)。這項測試支援的指令集有MMX、SSE2、SSSE3等,就是不包括AVX(汗)。分數為3046分。
▲AIDA64 1.60 CPU Hash Benchmark(更新SP1之前)。CPU Hash是一種校驗演算測試,用來反映CPU在進行SHA1演算法時的效能。測試結果為1854MB/s。
▲AIDA64 1.60 CPU Hash Benchmark(更新SP1之後)。這個項目可支援的擴展指令集包括MMX、MMX+/SSE、SSE2、SSSE3以及AVX等等,因此可以看到更新SP1後,測試結果增進了5%左右為1948MB/s。
▲AIDA64 1.60 FPU Mandel Benchmark(更新SP1之前)。FPU Mandel利用Mandelbrot碎形幾何運算來測試CPU的Double Precision(64位元)運算能力。分數為5345分。
▲AIDA64 1.60 FPU Mandel Benchmark(更新SP1之後)。這個測試著重在評估處理器本身的浮點運算能力,也是影響平常使用電腦執行3D遊戲相當重要的部分。FPU Mandel是支援AVX擴展指令的,所以結果也可以看出,效能提升了63%為8734分。
▲AIDA64 1.60 FPU SinJulia Benchmark(更新SP1之前)。FPU SinJulia是透過修改過的Julia碎形計算,來評估處理器的Extended Pricision(80位元)浮點運算能力。分數落在2825分。
▲AIDA64 1.60 FPU SinJulia Benchmark(更新SP1之後)。這項測試並不支援AVX,更新前後分數沒有異動,同樣都是2825分。
▲AIDA64 1.60 CPU PhotoWorxx Benchmark(更新SP1之前)。著重在CPU整數運算的能力,對於有影片處理需求的工作者,這項測試的參考數據就很重要。分數為49528分。
▲AIDA64 1.60 CPU PhotoWorxx Benchmark(更新SP1之後)。這項測試一樣沒有支援AVX擴展指令集,更新SP1前後分數相去不多,為49230分。
▲AIDA64 1.60 CPU ZLib Benchmark(更新SP1之前)。CPU ZLib著重在測試處理器對於壓縮效能的能力,這方面並不支援AVX。分數為186.6MB/s。
▲AIDA64 1.60 CPU ZLib Benchmark(更新SP1之後)。由於不支援AVX指令集,更新SP1前後分數沒有差異,測試結果為186.7MB/s。
▲LinX 0.6.4浮點運算測試(更新SP1之前)。LinX使用的是什麼指令集這我找不到相關資料,在更新前的浮點運算大約為44.4GFlops。由於這不是超頻燒機測試穩定,所以設定只跑了5次和用少少的1024MB記憶體。
▲LinX 0.6.4浮點運算測試(更新SP1之後)。看來LinX似乎也是不支援AVX指令集?測試前後分數差不多是44.7GFlops。但是之前看過有人更新SP1後,用LinX跑浮點運算可以從40-50GFlops衝上90-100GFlops,不曉得是開了什麼外掛 XD
▲測試到了尾聲,最後久聞Sandy Bridge記憶體控制器大爆發,既然有幸借用到這個平台,當然也要來跑一下囉。這裡先簡述一下記憶體的讀寫數據,最後在結論部分會製成表格讓大家看得清楚一點,並且拿三通道I7-950來超級比一比。記憶體讀取效能為15912MB/s、寫入效能為16971MB/s、複製效能為18031MB/s,延遲時間55.2ns。
▲試播的影片雖然不是「真」藍光也不是「真」1080P,不過在未開啟硬解下使用內建顯示HD2000撥放這部影片,仍然是遊刃有餘啊!我自己使用的電腦處理器是Q8200,在沒有開啟硬解的情況下,使用9400GT看這些影片,CPU使用量大約會在18-25%之間徘徊,竟然連HD2000這樣的內顯都不如(汗顏)。
結論
常看到有人說SNB是第二代Core架構處理器,嚴格說起來我認為這樣的講法是錯誤的,其實這也是Intel自己講錯。算一算過去的幾個世代,從Yonah、Conroe、Wolfdale、Penryn等等,SNB是第四代全新Core微架構,而不是第二代。
如果細心一點應該可以發現上面有些測試圖,系統更新SP1前後的CPU時脈有些不同,這裡我想先點出來說明一下,可能是Intel處理器本身的Turbo Boost技術所造成時脈大約有100Mhz的高低不同,這個變因我當時沒有特別去注意,所以是我的疏忽,但是我想這並不會影響測試結果。
測試過程中,全程都是以I5-2400的系統預設工作時脈去運作,完全沒有更改過BIOS的選項,測試方法為跑完AIDA64各項測試項目後,再安裝SP1系統更新,再用相同的測試軟體去執行一次相同項目。
▲AIDA64 1.60各項測試匯集製表。從表中可以看到只要有支援AVX指令集的測試項目,除了CPU Hash之外都有顯著的效能提升,至於其他的項目幾乎是完全沒有變動。
▲I5-2400全以預設值與I7-950預設時脈、超頻時脈比較。
再來看到I5-2400在記憶體頻寬測試中,跟I7-950三通道記憶體的PK賽。我來解釋一下為什麼沒有I7-950用1333Mhz記憶體時脈的成績,因為當時再進行超頻前,是直接以系統預設的工作時脈來測試,之後開始進行超頻動作以後,也就很自然的跳過1333Mhz這個階段了。
儘管如此,還是可以看出一些端倪,理論上以雙通道1333Mhz的記憶體時脈來說,每秒的資料傳輸量應為21.3GB的頻寬。三通道的1066Mhz每秒資料傳輸量應為25.6GB。三通道的1600Mhz記憶體頻寬每秒資料傳輸量應為38GB。
照理來說SNB I5-2400的記憶體頻寬是最小的,但是頻寬利用率最少也比頻寬比它大的1066Mhz三通道多了44%,更別提1600Mhz的頻寬利用率更低了。所以現階段若有要購買Intel最新架構的平台,也請別忘記拋棄老舊的XP系統,且不單單是使用Windows7,還要服用最新版本Service Pack 1唷!啾咪!
不管公雞過馬路的動機是什麼,重要的是他過了馬路,目的能顯示手段的正確 - 馬基維利