Deaktivieren Sie das RAM-Speicher-Caching für ein bestimmtes Programm

Deaktivieren Sie das RAM-Speicher-Caching für ein bestimmtes Programm

Ich führe einige Benchmarktests mit Binärdateien aus, die in C erstellt wurden. Gibt es eine Möglichkeit, den Kernel anzuweisen, keine Teile dieser Binärprogramme im Cache zu speichern?

Antwort1

Sehen Sie sich die Kernel-Dokumentation zu „drop_caches“ an.

https://www.kernel.org/doc/Documentation/sysctl/vm.txt

Hier ist ein kleiner Abschnitt: -

Writing to this will cause the kernel to drop clean caches, as well as
reclaimable slab objects like dentries and inodes.  Once dropped, their
memory becomes free.

To free pagecache:
    echo 1 > /proc/sys/vm/drop_caches
To free reclaimable slab objects (includes dentries and inodes):
    echo 2 > /proc/sys/vm/drop_caches
To free slab objects and pagecache:
    echo 3 > /proc/sys/vm/drop_caches

This is a non-destructive operation and will not free any dirty objects.
To increase the number of objects freed by this operation, the user may run
`sync' prior to writing to /proc/sys/vm/drop_caches.  This will minimize the
number of dirty objects on the system and create more candidates to be
dropped.

verwandte Informationen