Pufferung in einer VM-Konfiguration deaktivieren

Pufferung in einer VM-Konfiguration deaktivieren

Ich führe einige Benchmarks mit einem DBMS und virtuellen Maschinen aus. Und ich verwende diesen Befehl

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

auf jedem Gast und auf jedem Host, bevor eine Abfrage ausgeführt wird, um die Auswirkungen von Cache/Pufferung auf meine Ausführungszeit zu minimieren. Wenn die Daten zwischengespeichert/gepuffert werden, kann die Ausführungszeit für eine Abfrage je nach der zuvor ausgeführten Abfrage variieren, da sich ein Teil der zur Beantwortung der Abfrage verwendeten Datei möglicherweise im Speicher befindet.

Ich habe diesen Beitrag gesehen: Wie leeren Sie die Puffer und den Cache auf einem Linux-System?

Für mich ist es jedoch etwas schwierig, nach jeder Abfrage Sync/Drop-Caches auszuführen. Ich muss jede VM und jeden physischen Server auffordern, Caches zu synchronisieren/löschen. Ich könnte ein Skript schreiben und SSH dafür verwenden, aber ich frage mich, ob es eine Möglichkeit gibt, das Betriebssystem davon abzuhalten, die Dateien zu puffern/zwischenzuspeichern, weil das für mich einfacher wäre.

Ich verwende Ubuntu 12.04 auf allen VMs (mit KVM) und Servern.

Antwort1

Verwenden Sie etwas wiehttps://code.google.com/p/linux-ftools/um alle vom Datenbanksystem verwendeten Dateien als FADV_DONTNEED zu markieren?

verwandte Informationen