IA服務(wù)器測試技術(shù)的策略與方法
服務(wù)器對(duì)比測試要點(diǎn)
本節(jié)內(nèi)容主要是為了讓用戶快速了解服務(wù)器測試策略與方法,能夠用于選型測試中。在此僅僅以最重要的性能、內(nèi)存緩存性能、數(shù)據(jù)庫網(wǎng)絡(luò)應(yīng)用輔以基本對(duì)比測試來考察不同服務(wù)器間的性能。具體測試技術(shù)策略如下:
1)SPECCPU2000 v1.2
SPEC是標(biāo)準(zhǔn)性能評(píng)估公司(Standard Performance Evaluation Corporation)的簡稱。SPEC是由計(jì)算機(jī)廠商、系統(tǒng)集成商、大學(xué)、研究機(jī)構(gòu)、咨詢等多家公司組成的非營利性組織,這個(gè)組織的目標(biāo)是建立、維護(hù)一套用于評(píng)估計(jì)算機(jī)系統(tǒng)的標(biāo)準(zhǔn)。
SPEC CPU2000是SPEC組織推出的一套CPU子系統(tǒng)評(píng)估軟件,它包括CINT2000和CFP2000兩個(gè)子項(xiàng)目,前者用于測量和對(duì)比整數(shù)性能,而后者 則用于測量和對(duì)比浮點(diǎn)性能。計(jì)算系統(tǒng)中的處理器、內(nèi)存和編譯器都會(huì)影響最終的測試性能,而I/O(磁盤)、網(wǎng)絡(luò)、操作系統(tǒng)和圖形子系統(tǒng)對(duì)于SPEC CPU2000的影響非常的小。
SPECfp測試過程中同時(shí)執(zhí)行多個(gè)實(shí)例(instance),測量系統(tǒng)執(zhí)行計(jì)算密集型浮點(diǎn)操作的能力,比如CAD/CAM、DCC以及科學(xué)計(jì)算等方面應(yīng)用可以參考這個(gè)結(jié)果。SPECint測試過程中同時(shí)執(zhí)行多個(gè)實(shí)例(instances),然后測試系統(tǒng)同時(shí)執(zhí)行多個(gè)計(jì)算密集型整數(shù)操作的能力, 可以很好的反映諸如數(shù)據(jù)庫服務(wù)器、電子郵件服務(wù)器和Web服務(wù)器等基于整數(shù)應(yīng)用的多處理器系統(tǒng)的性能。
在實(shí)際測試中,被測試服務(wù)器應(yīng)安裝Intel C++ 8.1 Compiler、Intel Fortran 8.1 Compiler這兩款SPEC CPU2000必需的編譯器,另外安裝了Microsoft Visual Studio 2003.net提供必要的庫文件。按照SPEC的要求我們根據(jù)自己的情況編輯了新的Config文件,可以滿足Base測試。然后我們根據(jù)被測系統(tǒng)實(shí)際 可同時(shí)處理的線程數(shù)量,設(shè)定用戶數(shù)量,分別運(yùn)行SPEC base和SPEC rate base測試的結(jié)果(其中SPEC base代表系統(tǒng)執(zhí)行某個(gè)任務(wù)的速度,而SPEC base rate測試代表系統(tǒng)可以同時(shí)處理任務(wù)的能力)。
2)ScienceMark v2.0 Membench
ScienceMark v2.0是一款用于測試系統(tǒng)特別是處理器在科學(xué)計(jì)算應(yīng)用中的性能的軟件,MemBenchmark是其中針對(duì)處理器緩存、系統(tǒng)內(nèi)存而設(shè)計(jì)的功能模塊,它可以測試系統(tǒng)內(nèi)存帶寬、L1 Cache延遲、L2 Cache延遲和系統(tǒng)內(nèi)存延遲,另外還可以測試不同指令集的性能差異。
3)SiSoftware.Sandra.SP1 v2007
SiSoftware Sandra是一款可運(yùn)行在32bit和64bit Windows操作系統(tǒng)上的分析軟件,這款軟件可以對(duì)于系統(tǒng)進(jìn)行方便、快捷的基準(zhǔn)測試,還可以用于查看系統(tǒng)的軟件、硬件等信息。目前新版本新增了4項(xiàng)基準(zhǔn)測試,包括Power Management Efficiency、Memory Latency、Physical Disks和CD-ROM and DVD這四個(gè)項(xiàng)目。另外,它還對(duì)于原有的幾個(gè)基準(zhǔn)測試模塊進(jìn)行升級(jí),比如在Arithmetic benchmarks中增加了對(duì)SSE3 & SSE4 SSE4的支持,在Multi-Media benchmark中增加了對(duì)于SSE4的支持,另外還升級(jí)了File System benchmark和Removable Storage benchmark兩個(gè)子項(xiàng)目。對(duì)于新的硬件的支持當(dāng)然也是該軟件每次升級(jí)的重要內(nèi)容之一。SiSoftware Sandra所有的基準(zhǔn)測試都針對(duì)SMP和SMT進(jìn)行了優(yōu)化,最高可支持32/64路平臺(tái)。
4)IOMeter 2004.7.30
IOMeter是一款功能非常強(qiáng)大的IO測試軟件,它除了可以在本機(jī)運(yùn)行測試本機(jī)的IO(磁盤)性能之外,還提供了模擬網(wǎng)絡(luò)應(yīng)用的能力。在這次的測試中,我們僅僅讓它在本機(jī)運(yùn)行測試服務(wù)器的磁盤性能。為了全面測試被測服務(wù)器的IO性能,分別選擇了不同的測試腳本。
· Max_throughput(read):文件尺寸為64KB,100%讀取操作,隨機(jī)率為0%,用于檢測磁盤系統(tǒng)的最大讀取吞吐量
· Max_IO(read):文件尺寸為512B,100%讀取操作,隨機(jī)率為0%,用于檢測磁盤系統(tǒng)的最大讀取操作IO處理能力
· Max_throughput(write):文件尺寸為64KB,0%讀取操作,隨機(jī)率為0%,用于檢測磁盤系統(tǒng)的最大寫入吞吐量
· Max_IO(write):文件尺寸為512B,0%讀取操作,隨機(jī)率為0%,用于檢測磁盤系統(tǒng)的最大寫入操作IO處理能力
5)WebBench v5.0
WebBench是針對(duì)服務(wù)器作為Web Server時(shí)的性能進(jìn)行測試,在被測服務(wù)器上安裝IIS6.0組件,以提供測試所需的Web服務(wù)。在測試中開啟N臺(tái)客戶端(受測試環(huán)境約束而定),分別使用了WebBench 5.0內(nèi)置的動(dòng)態(tài)CGI以及靜態(tài)頁面腳本對(duì)服務(wù)器進(jìn)行了測試。
靜態(tài)測試是由客戶端讀取預(yù)先放置在服務(wù)器Web Server下的Web頁面(wbtree),這項(xiàng)測試主要考察的是服務(wù)器磁盤系統(tǒng)以及網(wǎng)絡(luò)連接性能。使用了N臺(tái)客戶端,配合Static_mt.tst多線程靜態(tài)腳本測試向被測服務(wù)器發(fā)送請(qǐng)求。
動(dòng)態(tài)測試偏重于對(duì)服務(wù)器CPU子系統(tǒng)的性能測試,它對(duì)于Web服務(wù)器提供了足夠的負(fù)載。使用C語言編寫的CGI源文件Simcigi.c編譯為Simcgi.exe,并將其作為動(dòng)態(tài)測試中的CGI腳本。在測試過程中,每臺(tái)安裝了WebBench客戶端軟件的PC,會(huì)在300秒的時(shí)間內(nèi)持續(xù)向服務(wù)器發(fā)送CGI請(qǐng)求,而控制臺(tái)會(huì)紀(jì)錄并匯總服務(wù)器所響應(yīng)CGI請(qǐng)求的數(shù)據(jù)。CGI測試的成績高低,主要取決于服務(wù)器處理器子系統(tǒng)性能的優(yōu)劣。處理器子系統(tǒng)包括CPU、內(nèi)存以及內(nèi)存控制器,CPU頻率、緩存以及內(nèi)存容量大小和內(nèi)存帶寬,都會(huì)影響該項(xiàng)成績。
6)NetBench v7.03
NetBench是針對(duì)文件服務(wù)器的性能測試軟件,影響NetBench 性能的主要是服務(wù)器的磁盤子系統(tǒng),服務(wù)器磁盤控制器、條帶大小、讀寫緩存、硬盤類型、組建磁盤陣列模式、內(nèi)存容量、網(wǎng)絡(luò)拓樸結(jié)構(gòu)等都會(huì)對(duì)測試結(jié)果有明顯的影響。我們?cè)诒粶y服務(wù)器上設(shè)立了文件服務(wù)器時(shí),NetBench可配置N個(gè)客戶端來模擬網(wǎng)絡(luò)中的PC向文件服務(wù)器所發(fā)出的文件傳輸請(qǐng)求,文件服務(wù)器則將存儲(chǔ)在磁盤上的文件數(shù)據(jù)發(fā)送給相應(yīng)的客戶端。在測試過程中,客戶端會(huì)以每四臺(tái)一組的步進(jìn)依次增加并且向服務(wù)器發(fā)送文件傳輸請(qǐng)求,測試結(jié)束后控制臺(tái)收集數(shù)據(jù)并繪制出服務(wù)器的數(shù)據(jù)傳輸變化曲線。
7)TPC benchmark
TPC現(xiàn)有的測試標(biāo)準(zhǔn)為:TPC-E、TPC-C、TPC-H、TPC-App。根據(jù)這4個(gè)測試基準(zhǔn),目前TPC主要包括的4個(gè)技術(shù)小組委員會(huì):TPC-E 技術(shù)小組委員會(huì)、TPC-C 技術(shù)小組委員會(huì)、TPC-H技術(shù)小組委員會(huì)、TPC-App技術(shù)小組委員會(huì)。前期TPC使用過但目前已經(jīng)停止使用的測試標(biāo)準(zhǔn)有:TPC-A、TPC- B(數(shù)據(jù)庫處理能力測試標(biāo)準(zhǔn))、TPC-D、TPC-R(決策支持系統(tǒng)測試標(biāo)準(zhǔn),類TPC-H)、TPC-W(Web處理能力測試標(biāo)準(zhǔn))。