SPECCPU2006 Spec2006 使用說明

工具介紹

SPEC CPU 2006 benchmark是SPEC新一代的行業標準化的CPU測試基準套件。重點測試系統的處理器,內存子系統和編譯器。這個基準測試套件包括的SPECint基準和SPECfp基準。 其中SPECint2006基準包含12個不同的基準測試和SPECfp2006年基準包含19個不同的基準測試。SPEC設計了這個套件提供了一個比較標準的計算密集型,高性能的跨硬件的CPU測試工具。在SPEC CPU 2006基準有幾種不同的方法來衡量計算機性能。 一種方式是測量計算機完成單一任務的速度; 另一種方式吞吐量,容量或速率的測量。 說明:由於spec2006支持多種類型操作系統。以下安裝、測試、移植等介紹均基於Unix 和其他的 Unix-like system如linux。Windows系統不在此範圍內。

spec2006與spec2000的對比簡要說明

2006年8月24日,標準性能評估公司(SPEC)宣佈CPU2006將取代CPU2000。 Spec cpu基準測試被廣泛的應用於工業界和學術界。新套件比cpu2000要大很多,而且將涵蓋到CPU、存儲器系統、編譯器特別是C++編譯器。Cpu2000只有1個關於C++的基準測試,CPU2006則含有7個相關套件,這其中包括了50W行c++代碼,Fortran和C語言和之前一樣有很好的覆蓋。

Spec2000和spec20006具體的套件信息如下:

Spec int2000 12個整點測試項目

164.gzip C語言編寫,很流行的數據壓縮程序。使用Lempel-Ziv coding(LZ77)作爲壓縮算法。SPEC中的gzip除了讀入集外沒有其他文件I/O操作,所有壓縮和解壓都在主存中進行,方便測試CPU和存儲子系統。

175.vpr C語言編寫,FPGA中的電路定位和路由程序,用於計算機輔助電路設計領域。

176.gcc: C語言編寫,C語言優化編譯器。該GCC基於GCC 2.7.2.2版本,爲摩托羅拉88100處理器生成機器碼。

181.mcf: C語言編寫,組合優化/單點輪換調度(Single-depot vehicle scheduling),派生自使用單站輪換調度的公共物流應用程序。

186.crafty: C語言編寫,國際象棋遊戲程序。這是一個在64位機上設計的高性能計算機國際象棋程序,在32位機上可以使用long long來表示該數據類型。主要是一個整點程序,大量的邏輯運算。通過配置,能生成不同的搜索集,可以對處理器的整點運算,轉移預測和流水線等做測試。

197.parser: C語言編寫,字處理程序。連接語法分析器(Link Grammar Parser)是一個基於連接語法的英語句法分析器。連接語法時英語語法的較早理論。給定一個句子,系統能給它賦予一個詞法結構,這個結構是兩個詞之間被標記的連接。該分析器有大約60000個詞表的字典。

252.eon: C++語言編寫,計算機可視化。eon是一個基於概率的射線跟蹤程序,基於Kajiya 1986 ACM SIGGRAPH會議的論文。它將一定數量的3D射線發射到一個3D多面體中,計算射線和多邊形的交點,並通過計算入射光和交點生成新射線。最終的計算結果時一個能在照相機內看到的圖片。程序中的計算需求和基本計算機圖形學中介紹的傳統確定性射線跟蹤程序很相似,但是它有較少的存儲一致性需求,因爲很多在同一個位置生成的隨機射線橫切3D空間中完全不同的區域.輸入:eon渲染一個150×150像素的一把椅子在房間前腳的圖片。

253.perlbmk: C語言編寫,Perl語言解釋器。這是一個Perl v5.005_03版本的刪減版,刪除了很多操作系統相關的特性,並增加了一些第三方的模塊,包括MD5 v1.7, MHonArc v2.3.3, IO-stringy v1.205,MailTools v1.11,TimeData v1.08。輸入:由四個perl腳本組成,一個email-to-HTML 轉換器,佔用時間最長;一個spec CPU2000用來對比較輸出的diff腳本,一個通過迭代算法尋找合格數字的腳本,一個用於測試僞隨機數按照預定順序生成的腳本。輸出分別對應各個輸入。

