この日記は https://yapud.hatenablog.com/ に引っ越し中
2011-08-04
_ [Software] FS を ext3 から ext4 にしてみた
適当な領域を準備して、bonnie++ ではかってみました。
機械はIBMのPCサーバ、IBMのiSCSIストレージ、ESXi の上に RHEL 5.7 を入れて動かしてみた感じですよ。
まずは ext3 の FS をつくって計測。
[root@server01 ~]# mkfs.ext3 /dev/mapper/VolGroup01-lvol0 [root@server01 ~]# mount -t ext3 /dev/mapper/VolGroup01-lvol0 /tmp/bon [root@server01 ~]# bonnie++ -d /tmp/bon -s 512 -r 256 -u user01 Version 1.03e ------Sequential Output------ --Sequential Input- --Random- -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks-- Machine Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP /sec %CP server01.n 512M 64643 77 174717 18 1342170 100 86009 99 4281930 99 392.0 0 ------Sequential Create------ --------Random Create-------- -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete-- files /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP 16 100180 72 791957 96 190354 99 111969 74 1249456 99 194256 100
ext3 と ext4 は互換性があるという。タイプだけ変えてマウントしなおしたらどうなの?
[root@server01 ~]# umount /tmp/bon [root@server01 ~]# mount -t ext4 /dev/mapper/VolGroup01-lvol0 /tmp/bon [root@server01 ~]# bonnie++ -d /tmp/bon -s 512 -r 256 -u user01 Version 1.03e ------Sequential Output------ --Sequential Input- --Random- -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks-- Machine Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP /sec %CP server01.n 512M 31605 39 34454 4 854348 98 84649 100 2798113 99 184637 69 ------Sequential Create------ --------Random Create-------- -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete-- files /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP 16 24367 23 722459 96 159582 100 108139 93 1157889 98 162662 99
ext4 で作り直してみる
[root@server01 ~]# umount /tmp/bon [root@server01 ~]# mkfs.ext4 /dev/mapper/VolGroup01-lvol0 [root@server01 ~]# mount -t ext4 /dev/mapper/VolGroup01-lvol0 /tmp/bon [root@server01 ~]# bonnie++ -d /tmp/bon -s 512 -r 256 -u user01 Version 1.03e ------Sequential Output------ --Sequential Input- --Random- -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks-- Machine Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP /sec %CP server01.n 512M 85623 99 1585283 100 1421739 100 86289 100 4501990 99 302710 73 ------Sequential Create------ --------Random Create-------- -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete-- files /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP 16 104249 99 778150 99 158745 99 107853 99 1157220 98 161296 99
Sequential Output の Block が段違いに速くなったわ。
つぎは ext3 の領域を ext4 に変換したらどうか。まず ext3 で作ってから、ext4 にする。
[root@server01 ~]# umount /tmp/bon [root@server01 ~]# mkfs.ext3 /dev/mapper/VolGroup01-lvol0 [root@server01 ~]# tune4fs -O extents,uninit_bg,dir_index,flex_bg -m 1 /dev/mapper/VolGroup01-lvol0 [root@server01 ~]# e4fsck -vfDC0 /dev/mapper/VolGroup01-lvol0 e4fsck 1.41.12 (17-May-2010) One or more block group descriptor checksums are invalid. Fix? yes いろいろ表示されておわり [root@server01 ~]# mount -t ext4 /dev/mapper/VolGroup01-lvol0 /tmp/bon [root@server01 ~]# bonnie++ -d /tmp/bon -s 512 -r 256 -u user01 Version 1.03e ------Sequential Output------ --Sequential Input- --Random- -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks-- Machine Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP /sec %CP server01.n 512M 75233 87 1453355 95 1337786 100 70546 82 4421906 100 297122 68 ------Sequential Create------ --------Random Create-------- -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete-- files /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP 16 103652 99 746558 95 161684 100 106122 97 1132274 89 162899 100
最初から ext4 でも、 ext3 から ext4 に変換でもあんまり差がなさそう。消して作り直しじゃなくて、変換による対応で良さそうね。
しかしむやみにイイ値が出てるような気がするのだけど、ベンチに使ったファイルサイズが小さすぎたかな。キャッシュに載ってしまったかな。
前 | 2011年 8月 |
次 | ||||
日 | 月 | 火 | 水 | 木 | 金 | 土 |
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 | 31 |