SPEC CPU 2006
SPEC CPU 2006
SPEC CPU 2006是SPEC組織推出的CPU子系統評估軟體軟體。
SPEC是標準性能評估公司(Standard Performance Evaluation Corporation)的簡稱。SPEC是由計算機廠商、系統集成商、大學、研究機構、諮詢等多家公司組成的非營利性組織,這個組織的目標是建立、維護一套用於評估計算機系統的標準。
在早些年,業界使用的是其上一個版本SPEC CPU 2000。和SPEC CPU 2000一樣,SPEC CPU 2006包括了CINT2006和C FP2006兩個子項目,前者用於測量和對比整數性能,而後者則用於測量和對比浮點性能,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語言均用來編寫浮點部分。
CINT2006包括C編譯程序、量子計算機模擬、下象棋程序等,CFP2006包括有限元模型結構化網格法、分子動力學質點法、流體動力學稀疏線性代數法等。為了簡化測試結果,SPEC決定使用單一的數字來歸納所有12種整數基準程序。具體方法是將被測計算機的執行時間標準化,即將被測計算機的執行時間除一個參考處理器的執行時間,結果稱為SPECratio。SPECratio值越大,表示性能越快(因為SPECratio是執行時間的倒數)。CINT2006或CFP2006的綜合測試結果是取SPECratio的幾何平均值。
以下是SPEC CPU 2006具體的測試項目和說明
SPEC CPU 2006 v1.0.1測試項目 | |||
子項目 | 語言 | 原型/組件 | 說明 |
整數測試 | |||
400.perlbenchPERL編程語言 | ANSI C | Perl v5.8.7 SpamAssassin v2.61Digest-MD5 v2.33HTML-Parser v3.35MHonArc v2.6. 8IO-stringy v1.205MailTools v1.60TimeDate 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 | 語音識別 |