254.gap: C語言編寫,羣論,解釋器中常用。它實現一個語言和庫用於做羣論計算。GAP是(Groups,Algorithms和Programming的縮寫)。

255.vortex: C語言編寫,單用戶面向對象數據庫中事務處理的benchmark。SPEC中的vortex來自完整面向對象數據庫程序VORTEx的一個子集。輸入和輸入數據庫的事務都會被轉換成一個方案。

256.bzip2: C語言編寫,壓縮程序。基於Julian Seward的bzip2 v0.1,唯一的不同是SPEC中的bzip2除了輸入外,無文件I/O。所有的壓縮和解壓都在內存中進行。輸入,輸出都和gzip的相似。

300.twolf: C語言實現,定位和路由模擬。twolf來自TimberWolfSC定位和全局路由,它被用於創建微處理器產品印刷電路佈局的流程中,確定晶體管的位置和組內的全局連接。定位問題是一個排列,窮舉法耗時太長,TimberWolfSC程序則使用模擬退火作爲啓發來找到較優解。

Spec int2006 12個整點測試項目

400.perlbench:C語言編寫,同spec2000的253.perlbmk類似,是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。400.perlbench採用3個腳本進行增加負載或工作。1.主要的負載在於打開 垃圾郵件過濾軟件SpamAssassin。採取的過濾方式是採用記分制,也就是說會根據我們所設定的標準來給予分數超過標準值的時候即判定爲 SPAM(垃圾郵件),其餘爲非垃圾郵件。但對SpamAssassin軟件做了很大程度的修改,避免一些I/0操作,並且沒有使用貝葉斯過濾。2.是比較流行的email到HTML的轉換器MHonArc 3.使用了spec2006的工具套件specdiff。

401.bzip2: C語言實現,同spec2000的256.bzip2類似,基於Julian Seward的bzip2 v1.03.唯一的不同是SPEC中的bzip2除了輸入外,無文件I/O。所有的壓縮和解壓都在內存中進行。輸入,輸出都和gzip的相似。負載包括六個部分:兩個小的JPEG圖片、一個程序、一個tar包起的幾個源程序文件、一個HTML文件、混合文件,包括壓縮起來的高可壓縮文件及不怎麼可壓縮的文件。測試分別使用了三個不同的壓縮等級進行壓縮和解壓縮

403.gcc:C語言實現,同spec2000的176.gcc類似。該測試是基於gcc V3.2,爲AMDCPU生成機器碼。相比spec2000的176.gcc,該測試有更多的輸入文件,因此測試壓力會更大,負載來源於對9組C代碼進行編譯。

429.mcf:C語言實現,同時需要libm庫支持,同spec2000的181.mcf類似,MCF是一個用於大型公共交通中的單站車輛調度的程序。但對輸入文件做了一定的修改,由32位變成64位,用以兼容64位系統。並且增加了cache命中和程序的性能。相比spec2000的181.mcf來說,佔用的內存由之前的100M-190M變爲860M-1700M。

445.gobmk:C語言實現,同spec2000的186.crafty類似。不同的是這裏是實現的圍棋遊戲。相比spec2000程序更復雜。

456.hmmer:C語言實現。HMMER是基於隱馬爾可夫模型(profile HMMs),用於生物序列分析工作。同Timed HMMer Search 類似。

458.sjeng:C語言實現。基於一種象棋遊戲Sjeng11.2,屬於人工智能的範疇。

462.libquantum:C語言實現(C99)。libquantum是模擬量子計算機的庫文件,用來進行量子計算機應用的研究。

464.h264ref:C語言實現。一種視頻壓縮程序,基於H264AVC 9.3版,去除了I/O和平臺相關的東西。

471.omnetpp:C++語言實現。OMNeT++,離散事件仿真。包括約8000臺計算機和900個交換機/集線器,以及混合了各種從10Mb到1000Mb速率的大型CSMA/CD協議以太網絡模擬。

473 astar:C++語言實現,實現了2D尋路算法A*的三種不同版本。

  1. xalancbmk:C++語言實現,包含Xalan-C++ v1.8 mod、Xerces-C++ v2.5.0,實現了XML文檔/XSL表到HTML文檔的轉換。

Spec fp2000 13個浮點測試項目

