[转帖]ext3,reiserfs,jfs,xfs性能测试

系统安装、升级讨论
版面规则
我们都知道新人的确很菜,也喜欢抱怨,并且带有浓厚的Windows习惯,但既然在这里询问,我们就应该有责任帮助他们解决问题,而不是直接泼冷水、简单的否定或发表对解决问题没有任何帮助的帖子。乐于分享,以人为本,这正是Ubuntu的精神所在。
回复
kangtian
帖子: 336
注册时间: 2007-04-22 13:14

[转帖]ext3,reiserfs,jfs,xfs性能测试

#1

帖子 kangtian » 2008-08-14 23:17

测试基础

* Hardware Processor : Intel Celeron 533
* RAM : 512MB RAM PC100
* Motherboard : ASUS P2B
* Hard drive : WD Caviar SE 160GB (EIDE 100, 7200 RPM, 8MB Cache)
* Controller : ATA/133 PCI (Silicon Image)

* OS Debian Etch (kernel 2.6.15), distribution upgraded on April 18, 2006
* All optional daemons killed (cron,ssh,saMBa,etc.)

* Filesystems Ext3 (e2fsprogs 1.38)
* ReiserFS (reiserfsprogs 1.3.6.19)
* JFS (jfsutils 1.1.8)
* XFS (xfsprogs 2.7.14)

选择的测试任务描述

*在一个大文件(ISO 镜像文件,700 MB)的从第2个磁盘复制到这个试验磁盘
*再从在另一个位置再复制这个 ISO 一次
*删除这个ISO 的两个副本

*操作一文件树(有7500 文件,900 目录,1.9GB),从第2 磁盘复制到这个试验磁盘
*再从在另一个位置再复制这个文件树 一次
*删除这个文件树的两个副本

*用递归的方法遍历文件树目录和文件树的全部内容,复制到这个试验磁盘
*匹配通配符,在文件树查找具体的文件

*用(mkfs) 建立filesystem(全部FS都使用默认值)
*mount filesystem
*Umount filesystem

上述11项任务(从建立filesystem到umounting filesystem)的顺序,编写为Bash script运行完成3 次(报告平均成绩)。 每个顺序花费大约7分种,完成任务的时间用秒计算, GNU time utility (version 1.7) 记录任务时的CPU 的利用百分比。

结果

分区能力

(在filesystem 创造之后)初始化分区并重新划分block的过程里,Ext3有最差的初始利用率(92.77%), 其它的filesystem 几乎可是使用全部的容量(ReiserFS = 99.83%,JFS = 99.82%,XFS = 99.95%)。
结论: 为了使用你的分区的的最大容量,选择ReiserFS,JFS或者XFS。

建立文件系统,mount和unmounting

在20GB的分区创造filesystem测试,划分为Ext3带14.7秒, 与为相比其他filesystem多2秒或更少。(ReiserFS = 2.2,JFS = 1.3,XFS = 0.7)。

不过,挂载ReiserFS 要比其他的FS多花费5-15倍时间(2.3秒)(Ext3 = 0.2, JFS = 0.2, XFS = 0.5),umount以及要比其他的FS多花费2 倍时间(0.4秒)。

所有的FS都花费差不多CPU占用来创建FS(59%(ReiserFS) -74%(JFS)),挂载FS(在6和9%之间)。 不过,Ext3 和XFS多用2倍的CPU占用 给umount(37% 和45%), ReiserFS和JFS(14% 和27%)。
结论: 对创建FS性能和mounting/unmounting来说,选择JFS或者XFS。

大文件操作性能(ISO image,700 MB)

把大文件复制到Ext3(38.2秒)和ReiserFS(41.8), 要比JFS和XFS(35.1和34.8)需要更多时间。使用XFS有助于提高在相同的磁盘上复制相同的文件(XFS=33.1,Ext3 = 37.3,JFS = 39.4,ReiserFS = 43.9)相比。 在JFS和XFS上删除那些ISO 大约要快100 倍(0.02秒),(ReiserFS1.5秒,Ext32.5秒)!所有FS复制时的CPU利用(在46和51%之间),再复制时(在38%到50%之间)。当其他FS使用大约10%时,ReiserFS使用49%的CPU。 比他FS大约少5到10%),JFS使用较少的CPU。
结论: 对大文件操作性能来说,最好选择JFS或者XFS。 如果你需要使CPU利用减到最小,更推荐JFS。


目录树(7500个文件,900份目录,1.9GB)的操作

最初复制目录树时,Ext3(158.3秒)和XFS(166.1秒)更迅速, ReiserFS和JFS(172.1和180.1)。在第二次复制的时候有相似的结果。(Ext3=120秒,XFS = 135.2,ReiserFS = 136.9 和JFS = 151)。但是, 移动目录树时Ext3(22秒)相比ReiserFS(8.2秒, XFS(10.5秒)和JFS(12.5秒))大约多2倍时间!所有FS在复制和再复制目录树时都使用较多的CPU (复制在27和36%之间),(再复制在29%-JFS和45%-ReiserFS之间)。

令人吃惊,ReiserFS 和XFS使用更多的CPU 删除目录树(86% 和65%), 而其他FS只使用大约15%的(Ext3和JFS)。再次,与任何其他FS相比较,JFS的明显使用较少CPU。 当有较多的数量较小页面时适合ReiserFS。这个差别在目录树的再复制和移动里的ReiserFS将有更高的速度。
结论:对在大容量的目录树操作来说,选择Ext3或者XFS。 来自其他作者的基准测试已经证明如果使用ReiserFS,对大量的小文件更为合适。但是,目前包括各种各样尺寸(10KB在5 MB)数千文件的目录树操作上,建议使用Ext3或者XFS可能获得更好的性能。如果JFS的CPU占用减到最小,这种FS带着相当高的性能。

