用于嵌入式計算機性能評測技術(shù)及其方法研究
CPU2000是SPEC中測量CPU功能的最新版性能基準(zhǔn)程序組,目的是為不同計算機系統(tǒng)計算密集型的工作負(fù)載提供性能*估的測量工具, SPEC CPU 2000包含2組性能基準(zhǔn)程序:CINT2000測量比較計算密集型定點運算,CFP2000測量比較計算密集型浮點運算。最新版本為CPU2000 V1.3。CPU2000為被測系統(tǒng)提供性能參數(shù),主要測量系統(tǒng)的處理器、內(nèi)存以及編譯器性能。
5.1.2 TPC
TPC(Transaction PROCESSing Council)成立于1988年,已有40多個成員,TPC系列基準(zhǔn)是現(xiàn)在流行的商業(yè)基準(zhǔn)組,主要服務(wù)器和數(shù)據(jù)庫企業(yè)都派代表加入了這一組織,用于*測計算機的事務(wù)處理、數(shù)據(jù)庫處理、企業(yè)管理與決策支持等方面的性能。TPC不給出基準(zhǔn)程序的代碼,而只給出基準(zhǔn)程序的標(biāo)準(zhǔn)規(guī)范(Standard Specification)。任何廠家或其他測試者都可以根據(jù)規(guī)范,最優(yōu)地構(gòu)造出自己的系統(tǒng)(測試平臺和測試程序)。19*以來相繼發(fā)表的TPC基準(zhǔn)測試程序包括TPC-A,TPC-B,TPC-C,TPC-D,TPC-W,TPC-R和TPC-H等。其中TPC-A用于在線事務(wù)處理下更新密集的數(shù)據(jù)庫環(huán)境下的性能測試,TPC-B用于數(shù)據(jù)庫系統(tǒng)及運行它的操作系統(tǒng)的核心性能測試,TPC-C則用于在線事務(wù)處理測試。有2種*價指標(biāo):吞吐率 (Throughput,tpmC)、性價比(Price/Perform-ance,Price/tpmC)。tpmC定義:TPC-C的吞吐量,按有效TPC-C配置期間每分鐘處理的平均交易次數(shù)測量,至少要運行12 min。TPC-D用于決策支持系統(tǒng)測試,TPC-H是基于TPC-D基礎(chǔ)上決策支持基準(zhǔn)測試,TPC-W是用于電子商務(wù)應(yīng)用軟件測試。
5.1.3 Whetstone
它是用FORTRAN語言編寫的綜合性測試程序,主要包括浮點運算、整數(shù)算術(shù)運算、功能調(diào)用、數(shù)組變址、條件轉(zhuǎn)移、超越函數(shù),測試結(jié)果用單位 Kwips表示,1Kwips表示機器每秒鐘能執(zhí)行1 000條Whetstone指令。在實時性能基準(zhǔn)程序Hartstone中被調(diào)用。
5.1.4 Lmbench
Lmbench性能基準(zhǔn)程序通過運行大量的程序,測試大多數(shù)公認(rèn)的有可能成為性能瓶頸的重要參數(shù),這些參數(shù)通過幾組微觀性能基準(zhǔn)程序加以識別、分辨,而且是可重現(xiàn)的。Lmbench中主要測量的參數(shù)是處理器、內(nèi)存、網(wǎng)絡(luò)、文件系統(tǒng)與硬盤之間的系統(tǒng)延時與數(shù)據(jù)通路帶寬。Lmbench僅測量處理器、內(nèi)存、網(wǎng)絡(luò)、文件系統(tǒng)與硬盤之間傳送數(shù)據(jù)的能力,清楚地描述時間延時與數(shù)據(jù)通路帶寬方面的各種參數(shù),Lmbench中的各個性能基準(zhǔn)程序組作為測量系統(tǒng)性能的補充常用于測量系統(tǒng)相應(yīng)的延時與帶寬。
5.2嵌入式系統(tǒng)設(shè)計中的實時性能測試基準(zhǔn)程序
5.2.1 Rhealstone
Rhealstone性能基準(zhǔn)程序是一組由6個C語言程序組成的程序集,通過這6個程序測量實時操作系統(tǒng)的7個微觀參數(shù):上下文切換、搶占時間、中斷延遲、信號量混洗時間、死鎖解除時間、信息傳遞延遲、數(shù)據(jù)報吞吐時間。Rhealstone性能基準(zhǔn)程序有2個缺點,一是它測量的是平均時間,而不是最壞值;二是其最后的結(jié)論是加權(quán)平均值,但沒有給出確定權(quán)值的依據(jù)。
5.2.2 EEMBC
EEMBC(Embedded MicroPROCESSor BenchmarkConsortiurn)性能基準(zhǔn)程序采用具有代表性的真實應(yīng)用中的基本算法與功能函數(shù),目的是為不同嵌入式計算機提供*價性能的參數(shù)。最新的EEMBC性能基準(zhǔn)程序涵蓋7類應(yīng)用領(lǐng)域:電信、電子產(chǎn)品、網(wǎng)絡(luò)、辦公自動化、自動化與工業(yè)控制、數(shù)字娛樂、車載系統(tǒng)與Java,后兩類是新加入的。EEMBC性能基準(zhǔn)程序?qū)儆谏逃眯阅芑鶞?zhǔn)程序,參照EEMBC的設(shè)計思路,源代碼公開的Mibench分為6類,較多的用于學(xué)術(shù)研究領(lǐng)域。
5.2.3 Hartstone
Hartstone性能基準(zhǔn)程序由美國Carnegie Mellon大學(xué)用Ada語言編寫,是依據(jù)需求構(gòu)成的一組合成應(yīng)用,選用Whetstone性能基準(zhǔn)程序作為合成工作負(fù)載,目的是測量硬實時系統(tǒng)。 Hartstone性能基準(zhǔn)程序需要不同測試序列,每個測試序列中的測試結(jié)果只有2種情況:滿足或者不滿足時間限制。若任一個程序不滿足時限,那么測試結(jié)論就是“不通過”。共有5種測試序列:任務(wù)周期有規(guī)律的周期性任務(wù)、任務(wù)周期無規(guī)律的周期性任務(wù)、任務(wù)周期有規(guī)律但非周期性處理的周期性任務(wù)、任務(wù)周期有規(guī)律有同步的周期性任務(wù)、任務(wù)周期有規(guī)律有同步但非周期性處理的周期性任務(wù)。
現(xiàn)有的性能基準(zhǔn)程序從構(gòu)建方法上來看,有的通過應(yīng)用類別選取典型應(yīng)用構(gòu)建工作負(fù)載(如SPEC,EEMBC,Mibench),這類性能基準(zhǔn)程序可進(jìn)行功能測試,也可根據(jù)系統(tǒng)表現(xiàn)計算系統(tǒng)的性能,該類性能基準(zhǔn)程序?qū)儆诤暧^性能基準(zhǔn)程序,隨著應(yīng)用領(lǐng)域的增多,需要不斷擴充;有的通過測量影響系統(tǒng)性能的重要參數(shù)(如Rhealstone,Lanbench等),該類性能基準(zhǔn)程序?qū)儆谖⒂^性能基準(zhǔn)程序,但是現(xiàn)階段影響系統(tǒng)性能的重要參數(shù)數(shù)量多,相互影響的程度,對系統(tǒng)性能影響的程度,很難給出量化的指標(biāo),所以該類性能基準(zhǔn)程序很難對測量結(jié)果給出合理的解釋;有的針對典型應(yīng)用,不僅選用典型的工作負(fù)載還是用根據(jù)程序被調(diào)用的頻度,模擬真實的工作負(fù)載,(如TPC,Hartstone等),該類性能基準(zhǔn)程序能夠從宏觀上觀察系統(tǒng)在模擬工作負(fù)載下的表現(xiàn),具有較高的實用價值,構(gòu)建該類性能基準(zhǔn)程序的難點在于如何真實地反應(yīng)系統(tǒng)的實際工作負(fù)載。
5.3嵌入式系統(tǒng)的系統(tǒng)級高層次設(shè)計測試基準(zhǔn)程序
隨著電子系統(tǒng)設(shè)計的自動化程度提高,應(yīng)對嵌入式系統(tǒng)設(shè)計復(fù)雜性增加,并加快系統(tǒng)設(shè)計的速度,采用一系列的設(shè)計技術(shù),如基于IP復(fù)用的設(shè)計技術(shù)、軟硬件協(xié)同設(shè)計技術(shù)、高層次的系統(tǒng)級建模與設(shè)計技術(shù)等。隨著嵌入式計算機的設(shè)計進(jìn)入到SoC的設(shè)計時代,將一個嵌入式系統(tǒng)的軟件、硬件子系統(tǒng)在系統(tǒng)級的體系結(jié)構(gòu)優(yōu)化、劃分后,使用硬件描述語言和軟件開發(fā)語言分別設(shè)計出嵌入式系統(tǒng)的硬件組成部分和軟件組成部分。嵌入式計算機設(shè)計到了SoC設(shè)計時,同時意味著嵌入式計算機的設(shè)計進(jìn)入到了系統(tǒng)級的設(shè)計時代。對于SoC這種系統(tǒng)級的嵌入式系統(tǒng)設(shè)計,涉及到系統(tǒng)軟/硬件結(jié)構(gòu)組成結(jié)構(gòu)的優(yōu)化、系統(tǒng)在總體設(shè)計體系結(jié)構(gòu)上的優(yōu)化,在不同設(shè)計目標(biāo)(成本、面積、功耗、性能等)方面的總體折中平衡。在系統(tǒng)級設(shè)計的早期階段,也出現(xiàn)了一些相應(yīng)的測試基準(zhǔn)程序,以輔助系統(tǒng)設(shè)計在系統(tǒng)級能確定出一個相對較優(yōu)的系統(tǒng)結(jié)構(gòu)。
E3S就是Princeton大學(xué)的CAD研究項目中用于進(jìn)行嵌入式系統(tǒng)級設(shè)計過程中,進(jìn)行系統(tǒng)級綜合(System Level Synthesis)的設(shè)計測試基準(zhǔn)程序。E3S,依據(jù)嵌入式微處理器測試基準(zhǔn)(Embedded MicroPROCESSor Benchmark Consortium,EEMBC)中對嵌入式微處理器和用來測試的計算任務(wù)信息的測試基準(zhǔn)程序而設(shè)計的用于系統(tǒng)級綜合設(shè)計測試基準(zhǔn)。它主要用于在嵌入式計算機系統(tǒng)的系統(tǒng)級設(shè)計中,對系統(tǒng)級綜合設(shè)計所涉及到的3個過程:系統(tǒng)級任務(wù)的分配(Allocation)、指派(Assignment)、調(diào)度 (Scheduling),提供測試的基準(zhǔn)。目前的最新版本是V0.9版,可以對17種微處理器,像AMD ElanSC520,Analog Devices 21065L,Motorola MPC555,TI TMS320C6203等進(jìn)行測試。測試的數(shù)據(jù),像處理器的性能以47個典型計算任務(wù)的執(zhí)行時間度量,功耗數(shù)據(jù)則參照處理器的設(shè)計文檔 (Datasheets),另外,提供給系統(tǒng)級綜合工具的附加測試信息,如硅片尺寸以及其他用于系統(tǒng)級綜合*估(Estimated)的數(shù)據(jù)和價格 (Prices),則通過咨詢多個處理器提供商取得。另外,E3S包含著相應(yīng)的系統(tǒng)級通信模型,用于系統(tǒng)級設(shè)計過程中的測試基準(zhǔn)程序?qū)Χ喾N不同總線,如 CAN,IEEE1394,PCI,USB 2.0,VME等進(jìn)行建模和*測。
6結(jié) 語
隨著嵌入式計算機設(shè)計技術(shù)的發(fā)展,可復(fù)用IP核與基于平臺的設(shè)計技術(shù)應(yīng)用于當(dāng)今的嵌入式計算機設(shè)計中,需要在早期的設(shè)計階段就要對嵌入式計算機的硬件子系統(tǒng)、軟件子系統(tǒng)與軟硬件集成后的系統(tǒng)原型進(jìn)行早期的性能*價,目前在國外,已經(jīng)應(yīng)用于早期設(shè)計階段的系統(tǒng)級性能*測技術(shù)與方法出現(xiàn)。測試的技術(shù)與設(shè)計技術(shù)的成熟度同比發(fā)展,隨著設(shè)計技術(shù)的發(fā)展,相應(yīng)的測試技術(shù)也需要有相應(yīng)成熟的測試?yán)獭⑻囟☉?yīng)用領(lǐng)域的測試基準(zhǔn)程序來作測試*測的標(biāo)準(zhǔn)。可以預(yù)見,在未來幾年里,測試基準(zhǔn)程序和針對嵌入式計算機設(shè)計的性能測試基準(zhǔn)程序,將會在系統(tǒng)設(shè)計過程中的更早階段――系統(tǒng)級構(gòu)架優(yōu)化與性能測度方面,取得很大的發(fā)展。
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
評論