168 wupwise:Fortran 77語言實現,格點規範理論與威爾遜數值模擬對費米子格是夸克傳播子的計算。輸入文件wupwise.in包含幾個創建該問題的參數,SEED:提供一個隨機數 NITER:迭代次數KAPPA:參數表徵矩陣M = I - KAPPA * D。輸出文件wupwise.out,包含每次NITER迭代的校驗值(EPS)和包含最終的EPSILON特徵的結果。

171 swim:Fortran 77語言實現,氣象學中的淺水模型。

172.mgrid :Fortran 77語言實現,多重網格求解器:3D勢場

173.applu: Fortran 77語言實現,拋物線/橢圓型偏微分方程

177.mesa:C語言實現 ,3D圖形庫。

178.galgel :Fortran 90語言實現,計算流體動力學

179.art :C,圖像識別/神經網絡

183.equake:C語言實現, 地震波傳播模擬

187.facerec: Fortran 90語言實現,圖像處理:人臉識別

189.lucas :Fortran 90語言實現,數論/素性測試

191.fma3d :Fortran 90語言實現,有限元模擬碰撞

200.sixtrack :Fortran 77語言實現,高能核物理加速器設計

301.apsi: Fortran 77語言實現,氣象學中污染物分佈

Spec fp2006 17個浮點測試項目

410.bwaves:Fortran 77語言實現,流體力學範疇。對三維瞬跨音速粘性流中衝擊波的模擬計算

416.gamess:Fortran語言實現,量子化學範疇。採用GMAESS組件,包含 胞嘧啶分子、水和Cu2+離子、三唑離子等3種SCF自洽場計算。

433.milc:C語言實現,量子力學範疇,採用MILC組件,包含用來研究QCD量子色動力學、夸克及膠子的四維SU(3)格點規範理論的模。

434.zeusmp :Fortran 77/REAL*8語言實現,屬於計算流體力學範疇,ZEUS-MP程序,用來計算理想、非相對論條件下的流體力學和磁流體力學,434.zeusmp模擬計算了一個統一磁場中的3D衝擊波。

435.gromacs :C & Fortran語言實現,屬於生物化學/分子力學範疇。GROMACS是一個分子力學計算套件,然而也可以用於非生物系統,435.gromacs模擬了在一個水和離子溶液中的蛋白質溶菌酶結構在各種實驗手段如核磁共振的X光照射下的變化。

436.cactusADM:Fortran 90, ANSI C語言實現,物理中的廣義相對論。來源於Cactus  BenchADM。436.cactusADM對時空曲率由內部物質決定的愛因斯坦演化方程進行求解,愛因斯坦演化方程由10個標準ADM 3+1分解的二階非線性偏微分方程組成。

437.leslie3d :Fortran 90語言實現,屬於流體力學範疇。 LESlie3d是用來計算湍流的計算流體力學程序,437.leslie3d計算了一個如燃油注入燃燒室的時間分層混合流體。

444.namd:C++語言實現。屬於生物/分子學範疇。NAMD是一個大型生物分子系統並行計算程序,444.namd模擬了了92224個原子組成的A-I載脂蛋白

447.dealII:C++語言實現。進行有限元分析,w/Boost lib 、deal.II lib、deal.II是定位於自適應有限元及誤差估計的C++庫,447.dealII對非常係數的亥姆霍茲方程進行求解,它使用了基於二元加權誤差估計生成最佳網格的自適應方法,該方程在3維得解。

450.soplex:C++語言實現。採用Plex v1.2.1程序,Plex使用單純形算法解線性方程

453.povray:ISO C++ 語言實現。 POV-Ray POV-Ray是一個光線追蹤渲染軟件,453.povray渲染一幅1280x1024的反鋸齒國際象棋棋盤圖像

454.calculix:Fortran 90 & C語言實現,結構力學範疇。CalculiX是一個用於線性及非線性三位結構力學的有限元分析軟件,454.calculix計算了一個高速旋轉的壓縮盤片在離心力的作用下的應力和變形情況

459.GemsFDTD:Fortran 90語言實現。屬於電磁學範疇。 459.GemsFDTD使用FDTD(有限差分時域)方法求解三維時域中的麥克斯韋方程,計算了一個理想導體的雷達散射截面

465.tonto: Fortran 95實現。量子化學範疇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一種語音識別軟件。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章