關(guān)于Linux性能測(cè)試簡(jiǎn)單解析
對(duì)于操作系統(tǒng)的可移植性測(cè)試:評(píng)測(cè)工具是由C 語(yǔ)言編寫(xiě)的,具有較好的可移植性(盡管它們更易于被GCC 編譯)。這對(duì)于產(chǎn)生系統(tǒng)間逐一明細(xì)的對(duì)比結(jié)果是有用的。
1、Linux性能測(cè)試工具Lmbench 主要特性
a) 對(duì)于操作系統(tǒng)的可移植性測(cè)試:評(píng)測(cè)工具是由C 語(yǔ)言編寫(xiě)的,具有較好的可移植性(盡管它們更易于被GCC 編譯)。這對(duì)于產(chǎn)生系統(tǒng)間逐一明細(xì)的對(duì)比結(jié)果是有用的。
b) 自適應(yīng)調(diào)整:Lmbench 對(duì)于應(yīng)激性行為是非常有用的。當(dāng)遇到BloatOS 比所有競(jìng)爭(zhēng)者慢4 倍的情況時(shí),這個(gè)工具會(huì)將資源進(jìn)行分配來(lái)修正這個(gè)問(wèn)題。
c) 數(shù)據(jù)庫(kù)計(jì)算結(jié)果:數(shù)據(jù)庫(kù)的計(jì)算結(jié)果包括了從大多數(shù)主流的計(jì)算機(jī)工作站制造商上的運(yùn)行結(jié)果。
d) 存儲(chǔ)器延遲計(jì)算結(jié)果:存儲(chǔ)器延遲測(cè)試展示了所有系統(tǒng)(數(shù)據(jù))的緩存延遲,例如一級(jí),二級(jí)和三級(jí)緩存,還有內(nèi)存和TLB 表的未命中延遲。另外,緩存的大小可以被正確劃
分成一些結(jié)果集并被讀出。硬件族與上面的描述相象。這種測(cè)評(píng)工具已經(jīng)找到了操作系統(tǒng)分頁(yè)策略的中的一些錯(cuò)誤。
e) 上下文轉(zhuǎn)換計(jì)算結(jié)果:很多人好象喜歡上下文轉(zhuǎn)換的數(shù)量。這種測(cè)評(píng)工具并不是特別注重僅僅引用“在緩存中”的數(shù)量。它時(shí)常在進(jìn)程數(shù)量和大小間進(jìn)行變化,并且在當(dāng)前內(nèi)
容不在緩存中的時(shí)候,將結(jié)果以一種對(duì)用戶可見(jiàn)的方式進(jìn)行劃分。您也可以得到冷緩存上下文切換的實(shí)際開(kāi)銷。
f) 回歸測(cè)試:
(一)Sun 公司和SGI 公司已經(jīng)使用這種測(cè)評(píng)工具以尋找和補(bǔ)救存在于性能上的問(wèn)題。
(二)Intel 公司在開(kāi)發(fā)P6 的過(guò)程中,使用了它們。
(三)Linux 在Linux 的性能調(diào)整中使用了它們。
g) 新的測(cè)評(píng)工具:源代碼是比較小的,可讀并且容易擴(kuò)展。它可以按常規(guī)組合成不同的形式以測(cè)試其他內(nèi)容。舉例來(lái)說(shuō),如包括處理連接建立的庫(kù)函數(shù)的網(wǎng)絡(luò)測(cè)量,服務(wù)器關(guān)閉等。
2、Linux性能測(cè)試工具Lmbench安裝與使用
安裝使用Linux性能測(cè)試工具Lmbench 的安裝相對(duì)比較簡(jiǎn)單,到其官方網(wǎng)站下載壓縮包Lmbench.tar.gz將其解壓,并進(jìn)入解壓后的目錄命令行鍵入make results 即可開(kāi)始編譯測(cè)試。這里需要注意如果在make 的時(shí)候出錯(cuò),提示類似
$make results
make[1]: Entering directory `/home/kyuan/lmbench3/src'
gmake[2]: Entering directory `/home/kyuan/lmbench3/src'
gmake[2]: *** No rule to make target `../SCCS/s.ChangeSet', needed by bk.ver'..
gmake[2]: Leaving directory `/home/kyuan/lmbench3/src'
make[1]: *** [lmbench] Error 2
make[1]: Leaving directory `/home/kyuan/lmbench3/src'
make: *** [results] Error 2
這是需要修改src/Makefile,將這么一行(在231 行的樣子),將$O/lmbench : ../scripts/lmbench bk.ver中的bk.ver 去掉,就可以了。
如果一切順利,編譯沒(méi)有錯(cuò)誤,就會(huì)出現(xiàn)一些選擇提示以對(duì)測(cè)試進(jìn)行一個(gè)配置并生成配置腳本,后續(xù)的測(cè)試將使用該配置腳本,在以后測(cè)試中也能夠直接使用同樣的配置多次測(cè)試。配置提示除了測(cè)試的內(nèi)存范圍(如“MB [default 1792]”時(shí),對(duì)內(nèi)存較大的應(yīng)該避免選擇太大值,否則測(cè)試時(shí)間會(huì)很長(zhǎng))和是否Mail results 外,基本上都能夠選擇缺省值。
Lmbench 根據(jù)配置文檔執(zhí)行任何測(cè)試項(xiàng),在results 目錄下根據(jù)系統(tǒng)類型、系統(tǒng)名和操作系統(tǒng)類型等生成一個(gè)子目錄,測(cè)試結(jié)果文檔(system name+序號(hào))存放于該目錄下。測(cè)試完畢執(zhí)行make see 可查看到測(cè)試結(jié)果報(bào)告Lmbench 的結(jié)果及其說(shuō)明、測(cè)試結(jié)果及說(shuō)明。
【編輯推薦】