Wie stelle ich pro Prozess Swapiness für Linux ein?

29

/proc/sys/vm/swappinessist nett, aber ich möchte einen knopf, der pro zess gefällt /proc/$PID/oom_adj. Damit ich bestimmte Prozesse weniger wahrscheinlich als andere machen kann, dass ihre Seiten ausgetauscht werden. Im Gegensatz zu memlock(), verhindert aber nicht ein Programm aus ausgelagert werden. Und wie nice, der Benutzer kann nicht standardmäßig ihre Programme weniger wahrscheinlich machen, sondern nur wahrscheinlicher, dass sie ausgetauscht werden. Ich glaube, ich musste das nennen /proc/$PID/swappiness_adj.

Dan D.
quelle

Antworten:

30

Sie können swappiness pro cgroup konfigurieren:

http://www.kernel.org/doc/Documentation/cgroup-v1/cgroups.txt

http://www.kernel.org/doc/Documentation/cgroup-v1/memory.txt

Eine einfachere Einführung in cgroups mit Beispielen finden Sie unter

https://access.redhat.com/site/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Resource_Management_Guide/ch01.html

Lass mich sein
quelle
2
Beachten Sie, dass das Aktivieren von memory-cgroup gemäß dem RedHat-Handbuch zusätzlichen Speicher benötigt (40 Byte pro Seite). Betrachten Sie riesige Seiten, um die Anzahl der Seiten in diesem Kontext zu verringern. Siehe wiki.debian.org/Hugepages
Tino