目录列表和文件查找

递归显示目录的目录列表,ReiserFS(1.4秒)和XFS更迅速的1.8), Ext3和JFS(2.5和3.1)。文件查找有着相同的结果。在文件查找项目, ReiserFS(0.8秒)相比XFS(2.8)和Ext3(4.6秒)和JFS(5秒)更迅速。 Ext3和JFS有更好CPU占用:目录列表(35%),文件查找(6%)。 XFS目录列表(70%)使用更多的CPU,文件查找(10%)。 ReiserFS 看起来是占用CPU最多的FS,目录列表71%,文件查找36% 。
结论: 结果表明那, 对于这些CPU占用任务来说,(ext3和JFS)filesystems 能更少的使用CPU的。 XFS作为好备选,带有相对适中的性能和CPU的占用。

总的结论

这些结果从Piszcz(2006)关于分解的Ext3,ReiserFS的磁盘能力报告一样。 这两篇文章两篇已经显示JFS是最低的CPU利用的FS。 最后,这份报告看起来没有显示出ReiserFS的high page faults activity

由于一个分区只能有一个filesystem,认识每种filesystem的优缺点很重要。如果,以这篇文章的全部测试为基准, XFS看起来是家庭或者小型企业最适合的应用于文件服务器的filesystem:

*它使用你的服务器硬盘(s)的拥有最大的容量
*创建FS,mount和unmount很迅速
*操作大文件最迅速的FS(>500 MB)
*这FS得第二名地方给经营关于许多在适度尺寸文件和目录小
*在CPU占用和目录列表或者文件搜寻性能之间比较平衡,
*没有最小CPU要求,老一代硬件也可十分接受

Piszcz(2006)当时没有明确推荐XFS,他只是说:"就个人来说,我仍然愿意选择同时具备性能和可伸缩性的XFS"。 现在我只能支持这个结论。
头像
HuntXu
帖子: 5776
注册时间: 2007-09-29 3:09

#2

帖子 HuntXu » 2008-08-15 0:16

关注... 8)
HUNT Unfortunately No Talent...
头像
佚之狐L
帖子: 840
注册时间: 2008-01-28 13:02

Re: [转帖]ext3,reiserfs,jfs,xfs性能测试

#3

帖子 佚之狐L » 2008-08-15 10:51

kangtian 写了:上述11项任务(从建立filesystem到umounting filesystem)的顺序,编写为Bash script运行完成3 次(报告平均成绩)。 每个顺序花费大约7分种,完成任务的时间用秒计算, GNU time utility (version 1.7) 记录任务时的CPU 的利用百分比。

结果

分区能力
结果呢,图片没过来吧?似乎以前看过
携书弹剑走黄沙,瀚海天山处处家;
大漠西风飞翠羽,江南八月看桂花
头像
adagio
论坛版主
帖子: 22110
注册时间: 2008-02-17 23:47
来自: 美丽富饶的那啥星球

#4

帖子 adagio » 2008-08-15 11:23

学习……
明天就换大三八!
——8核CPU、8G内存、8T硬盘……
8卡交火,80寸大屏放8个……
IPv8的光纤要8条……

---------------------------------------------------------------------------------
[图片版]新手当自强(续)FAQ
[新手进阶]挂载、fstab、调整linux分区
[图片版]E17桌面环境配置手把手
头像
自由建客
帖子: 13468
注册时间: 2008-07-30 23:21
系统: Debian stable AMD64

#5

帖子 自由建客 » 2008-08-15 11:32

看过多次了,jfs和xfs肯定要到64位系统下才能发挥优势,否则肯定会慢一些并且CPU消耗也会大一些。
随着磁盘空间的使用,xfs不一定会比ext3磁盘使用率要高,xfs使用的时B+树,在大量文件的情况下磁盘空间利用很容易低于ext3那样的线性目录结构,目录结构的额外开销太多。
头像
佚之狐L
帖子: 840
注册时间: 2008-01-28 13:02

#6

帖子 佚之狐L » 2008-08-15 11:50

B+树还能理解,线性目录结构什么样?觉得ext3把硬盘的可用空间变得小了
携书弹剑走黄沙,瀚海天山处处家;
大漠西风飞翠羽,江南八月看桂花
delectate
帖子: 18311
注册时间: 2008-01-09 22:41

#7

帖子 delectate » 2008-08-15 19:00

可怜的我还在用ext3……
头像
laowu2141
帖子: 530
注册时间: 2007-06-19 11:25
系统: kubuntu 13.04
来自: 北京
联系:

#8

帖子 laowu2141 » 2008-08-15 19:48

不是说sun的zfs是最好的文件系统吗?据说已经开源了,不知道linux什么时候能用上,性能如何,还有就是reiserfs4版本好像也是据说很强大,不知道有没有测试,xfs不能用grub的说!jfs没用过,这里是头一次听说。
x671
帖子: 24
注册时间: 2007-07-02 8:39

#9

帖子 x671 » 2008-08-15 20:25

zfs因为版权协议的问题迟迟不能进入linux内核——也就是说,不可能进入内核(如果一直是CCDL协议)。不过有望像NTFS一样使用fuse操作,等吧……
R4我没用过,ZFS我没测试过,一般的用着感觉根别的没什么区别。
头像
自由建客
帖子: 13468
注册时间: 2008-07-30 23:21
系统: Debian stable AMD64

#10

帖子 自由建客 » 2008-08-15 20:56

zfs 128bit 犯得着吗!浪费内存和CPU。
回复