在虛擬機器配置中停用緩衝

在虛擬機器配置中停用緩衝

我正在使用 DBMS 和虛擬機器執行一些基準測試。我正在使用這個命令

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

在執行查詢之前,在每個來賓和每個主機上,以盡量減少快取/緩衝對執行時間的影響。如果資料被快取/緩衝,則查詢的執行時間可能會根據先前執行的查詢而有所不同,因為用於回答查詢的檔案的一部分可能位於記憶體中。

我看到了這個帖子: 如何清空 Linux 系統上的緩衝區和快取?

但對我來說,在每次查詢後執行同步/刪除快取有點棘手。我需要要求每個虛擬機器和每個實體伺服器同步/刪除快取。我可以編寫一個腳本,並使用 SSH 來執行此操作,但我想知道是否有一種方法可以阻止作業系統緩衝/快取文件,因為這對我來說會更容易。

我在所有虛擬機器(使用 KVM)和伺服器上使用 Ubuntu 12.04。

答案1

使用類似的東西https://code.google.com/p/linux-ftools/將資料庫系統使用的所有檔案標記為FADV_DONTNEED?

相關內容