國產(chǎn)龍芯處理器性能測試方法研究
出處:電子技術(shù)網(wǎng) 發(fā)布于:2014-01-16 10:17:17
摘要:本文通過分析龍芯處理器的體系架構(gòu)、指令集的特點,基于龍芯的硬件平臺和Linux操作系統(tǒng)的兼容性,提出一套全面測試龍芯處理器性能的方法,以實際測試龍芯2F處理器為例,獲得測試結(jié)果,客觀評價龍芯處理器的性能,對于軍用計算機國產(chǎn)化具有重要意義。
0 引言
隨著軍事技術(shù)的發(fā)展,武器裝備國產(chǎn)化已經(jīng)成為我國軍事現(xiàn)代化的重要進程。處理器是現(xiàn)代各種計算機設(shè)備的,武器裝備國產(chǎn)化首先是處理器的國產(chǎn)化。
目前國內(nèi)擁有自主知識產(chǎn)權(quán)的高性能處理器主要有中科院的龍芯系列處理器和國防科大的飛騰系列處理器。擁有自主知識產(chǎn)權(quán)的高性能通用處理器對于我國的國家安全和經(jīng)濟發(fā)展都具有非常重要的意義。
由于處理器之間體系結(jié)構(gòu)、指令集、流水線等方面的差異,使得對處理器性能的評判標準有所不同。因此,如何客觀評價CPU的性能指標,已成為軍用計算機領(lǐng)域中的重要課題。
龍芯處理器主要包括三個系列,分別面向不同的功能應(yīng)用。龍芯2F處理器是龍芯系列處理器中目前為成熟穩(wěn)定、應(yīng)用為廣泛的一款處理器。龍芯2F處理器是實現(xiàn)64 位MIPS-Ⅲ指令集的通用RISC 處理器,其指令流水線每個時鐘周期取四條指令進行譯碼,并且動態(tài)地發(fā)射到五個全流水的功能部件中。本文的測試方法以龍芯2F為研究對象,該方法同樣適用于龍芯系列其余型號的處理器。
1 國內(nèi)外主流性能測試方法
目前流行的CPU 性能測試方法有SuperPI、CPU-Mark、Kernbench等等,這些測試工具主要是針對處理器某一方面的特性而開發(fā)的,而且大多只能運行在Windows操作系統(tǒng)下。例如SuperPI是由東京大學開發(fā)的一款測試軟件,通過計算圓周率的位數(shù)來測試CPU的性能。
龍芯處理器是基于MIPS-Ⅲ指令集的,并在其基礎(chǔ)上增加部分龍芯特有的指令,因此具有其自身的平臺特殊性。Windows不是開源的操作系統(tǒng),其源代碼由微軟掌握,無法將其移植到龍芯的硬件平臺之上。Linux由于其開源特性,目前已經(jīng)成為龍芯硬件平臺上廣泛應(yīng)用的操作系統(tǒng),并且可以在PMON下便捷地加載運行。因此這里需要尋找可以在Linux下實現(xiàn)的、能夠客觀全面測試CPU性能的一套方法。
SPEC CPU2006 是SPEC(標準性能評測組織)開發(fā)的專門用于評價CPU 性能的一套基準程序,主要應(yīng)用于對桌面型和服務(wù)器型CPU 的性能評價,其目的是比較不同類型CPU的整點運算和浮點運算性能。SPEC是由計算機業(yè)界幾十個芯片廠商、計算機系統(tǒng)廠商、研究團體等構(gòu)成的非營利性組織,其開發(fā)的SPEC CPU2006在CPU的性能評價領(lǐng)域具有很大的權(quán)威性。
2 龍芯CPU 性能測試
SPEC CPU2006是廣泛使用的、計算密集型的基準測試程序,通過測試處理器、內(nèi)存和編譯器性能來評估處理器系統(tǒng)性能。SPEC2006覆蓋的應(yīng)用面非常廣闊,包括文件壓縮、FPGA 布局布線、編譯器、組合優(yōu)化、國際象棋、文字處理、計算機視覺、編程語言、解釋器、數(shù)據(jù)庫、布局布線模擬器、量子動力學、淺水模型、三維勢場求解、偏微分方程、三維圖形庫、計算流體動力學、圖象識別/神經(jīng)網(wǎng)絡(luò)、地震波傳播模擬、計算化學、數(shù)論/素數(shù)測試等等。龍芯處理器性能測試框圖如圖1所示。

2.1 SPEC CPU2006基準程序研究
SPEC CPU2006的測試包含兩個部分:用于測試處理器整數(shù)性能的CINT2006以及測試處理器浮點性能的CFP2006.
CINT2006包含12個測試場景,其中11個用C語言編寫,1 個用C++語言編寫,表1 詳細描述了CINT2006的整型基準程序。

