KVM (virtio) のI/Oパフォーマンス評価
測定環境は下記のとおり。
4並列でのランダムアクセス (16KB)
ホスト | ゲスト (cache=writethrough) | ゲスト (cache=none) | |
Read | 207.7 | 138.3 | 187.4 |
Write | 137.6 | 122.6 | 133.8 |
単位は IOPS。測定に使ったのは randombench.cc。
7200rpm のディスクなので、ホストでの read 時と、ゲスト (cache=none) での read 時に NCQ が効いていることがわかる。この程度の落ち込みなら OK かな。
シーケンシャルアクセス
ホスト | ゲスト (cache=none) | |
Read | 72.4 | 57.5 |
Write | 28.1 | 21.3 |
単位は MB/秒。測定方法は、
dd if=/dev/zero of=foo bs=10485760 count=100 oflag=direct dd if=foo of=/dev/null bs=10485760 count=100 iflag=direct
16:46 追記: cache=none の場合の値を追加。シーケンシャルアクセスの測定手法を O_DIRECT に変更
参考: Video: JLS - The KVM qemu storage stack - dougsland, http://www.linuxfoundation.jp/jp_uploads/JLS2009/jls09_hellwig.pdf