VM構成でバッファリングを無効にする

VM構成でバッファリングを無効にする

DBMSと仮想マシンを使用してベンチマークを実行しています。このコマンドを使用しています

free && sync && echo 3 > /proc/sys/vm/drop_caches && free

クエリを実行する前に、各ゲストおよび各ホストで、キャッシュ/バッファリングが実行時間に与える影響を最小限に抑えます。データがキャッシュ/バッファリングされている場合、クエリの実行時間は、以前に実行されたクエリに応じて異なる場合があります。これは、クエリに応答するために使用されるファイルの一部がメモリ内にある可能性があるためです。

私はこの投稿を見ました: Linux システムでバッファとキャッシュを空にするにはどうすればよいでしょうか?

しかし、私にとっては、各クエリの後にキャッシュの同期/削除を実行するのは少し難しいです。すべての VM とすべての物理サーバーにキャッシュの同期/削除を要求する必要があります。スクリプトを書いて SSH を使用してこれを行うこともできますが、OS がファイルをバッファリング/キャッシュしないようにする方法があるかどうか疑問に思っています。その方が簡単だからです。

私はすべての VM (KVM を使用) とサーバーで Ubuntu 12.04 を使用しています。

答え1

次のようなものを使用してください参考:データベース システムで使用されるすべてのファイルを FADV_DONTNEED としてマークしますか?

関連情報