FreeBSDを8系にアップしたので再度zfsのテスト。
環境は CPU : P4 – 3.2GHz / mem : 1G / HDD 160GB x 3, 60G x 1
OS : FreeBSD 8.1-stable i386 2010-11-13頃のもの。
160GB x 3でraidzを作成。60GBはその他作業用。
loader.confのメモリ関係の設定は
vm.kmem_size_max="700M"
vm.kmem_size="700M"
vfs.zfs.arc_max="175M"
R/Wテスト
FreeBSDのcvs-repositoryの展開を 3つ同時に走らせる。
swap無しだと数分でOSごと固まる。 zvolで4G分swapをとってもほぼ同じ。
60GBのHDDに4G分swapを取るとこけなくなるが、まれに書き込みエラーで展開がアボートする。
7系のzfsよりも格段によくなっているが高負荷が長時間続くとまれに異常な動きをするようだ。
メモリテスト
以下のスクリプトを作って3つ同時に走らせる。
#!/bin/sh
echo `yes`
swap無しの場合はメモリを食いつぶした時点でプロセスが死んで終了。特に影響無し。
zvolで4G取ってswapにした場合、pageoutがしばらく続いて反応がなくなる。zvolにディスクが100%割り当てられている状態でも同じだった。
60GB HDDに普通のswapを4G取った場合、各プロセスがメモリの上限に達して死ぬ。OSには影響無し。これプラスrepository展開を同時にやった場合は途中で反応がなくなった。メモリとディスク両方が高負荷だとダメなようだ。
極端なテストだけどディスク高負荷やメモリ不足で反応しなくなるのは困る。
メモリがもっとあればもうちょっと耐えられるかもしれんが、i386のzfsはまだ実用にするには厳しいかな。
amd64の方はどこまで耐えられるだろう?