作者:范平
启动速度对比
众所周知,Linux是一个性能稳定、功能强大、效率高的操作系统。其文件系统是整个Linux操作系统的重要组成部分, 因为文件系统不仅包含这文件中的数据,而且还包含这文件系统的结构,Linux是一个性能稳定、功能强大、效率高的 操作系统。
作为一个以桌面应用为主的Linux操作系统,Ubuntu 12.04 LTS也即将正式上市。如果我们在Ubuntu 12.04 LTS,对所 有的Linux文件系统进行测试, 那么不同文件系统下,其性能究竟有多大区别呢?下面,我们就对ReiserFS、JFS、 EXT2、EXT3、EXT4、Btrfs、XFS。
测试平台
测试系统使用的是搭载有酷睿i5处理器和160GB容量的X25 SSD。并且,我们也使用了Bootchart来测试不同文件系统下的启动时间。
启动时间
测试结果
测试结果
通过以上我们可以得出,不同文件系统下的启动时间的差异:
Btrfs: 19.30 seconds
EXT2: 11.98 seconds
EXT4: 11.85 seconds
JFS: 11.86 seconds
ReiserFS: 11.62 seconds
XFS: 12.40 seconds
有意思的是,Btrfs是Linux文件系统中唯一“行动迟缓”的系统,即使磁盘吞吐量很高也无济于事。Btrfs上的磁盘吞吐量266MB/s,相比XFS的250MB/s、EXT4的248MB/s都要高出不少。
PostMark磁盘测试Btrfs领先
PostMark测试中,Linux这七大文件系统不能都成功完成测试。但在能跑完测试的4大文件系统中,Btrfs遥遥领先,而JFS则垫底 。
测试结果
在运行单个Dbench客户端的时候,旧有的EXT2运行最快。JFS也表现出众,而在EXT4、Btrfs、XFS文件系统之间,EXT4表现最好 ,相比另外两个,EXT4性能超出25%左右。
测试结果
在运行1000个1MB大小的文件时,XFS和EXT4表现比较接近。Btrfs落后与EXT3相差不大。ReiserFS在此次测试中表现一落千丈。
测试结果
此次采取禁用Sync/FSync的方法来测试1000个1MB大小的文件,结果显示各大文件系统之间的性能差异并不明显。
测试结果
仍然采用FS-Mark但开启了4线程的情况下,结果也十分接近,不过EXT4在三大Linux文件系统中居于领先。
测试结果
最后采用FS-Mark对4000个1MB大小的文件进行测试(32个子目录),我们发现XFS远远领先于Btrfs,同时也以微弱优势领先EXT4 ,JFS表现更是令人出奇得好。
测试结果
EXT4测试表现整体良好
在使用IOzone对8GB文件进行写入操作,数据包设定为4KB的时候,我们发现EXT4、XFS表现出众,其中EXT4的性能几乎领先于Btrfs性能9%以上。
IOzone测试(测试结果)
下面我们进行读取操作,设置不变。EXT4仍然居于领先,不过这次拉开了与Btrfs的差距,领先了13%。相比XFS,EXT4也领先了6%。
测试结果
Threaded I/O Tester进行8线程128MB随机写入,结果发现,这极大文件系统性能表现并不大。
测试结果
在利用Compile Bench进行测试的时候,我们同样发现, EXT3/EXT4几乎平分秋色,紧随其后的则是XFS,ReiserFS在此项测试中也领先于Btrfs。总体来说,EXT4的性能要高出Btrfs大约23%。
测试结果
另一项磁盘性能测试Flexible IO Tester,Btrfs表现最差,而新文件系统EXT4性能表现最优。XFS虽然不像Btrfs那边表现令人大跌眼镜,但也比其他5个文件系统稍逊一筹。
测试结果
综上,EXT4文件系统在最新的Linux文件系统测试中表现令人满意。需要补充说明的是,此次在Ubuntu 12.04 LTS平台上的测试都是采用默认设置和默认的Linux 3.2内核。此次测试结构也主要基于单个SSD产品和Sandy Bridge架构平台,在关注测试性能的同时,并没有考虑不同文件系统之间的特性差别。