ZFS LZ4 と ZLE の処理速度を比較2014年05月29日 14時16分36秒

ZFS ZLE compression の処理速度を計測と同じ方法で比較。そちらにもあるように HP Pavilion dv6426us という七年物の古い機種での比較、かつ最高圧縮時の値で単純比較。前回と同じ構成だが、繰り返して。

FreeBSD 8.4-RELEASE の i386 で動かしている。ZFS は /mnt/zfs にプールが作られ、tmp ファイルシステムが作られている。/mnt/zfs/tmp となる。

dd で /dev/zero を 1GB 書き込み比較をする。まずは、 zle 圧縮を有効にした場合。これは前回のものを、そのまま引用。


$ zfs set compression=zle zfs/tmp
% dd if=/dev/zero of=/mnt/zfs/tmp/zero bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes transferred in 17.574036 secs (61098191 bytes/sec)
% dd if=/dev/zero of=/mnt/zfs/tmp/zero bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes transferred in 9.323997 secs (115158963 bytes/sec)
% ls -ls /mnt/zfs/tmp/zero
1 -rw-r--r--  1 uyota uyota  1073741824 May 20 06:20 /mnt/zfs/tmp/zero
こちらのファイルはディスク占用分は 1 になっていた。18 秒と、9 秒。今考えてみると、一回目と二回目の異差は、ディスクの起動時間かもしれない。

lz4 で、再度同じ事を行う。今回はディスクアクセスを直前に行って、回転させている。


$ zfs set compression=lz4 zfs/tmp
% dd if=/dev/zero of=/mnt/zfs/tmp/zero bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes transferred in 6.037585 secs (177842932 bytes/sec)
% dd if=/dev/zero of=/mnt/zfs/tmp/zero bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes transferred in 7.588563 secs (141494751 bytes/sec)
% ls -ls /mnt/zfs/tmp/zero
1 -rw-r--r--  1 uyota  uyota  1073741824 May 29 01:14 /mnt/zfs/tmp/zero

6 秒と 7 秒。ゼロの羅列の競争の判定は lz4 に上がってしまった。

前回