四大Linux文件系統(tǒng)在2.6.34內(nèi)核下的基準(zhǔn)測(cè)試
原創(chuàng)【51CTO精選譯文】業(yè)內(nèi)知名評(píng)測(cè)網(wǎng)站Phoronix近日在Linux 2.6.34內(nèi)核上針對(duì)一系列Linux文件系統(tǒng)進(jìn)行了基準(zhǔn)測(cè)試。現(xiàn)在大多數(shù)使用中的Linux文件系統(tǒng)正在以EXT4逐步取代EXT3,不過BTRFS也常常與EXT4相提并論。此外,由SGI開發(fā)并引進(jìn)到Linux中的XFS高級(jí)日志文件系統(tǒng)也以良好的伸縮性和健壯程度廣受歡迎。下面是評(píng)測(cè)的詳細(xì)情況:
我們對(duì)以前的Linux文件系統(tǒng)測(cè)試結(jié)果進(jìn)行觀察后發(fā)現(xiàn),在不同版本的Linux內(nèi)核上的測(cè)試結(jié)果存在差異,有時(shí)甚至出現(xiàn)了很大的波動(dòng),因此我們打算在最新的Linux內(nèi)核上,針對(duì)更多的Linux文件系統(tǒng)做一次全面的測(cè)試。
本次測(cè)試使用的內(nèi)核是2.6.34-RC4 Git快照版本,參與測(cè)試的文件系統(tǒng)包括EXT3,EXT4,Btrfs和XFS,使用的測(cè)試工具包括Phoronix Test Suite中的Compile Bench,F(xiàn)S-Mark,Dbench, IOzone,PostMark,PostgreSQL,SQLite,Unpack-Linux和Threaded I/O Tester。
測(cè)試所用的機(jī)器配置:
處理器:AMD四核上海 Opteron 2384
主頻:2.70GHz
主板:泰安S2927 n3600B
硬盤:64GB OCZ Agility EX SSD
顯卡:ATI Radeon HD 4870
操作系統(tǒng):Ubuntu 10.04 Beta(64位)
軟件環(huán)境:2.6.34內(nèi)核,X.Org Server 1.7.6,xf86-video-radeon 6.13.0,GCC 4.4.3
每個(gè)文件系統(tǒng)都使用的是它們的默認(rèn)掛載選項(xiàng)。
編譯基準(zhǔn)測(cè)試Compile Bench
圖 1 Compile Bench測(cè)試結(jié)果
在Compile Bench測(cè)試結(jié)果中,Btrfs勝出,它比第二名EXT3快出23%,EXT3比EXT4又快出22%,排在最后的是XFS,它的速度只有10.83MB/s,與Btrfs的64.47MB/s相比,懸殊非常大。
#p#
文件系統(tǒng)性能測(cè)試FS-Mark
圖 2 FS-Mark測(cè)試1000個(gè)1MB大小的文件
在FS-Mark測(cè)試1000個(gè)1MB大小的文件時(shí),EXT3在OCZ Agility EX SSD硬盤上意外勝出,EXT4明顯落后于EXT3,事實(shí)上EXT4是所有文件系統(tǒng)中最慢的,這一輪Btrfs排在了第二名。
圖 3 FS-Mark禁用Sync/FSync測(cè)試1000個(gè)1MB大小的文件
同樣是測(cè)試1000個(gè)1MB大小的文件,但這次禁用了sync,測(cè)試結(jié)果讓人難以置信,Btrfs以絕對(duì)優(yōu)勢(shì)勝出,它的成績(jī)相當(dāng)于EXT3和EXT4的4.5倍,EXT3仍然快于EXT4,但優(yōu)勢(shì)不是很明顯,這一次XFS再次排在末尾,倒數(shù)第二名的EXT4也比它快2.5倍。
圖 4 FS-Mark 4個(gè)線程測(cè)試5000個(gè)1MB大小的文件
這一次我們將文件數(shù)量增大到5000個(gè),開啟了4個(gè)線程,Btrfs再次勝出,但這次EXT4上升到了第二名,不過Btrfs比它仍然要快出24%,排在最后的仍然是XFS。
圖 5 FS-Mark測(cè)試4000個(gè)1MB大小的文件,32個(gè)子目錄
我們最后的FS-Mark測(cè)試中,將4000個(gè)1MB大小的文件放入32個(gè)子目錄,這次EXT3勝出,而EXT4則墊底,XFS這次則一反頹勢(shì),上升到了第二,一向表現(xiàn)優(yōu)秀的Btrfs這次只落得個(gè)第三的名次。
#p#
文檔服務(wù)器性能測(cè)試Dbench
圖 6 Dbench測(cè)試結(jié)果
接下來我們執(zhí)行了Dbench測(cè)試,客戶端數(shù)量從1,6,12,48到128個(gè),當(dāng)只有1個(gè)客戶端時(shí),XFS的速度是最快的,但客戶端達(dá)到128個(gè)時(shí),XFS變成最慢的了,而Btrfs則完全相反,一開始是最慢的,客戶端數(shù)量越多越快,到128個(gè)客戶端時(shí),Btrfs僅僅次于EXT4,排在第二位,排在第一位的EXT4也是剛開始客戶端數(shù)量少時(shí)速度慢,客戶端升至6個(gè)時(shí),就超過了其它文件系統(tǒng),到48個(gè)客戶端時(shí),達(dá)到峰值,雖然到128個(gè)客戶端性能有所下降,但仍然保持著第一的位置。
讀寫性能測(cè)試IOzone
圖 7 IOzone寫入測(cè)試結(jié)果
在IOzone測(cè)試中,我們先從8GB寫入測(cè)試開始,我們使用了4Kb,64Kb和1MB記錄大小的測(cè)試結(jié)果加以對(duì)比,當(dāng)記錄大小為4Kb時(shí),XFS最快,在64Kb時(shí),XFS接近EXT4的速度,但到了1MB時(shí),EXT4就全面超越了XFS,在這一輪測(cè)試中一直墊底的是Btrfs。
圖 8 IOzone讀取測(cè)試結(jié)果
接下來我們執(zhí)行了IOzone讀取測(cè)試,這次EXT4勝出,排在其后分別是XFS,Btrfs,EXT3,在磁盤讀取速度方面EXT4比Btrfs快將近20%。
#p#
文件創(chuàng)建和刪除測(cè)試PostMark
圖 9 PostMark測(cè)試結(jié)果
執(zhí)行PostMark測(cè)試的結(jié)果表明,EXT4仍然是最快的,每秒處理2881個(gè)事務(wù)請(qǐng)求,Btrfs的成績(jī)是2467,緊隨其后的XFS,排名墊底的則是EXT3,僅僅只有954。
并發(fā)數(shù)據(jù)庫(kù)會(huì)話性能測(cè)試
圖 10 PostgreSQL pgbench測(cè)試結(jié)果
在PostgreSQL測(cè)試中,EXT4再次勝出,XFS和EXT3都表現(xiàn)不錯(cuò),唯獨(dú)Btrfs太讓人失望,每秒只能處理69個(gè)事務(wù)請(qǐng)求,與排名第一的EXT4 881個(gè)事務(wù)請(qǐng)求形成了巨大的差距。
圖 11 SQLite測(cè)試結(jié)果
在SQLite測(cè)試中,Btrfs再次墊底(注意測(cè)試結(jié)果越小越好),在上一個(gè)數(shù)據(jù)庫(kù)測(cè)試中,表現(xiàn)不錯(cuò)的EXT3超過了EXT4,速度幾乎相差3倍,而XFS和EXT4則基本相當(dāng)。
解壓性能測(cè)試
圖 12 Unpacking測(cè)試結(jié)果
接下來的測(cè)試是解壓linux-2.6.32.tar.bz2源代碼包,EXT4的解壓時(shí)間最短,緊隨其后的是Btrfs和EXT3,XFS再次墊底。
線程IO測(cè)試
圖 13 Threaded I/O Tester測(cè)試結(jié)果
我們最后一個(gè)測(cè)試是Threaded I/O Tester,我們開啟了16個(gè)線程執(zhí)行隨機(jī)寫入測(cè)試,每線程寫入64MB數(shù)據(jù),在這一輪測(cè)試中,Btrfs再次以絕對(duì)優(yōu)勢(shì)奪得桂冠,幾乎是排名第二的EXT4的速度的10倍。
結(jié)論
在這些測(cè)試中,EXT4的表現(xiàn)最為突出,但Btrfs在諸如Compile Bench,F(xiàn)S-Mark等測(cè)試中表現(xiàn)也不賴,雖然EXT3風(fēng)頭不再,但在某些測(cè)試中仍然表現(xiàn)得非常優(yōu)秀。在選擇文件系統(tǒng)時(shí),速度不應(yīng)該是決策的唯一因素。
原文:File-System Benchmarks With The Linux 2.6.34 Kernel 作者:Michael Larabel
【編輯推薦】