ubuntu kvm ディスク IO がしばらくすると遅くなる

ubuntu kvm ディスク IO がしばらくすると遅くなる

ホストシステム:

Ubuntu Server x64 12.04 
mdadm raid 1 (/dev/sda /dev/sdb)
no lvm
dd bs=1M count=256 if=/dev/zero of=filename conv=fdatasync
avarage ~ 40 MB/s

NCQ on disks is disabled
WriteCache is disables

ゲストシステム:

Ubuntu server i386 12.04
with lvm2 /10Gb /200Gb /200Gb disks all on lv-root (LV)
  --- Physical volume ---
  PV Name               /dev/vda5
  VG Name               root-vg
  PV Size               9.76 GiB / not usable 2.00 MiB
  Allocatable           yes (but full)
  PE Size               4.00 MiB
  Total PE              2498
  Free PE               0
  Allocated PE          2498

  --- Physical volume ---
  PV Name               /dev/vdb
  VG Name               root-vg
  PV Size               195.31 GiB / not usable 4.00 MiB
  Allocatable           yes (but full)
  PE Size               4.00 MiB
  Total PE              49999
  Free PE               0
  Allocated PE          49999

  --- Physical volume ---
  PV Name               /dev/vdc
  VG Name               root-vg
  PV Size               195.31 GiB / not usable 4.00 MiB
  Allocatable           yes (but full)
  PE Size               4.00 MiB
  Total PE              49999
  Free PE               0
  Allocated PE          49999

 dd bs=1M count=256 if=/dev/zero of=filename conv=fdatasync
    avarage ~ 30 MB/s
all disks in guest are RAWformat /VirtioBUS / No cache / IOmode=native

しばらくすると書き込み速度が 1 MB/秒に低下しますが、ホスト システムはロードされておらず、dd テストでは同じく 30 ~ 40 MB/秒、CPU 使用率は 10% と表示されます。ゲストの再起動はしばらくは役立ちます。エラーや障害はなく、mdadm の再構築や再同期もありません。

どこに問題があるのか​​、どこを掘ればいいのか全く分かりません。


ゲストではこれが役立つようです: sync && echo 3 > /proc/sys/vm/drop_caches


同様の問題64GBのメモリを搭載したシステムでは、ddでデバイスnullにコピーしている間、Linuxバッファがいっぱいになり、手動でdrop_cachesを実行するまでIOが停止します。

答え1

30~40 MB/秒の初期パフォーマンスは、Linux カーネルのキャッシュ (およびハードウェア レベルで実行されるその他のキャッシュ) によるものだと思います。キャッシュが「使い果たされると」、実際のディスク アクセスが開始され、パフォーマンスが低下します。

さらに、ddより良いパフォーマンスを得るためにはbs=引数を適度に大きなサイズに設定してください。個人的には、利用可能なRAMの1/3〜1/2程度に設定するのが好きです。1Mの設定は最適ではなく、パフォーマンスの数値が低い主な理由です。しかし、最適な設定でもbs=設定すると、上で説明したように、ある時点でパフォーマンスが低下します。

関連情報