Virtualboxのドキュメントによると、sataコントローラーにホストIOキャッシュを使用すると、システムのパフォーマンスが低下する可能性があります。
同時に、私の場合、ホストioキャッシュを使用する利点がわかります。ホストioキャッシュがsataコントローラーに対してオンになっている場合、DiskCrystalMarkはパフォーマンスが10倍向上します。
私はたくさんのグーグルで調べましたが、質問は少し複雑です。なぜなら、それは多くのニュアンスに依存しているからです。vdiタイプ、サイズなどは、ファイルタイプ、サイズ、アクセスの特性などを格納している場合があります。
たとえば、ファイルベースのストレージ(270ファイル、3ギガバイトのサイズ)を使用するゲストにCRMアプリがあるとします。VMに個別のSATAコントローラを追加し、ホストIOキャッシュをオンにして、個別のVDI(たとえば10ギガバイト)を作成し、その「キャッシュされたコントローラ」に接続し、crm-appファイルストレージをそのディスクに移動しますか?メインシステムドライブを備えたキャッシュされていないコントローラーを残しますか?
または、最初のvm sataコントローラーでシステム全体をホストするキャッシュをオンにできますか?
これらの各ケースの長所と短所は何ですか?
最後に、ホストioキャッシュを使用する場合と使用しない場合の正しいシナリオは何ですか?トラブルのリスクなしでホストioキャッシュを使用する場合
PS:
ホスト:68 GBのRAM HDDを搭載したUbuntu 14サーバーHDD Raid 1 Intel Xeon E5520 x 2(2 * 4コア)Virtualbox 4.3.30
ゲスト:Windows 2012R2 4コア、32 GBのRAM、シングルvdiタイプの標準ディスクを備えたシングルSATAコントローラー。
ホストIOキャッシュをオフにした場合の結果は次のとおりです。
Sequential Read (Q= 32,T= 1) : 123.458 MB/s
Sequential Write (Q= 32,T= 1) : 97.999 MB/s
Random Read 4KiB (Q= 32,T= 1) : 6.899 MB/s [ 1684.3 IOPS]
Random Write 4KiB (Q= 32,T= 1) : 2.131 MB/s [ 520.3 IOPS]
Sequential Read (T= 1) : 122.048 MB/s
Sequential Write (T= 1) : 85.759 MB/s
Random Read 4KiB (Q= 1,T= 1) : 1.597 MB/s [ 389.9 IOPS]
Random Write 4KiB (Q= 1,T= 1) : 1.652 MB/s [ 403.3 IOPS]
しかし、ホストioキャッシュを有効にすると、次のようになります。
Sequential Read (Q= 32,T= 1) : 501.050 MB/s
Sequential Write (Q= 32,T= 1) : 552.461 MB/s
Random Read 4KiB (Q= 32,T= 1) : 26.325 MB/s [ 6427.0 IOPS]
Random Write 4KiB (Q= 32,T= 1) : 21.424 MB/s [ 5230.5 IOPS]
Sequential Read (T= 1) : 653.452 MB/s
Sequential Write (T= 1) : 603.009 MB/s
Random Read 4KiB (Q= 1,T= 1) : 16.561 MB/s [ 4043.2 IOPS]
Random Write 4KiB (Q= 1,T= 1) : 14.950 MB/s [ 3649.9 IOPS]
それで、真実はどこにありますか?
ここで私がグーグルでリンクした、いくつかの矛盾した結果があります:
h__ps://forums.virtualbox.org/viewtopic.php?f = 1&t = 61428