CFP2006包含17個測試場景,其中4個用C++語言編寫,3個用C編寫,6個用Fortran語言編寫,4個用C和Fortran混合編寫,表2詳細描述了CFP2006浮點基準程序。通過這些場景的測試,可以全面表現(xiàn)處理器的真實計算性能。

2.2 SPEC CPU2006的配置文件的理解和更改
配置文件中包含了許多信息,比較重要的是編譯基準程序的指令,例如編譯基準程序所要用到的編譯器,編譯優(yōu)化選項等,設(shè)置如下:
?。?)runspec的運行參數(shù),例如:output_format = asc,ps,設(shè)置輸出文件的格式;tune=base,設(shè)置基本測試或是峰值測試;runlist=fp,設(shè)置運行的基準程序列表。
?。?)specmake編譯參數(shù),例如:CC=gcc,指定C編譯器;FC=gfortran,指定Fortran編譯器;OPTIMIZE=-O2,設(shè)置編譯時的優(yōu)化選項。
?。?)被測系統(tǒng)軟硬件配置描述,例如:hw_model=Loongson 2F;sw_os=Debian.
(4)MD5碼的生成。
為了保證測試結(jié)果的公正性,測試中采用了數(shù)字簽名技術(shù)。即在編譯和運行測試程序時,對測試結(jié)果進行校驗,從而保證測試結(jié)果是從各個基準程序中獲得,沒有經(jīng)過人工篡改。編譯成功后在配置文件末尾將自動生成以_MD5_開頭的一段代碼。
2.3 運行SPEC CPU2006
SPEC CPU2006主要由基準程序源文件、腳本管理程序、配置文件以及測試結(jié)果文件組成。管理程序中重要的是runspec腳本管理程序,通過它用戶可以編譯、運行和維護基準程序。運行SPEC的標準命令格式為:
runspec-c default.cfg int,其中default.cfg為配置文件,int則表示運行所有的整型基準程序,也可以指定具體某個基準程序。運行成功后,將在result目錄下生成結(jié)果和日志文件。
2.4 龍芯2F性能測試結(jié)果
SPEC CPU2006 基準測試集分為整型測試包和浮點型測試包,由三種語言編寫,因此需要GCC編譯器具有編譯C、C++和Fortran的能力。GCC早期版本只提供對C/C++的支持,4.0版本之后增加了對Fortran的支持,因此完整運行SPEC CPU2006需要GCC4.0及以上版本。
GCC中Fortran包的正確安裝需要多種插件的支持,根據(jù)操作系統(tǒng)本身的環(huán)境所需的插件不同,其中GMP和MPFR是必要的兩個插件,建議選擇版本安裝。
圖2是龍芯2F的整型性能測試結(jié)果,圖3是浮點型性能測試結(jié)果,其中Seconds欄表示運行基準程序的時間,Ratio是終的測試值,每個基準程序運行3次,取中間值。測試結(jié)果表明,龍芯2F 處理器性能大致與Intel的低端Pentium4處理器性能相當。


3 結(jié)論
文章根據(jù)龍芯處理器的體系架構(gòu)、指令集的特點,基于龍芯的硬件平臺和Linux操作系統(tǒng)的兼容性,提出一套全面測試龍芯處理器性能的方法,詳細介紹了測試流程,并生成測試結(jié)果??陀^、全面地評價國產(chǎn)龍芯處理器的性能有助于推進軍用計算機的國產(chǎn)化,對于國防建設(shè)、信息安全等方面具有重要意義。(作者:李士剛,黃威,張鵬)
版權(quán)與免責聲明
凡本網(wǎng)注明“出處:維庫電子市場網(wǎng)”的所有作品,版權(quán)均屬于維庫電子市場網(wǎng),轉(zhuǎn)載請必須注明維庫電子市場網(wǎng),http://www.hbjingang.com,違反者本網(wǎng)將追究相關(guān)法律責任。
本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點或證實其內(nèi)容的真實性,不承擔此類作品侵權(quán)行為的直接責任及連帶責任。其他媒體、網(wǎng)站或個人從本網(wǎng)轉(zhuǎn)載時,必須保留本網(wǎng)注明的作品出處,并自負版權(quán)等法律責任。
如涉及作品內(nèi)容、版權(quán)等問題,請在作品發(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。
- 汽車電子常用電子元器件選型指南2026/4/13 16:04:25
- MOSFET驅(qū)動與隔離方案設(shè)計2026/4/13 15:12:18
- 安防監(jiān)控設(shè)備連接器應(yīng)用分析2026/4/13 13:48:56
- MOSFET反向恢復特性對系統(tǒng)的影響2026/4/10 11:07:36
- 連接器耐腐蝕性能測試方法2026/4/10 10:56:32









