搭配官方樣機 Nehalem-EX處理器SPEC評測
我們已經知道,Nehalem-EX(至強7500以及6500系列)處理器屬于Nehalem家族中最遲出生的系列,和其他家族兄弟都不太一樣,Nehalem-EX的架構在Nehalem的基礎上進行了改進,以適應多路、多核心的環境,這個改動出現在Uncore(核外)架構上。
架構大不同
官方送來的四路Nehalem-EX評測樣機,內部被處理器和內存卡占據了大部分空間
X7560處理器,工程樣品,因此看不到處理器的參數
Nehalem-EX的架構與其家族的兄弟不太一樣
連接Nehalem-EX多個L3區塊以及外部IO的環形總線提供了一個更快的L3存取架構,并提供了更大的同步性,它的表現如何呢?在下面的SPEC CPU 2006測試中我們可以一窺端倪。
#p#
SPEC CPU 2006簡介
SPEC CPU測試是我們沿用了多年的一個大型CPU性能測試項目。SPEC是標準性能評估公司(Standard Performance Evaluation Corporation)的簡稱。SPEC是由計算機廠商、系統集成商、大學、研究機構、咨詢等多家公司組成的非營利性組織,這個組織的目標是建立、維護一套用于評估計算機系統的標準。除了SPEC CPU之外,我們也使用SPECviewperf等產品來測試工作站/圖形卡等領域的性能。
SPEC CPU 2006是SPEC組織推出的CPU子系統評估軟件***版,在早些年,我們使用的是其上一個版本SPEC CPU 2000。和SPEC CPU 2000一樣,SPEC CPU 2006包括了CINT2006和CFP2006兩個子項目,前者用于測量和對比整數性能,而后者則用于測量和對比浮點性能,SPEC CPU 2006中對SPEC CPU 2000中的一些測試進行了升級,并拋棄/加入了一些測試,因此兩個版本測試得分并沒有可比較性。
SPEC CPU測試中,測試系統的處理器、內存子系統和使用到的編譯器(SPEC CPU提供的是源代碼,并且允許測試用戶進行一定的編譯優化)都會影響最終的測試性能,而I/O(磁盤)、網絡、操作系統和圖形子系統對于SPEC CPU2006的影響非常的小。
An ounce of honest data is worth a pound of marketing hype(一盎司誠實的數據值得一磅的市場宣傳)是SPEC組織成立的座右銘,為了保持數據的公平、可信度以及有效,SPEC CPU測試使用了現實世界的應用程序,而不是用循環的算術操作來進行基準測試。SPEC CPU 2006包括了12項整數運算和17項浮點運算,除此之外,還有兩個隨機數產生測試程序998.sperand(整數)和999.specrand(浮點),它們雖然也包含在套件中并得到運行,但是它們并不進行計時以獲得得分。這兩個測試主要是用來驗證一些其他組件中會用到的PRNG隨機數生成功能的正確性。各個測試組件基本上由C和Fortran語言編寫,有7個測試項目使用了C++語言,而Fortran語言均用來編寫浮點部分。
SPEC CPU 2006 v1.0.1測試項目
|
|||
---|---|---|---|
子項目
|
語言 | 原型/組件 | 說明 |
整數測試
|
|||
400.perlbench
PERL編程語言 |
ANSI C | Perl v5.8.7 SpamAssassin v2.61 Digest-MD5 v2.33 HTML-Parser v3.35 MHonArc v2.6. 8 IO-stringy v1.205 MailTools v1.60 TimeDate v1.16 |
負載由三個script組成: 主負載是垃圾郵件檢測軟件SpamAssassin 一個是email到HTML的轉換器MHonArc ***一個是specdiff |
401.bzip2
壓縮 |
ANSI C | bzip2 v1.0.3 | 負載包括六個部分: 兩個小的JPEG圖片 一個程序 一個tar包起的幾個源程序文件 一個HTML文件 混合文件,包括壓縮起來的高可壓縮文件及不怎么可壓縮的文件 測試分別使用了三個不同的壓縮等級進行壓縮和解壓縮 |
403.gcc
C編譯器 |
C | gcc v3.2 | 對9組C代碼進行了編譯 |
429.mcf
組合優化 |
ANSI C w/libm | MCF v1.2 | MCF是一個用于大型公共交通中的單站車輛調度的程序 429.mcf運行于32/64位模型時分別需要約860/1700MB的內存 |
445.gobmk
人工智能:圍棋 |
C | 圍棋 | |
456.hmmer
基因序列搜索 |
C | 使用HMMS(Hidden Markov Models,隱馬爾科夫模型) 基因識別方法進行基因序列搜索 | |
458.sjeng
人工智能:國際象棋 |
ANSI C | Sjeng v11.2 | 國際象棋 |
462.libquantum
物理:量子計算 |
ISO/IEC 9899:1999("C99") | libquantum是模擬量子計算機的庫文件,用來進行量子計算機應用的研究 | |
464.h264ref
視頻壓縮 |
C | h264avc v9.3 | 分別使用兩種配置對兩個YUV格式源文件進行H.264編碼 |
471.omnetpp
離散事件仿真 |
C++ | OMNeT++ | 包括約8000臺計算機和900個交換機/集線器,以及混合了各種從10Mb到1000Mb速率的大型CSMA/CD協議以太網絡模擬 |
473.astar
尋路算法 |
C++ | 實現了2D尋路算法A*的三種不同版本 | |
483.xalancbmk
XML處理 |
C++ | Xalan-C++ v1.8 mod Xerces-C++ v2.5.0 |
XML文檔/XSL表到HTML文檔的轉換 |
浮點測試
|
|||
410.bwaves
流體力學 |
Fortran 77 | 對三維瞬跨音速粘性流中沖擊波的模擬計算 | |
416.gamess
量子化學 |
Fortran | GMAESS | 三種SCF自洽場計算: 胞嘧啶分子 水和Cu2+離子 三唑離子 |
433.milc
量子力學 |
C | MILC | 四維SU(3)格點規范理論的模擬,用來研究QCD量子色動力學、夸克及膠子 |
434.zeusmp
物理:計算流體力學 |
Fortran 77/REAL*8 | ZEUS-MP | 用來計算理想、非相對論條件下的流體力學和磁流體力學,434.zeusmp模擬計算了一個統一磁場中的3D沖擊波 |
435.gromacs
生物化學/分子力學 |
C & Fortran | GROMACS | GROMACS是一個分子力學計算套件,然而也可以用于非生物系統,435.gromacs模擬了在一個水和離子溶液中的蛋白質溶菌酶結構在各種實驗手段如核磁共振的X光照射下的變化 |
436.cactusADM
物理:廣義相對論 |
Fortran 90, ANSI C | Cactus BenchADM |
436.cactusADM對時空曲率由內部物質決定的愛因斯坦演化方程進行求解,愛因斯坦演化方程由10個標準ADM 3+1分解的二階非線性偏微分方程組成 |
437.leslie3d
流體力學 |
Fortran 90 | LESlie3d | LESlie3d是用來計算湍流的計算流體力學程序,437.leslie3d計算了一個如燃油注入燃燒室這樣的時間分層的混合流體 |
444.namd
生物/分子 |
C++ | NAMD | NAMD是一個大型生物分子系統并行計算程序,444.namd模擬了了92224個原子組成的A-I載脂蛋白 |
447.dealII
有限元分析 |
C++ w/Boost lib | deal.II lib | deal.II是定位于自適應有限元及誤差估計的C++庫,447.dealII對非常系數的亥姆霍茲方程進行求解,它使用了基于二元加權誤差估計生成***網格的自適應方法,該方程在3維得解 |
450.soplex
線形編程、優化 |
ANSI C++ | SoPlex v1.2.1 | SoPlex使用單純形算法解線性方程 |
453.povray
影像光線追蹤 |
ISO C++ | POV-Ray | POV-Ray是一個光線追蹤渲染軟件,453.povray渲染一幅1280x1024的反鋸齒國際象棋棋盤圖像 |
454.calculix
結構力學 |
Fortran 90 & C w/SPOOLES code | CalculiX | CalculiX是一個用于線性及非線性三位結構力學的有限元分析軟件,454.calculix計算了一個高速旋轉的壓縮盤片在離心力的作用下的應力和變形情況 |
459.GemsFDTD
計算電磁學 |
Fortran 90 | GmesTD from GEMS | 459.GemsFDTD使用FDTD(有限差分時域)方法求解三維時域中的麥克斯韋方程,計算了一個理想導體的雷達散射截面 |
465.tonto
量子化學 |
Fortran 95 | Tonto | Tonto是一個面向對象的量子化學程序包,465.tonto計算面向量子晶體學,它基于一個符合X光衍射實驗數據的、約束的分子Hartree-Fock波函數 |
470.lbm
流體動力學 |
ANSI C | 470.lbm使用LBM(格子波爾茲曼方法)模擬非壓縮流體,它模擬了兩種情況:類似活塞推動的剪切驅動流體和管道流體,測試包含了3000個步驟 | |
481.wrf
天氣預報 |
Fortran 90 & C | WRF v2.0.2 | 481.wrf基于WRF(Weather Research and Forecastin)模型,對NCAR的數據進行了計算,數據包括了UTC 2001.06.11到UTC 2001.06.12以三小時為間隔的數據 |
482.sphinx3
語音識別 |
C | Sphinx-3 | 語音識別 |
可以看出,SPEC CPU 2006的測試項目都有著其原來的應用程序版本,整個SPEC CPU 2006測試就包括了多種實際的應用程序的運行性能測試。當然,SPEC CPU是一個測試CPU子系統的程序,因此一些需要讀寫磁盤的操作部分都已經被修改,使得外部存儲子系統和網絡系統對測試結果不造成影響,當然,對內存是非常有需求的。在4路32核心64線程的Nehalem-EX測試樣機上,需要128GB的內存。樣機配置了256GB內存,因此這個不是問題。
#p#
測試環境與測試平臺
SPEC CPU 2006是一個單機測試,因此不需要網絡環境。
測試使用的是同一編譯好的可執行文件,編譯環境為Visual Studio 2008、Intel Compiler 11.0.034,SPEC CPU 2006版本為1.1。
Nehalem-EX X7560
使用的256GB內存,分成了8個內存子卡
Dunnington X7460
Nehalem-EP X5570
Westmere-EP X5670
Westmere-EP X5680
#p#
單實例測試
一套完整的測試***會給出8個數字:整數/浮點 x 單實例/多實例 x 常規/峰值。個單實例測試每個測試項目同時只運行一個實例,這個實例是一個單線程的進程,它可以比較出在單線程/單核心狀態下的CPU性能差別。
SPEC CPU 2006整數運算主要包含編譯、壓縮、人工智能、視頻壓縮轉換、XML處理等,此外,各種日常操作也主要是基于整數操作。SPEC CPU 2006的整數運算包含了400.perlbench PERL編程語言、401.bzip2 壓縮、403.gcc C編譯器、429.mcf 組合優化、445.gobmk 人工智能:圍棋、456.hmmer 基因序列搜索、458.sjeng 人工智能:國際象棋、462.libquantum 物理:量子計算、464.h264ref 視頻壓縮、471.omnetpp 離散事件仿真、473.astar 尋路算法、483.xalancbmk XML處理共12項。
SPEC CPU 2006整數性能
SPEC CPU 2006的浮點運算測試包括的全部都是科學運算,科學運算需要用到大量的高精度浮點數據,如410.bwaves 流體力學、416.gamess 量子化學、433.milc 量子力學、434.zeusmp 物理:計算流體力學、435.gromacs 生物化學/分子力學、436.cactusADM 物理:廣義相對論、437.leslie3d 流體力學、444.namd 生物/分子、447.dealII 有限元分析、450.soplex 線形編程、優化、453.povray 影像光線追蹤、454.calculix 結構力學、459.GemsFDTD 計算電磁學、465.tonto 量子化學、470.lbm 流體力學、481.wrf 天氣預報、482.sphinx3 語音識別共17項測試。
SPEC CPU 2006浮點性能
很遺憾我們沒有測試Dunnington的base成績。可以發現,在單核心性能上,Nehalem-EX并沒有展現出對二路專用處理器的優勢,其中處理器的主頻占了一個較大的因素,Nehalem-EX Xeon X7560的基本主頻只有2.27GHz,這是一個新產品的初代為了穩定性而做出的折衷,到下一代的Westmere-EX主頻將會更高。順便提一下,Nehalem-EX有頻率更高的型號,不過核心數量要降低到6個。
在測試當中有兩個奇異項目:462.libquantum(量子計算)和436.cactusADM(廣義相對論),這些項目都是內存延遲/帶寬敏感類型,而不是計算密集類型,因此具有獨特L3架構的Nehalem-EX表現良好。有兩個因素降低了Nehalem-EX具備多個內存通道帶來的高帶寬優勢:延遲和較低的內存頻率。
#p#
多實例模式測試
多實例模式測試的是整個系統的計算吞吐量,它同時運行了和CPU數量對應的測試進程,它可以展示系統不最求單個任務的速度而是追求進行大量任務處理時的速度。
SPEC CPU 2006整數運算主要包含編譯、壓縮、人工智能、視頻壓縮轉換、XML處理等,此外,各種日常操作也主要是基于整數操作。SPEC CPU 2006的整數運算包含了400.perlbench PERL編程語言、401.bzip2 壓縮、403.gcc C編譯器、429.mcf 組合優化、445.gobmk 人工智能:圍棋、456.hmmer 基因序列搜索、458.sjeng 人工智能:國際象棋、462.libquantum 物理:量子計算、464.h264ref 視頻壓縮、471.omnetpp 離散事件仿真、473.astar 尋路算法、483.xalancbmk XML處理共12項。
SPEC CPU 2006整數性能
SPEC CPU 2006的浮點運算測試包括的全部都是科學運算,科學運算需要用到大量的高精度浮點數據,如410.bwaves 流體力學、416.gamess 量子化學、433.milc 量子力學、434.zeusmp 物理:計算流體力學、435.gromacs 生物化學/分子力學、436.cactusADM 物理:廣義相對論、437.leslie3d 流體力學、444.namd 生物/分子、447.dealII 有限元分析、450.soplex 線形編程、優化、453.povray 影像光線追蹤、454.calculix 結構力學、459.GemsFDTD 計算電磁學、465.tonto 量子化學、470.lbm 流體力學、481.wrf 天氣預報、482.sphinx3 語音識別共17項測試。
SPEC CPU 2006浮點性能
可以看到,整數性能上,四路Nehalem-EX提供了雙路系統難以到達的吞吐量,比頻率高出近一半的Westmere-EP要高83.2%,比起上一代的四路來更是提升了241.9%,也就是接近三倍半的性能比。浮點性能上則分別是高90.5%和241.1%。在多路系統上,Nehalem-EX確實是一個非常特出的產品。
#p#
評測中心觀點
Nehalem-EX對比上一代的多路處理器Dunnington重演了Nehalem-EP對上一代二路Penryn的性能進步,甚至幅度還要更高些,因為QPI快速并行互聯和IMC集成內存控制器的直連架構在處理器數量越多的情況下越能發揮力量。
45nm八核心:Nehalem-EX晶圓圖
多實例測試展現了整個系統的處理速度,結果是比上一代Dunnington X7460提高了241%,對比頻率要高出接近一半的***端雙路Westmere-EP X5680要提高83.2%(整數)、90.5%(浮點),大致上,用頻率乘以線程數量作為粗略的理論性能的話,可以發現實際性能提升的幅度要比理論計算性能要高一些,考慮到系統處理器數量增多而效率會緩慢越低的事實因素,Nehalem-EX架構上的改進確實效果不錯。
【編輯推薦】