ext3, ext4 和 reiserfs 文件系统性能对比
通过使用下面几个方面来对ext3,ext4和reiserfs来做一个性能测试:
- 创建空文件10000个的耗时
- 创建小文件,每个小文件使用512个blocks,一共创建10000个
- 创建一个2G文件的耗时
- 复制2G文件的耗时
- 删除2G大文件的耗时
- 删除10000个小文件的耗时
测试结果统计(使用time工具来计时):
任务文件系统 | EXT3 | EXT4 | Reiserfs |
建立空文件 | 0m13.109 | 0m12.977 | 0m13.046 |
建立小文件 | 1m55.583 | 1m15.253 | 1m0.192 |
建立大文件 | 0m43.58 | 0m37.942 | 0m40.288 |
复制大文件 | 1m30.537 | 1m22.898 | 1m28.705 |
删除大文件 | 0m2.218 | 0m0.246 | 0m0.371 |
删除小文件 | 0m54.497 | 0m0.902 | 0m0.979 |
不过我们通过这个测试,发现我们的全新EXT4还是值得期待的。测试的时候,我使用的还只是mkfs.ext4dev 开发包。相信正式版的表现应该更上一层楼。
扩展阅读
对于磁盘性能的测试工具,又Postmark和Bonnie++,前者主要测试文件系统在邮件系统或者商务系统中的性能,针对需要频繁,大量地读取小文件。而Bonnie++主要测试大文件的。
由于Reiserfs的树形写入特点,结合测试结果,我们可以得到如下的结论:
- 在小型系统,Reiserfs和ext3的性能是比较好的,但由于ext3的目录项是线型的,而Reiserfs的目录项是树型的,文件较多时,Reiserfs要更好一些。
- 对于上G的大文件储蓄要求,各个文件系统差据很小,性能瓶颈在硬盘上。
- 虽然XFS和JFS设计结构很好,但都是针对大中型系统的,在小型系统中发挥不明显。
- 全日志模式和预定,回写这两种模式相比,差据是很大的。预定和回写两者差据不大。性能和安全的兼顾,文件系统的缺省安全模式,预定模式是比较好的选择。