Ich möchte das Tauschen nur für einen Prozess deaktivieren. Swap sollte für die anderen Prozesse wie gewohnt funktionieren.
Wie kann ich das mit cgroups umsetzen?
Aus der Kernel-Dokumentation zu memory.swappiness:
5.3 swappiness
Ähnlich wie / proc / sys / vm / swappiness, wirkt sich jedoch nur auf eine Hierarchie von Gruppen aus.
Die Austauschbarkeit der folgenden Gruppen kann nicht geändert werden.
- root cgroup (verwendet / proc / sys / vm / swappiness).
- Eine C-Gruppe, die eine Hierarchie verwendet und andere C-Gruppen darunter hat.
- Eine C-Gruppe, die Hierarchie verwendet und nicht die Wurzel der Hierarchie.
Über das Red Hat-Kundenportal:
memory.swappiness
Legt die Tendenz des Kernels fest, den von Tasks in dieser C-Gruppe verwendeten Prozessspeicher auszutauschen, anstatt Seiten aus dem Seiten-Cache zurückzugewinnen. Dies ist die gleiche Tendenz, wie sie in / proc / sys / vm / swappiness für das gesamte System festgelegt wurde. Der Standardwert ist 60. Werte unter 60 verringern die Tendenz des Kernels, den Prozessspeicher auszutauschen, Werte über 60 erhöhen die Tendenz des Kernels, den Prozessspeicher auszutauschen, und Werte über 100 ermöglichen es dem Kernel, Seiten auszutauschen, die Teil von sind Der Adressraum der Prozesse in dieser Gruppe.
Beachten Sie, dass der Wert 0 das Auslagern des Prozessspeichers nicht verhindert. Das Auslagern kann immer noch vorkommen, wenn der Systemspeicher knapp wird, da die globale Verwaltungslogik für den virtuellen Speicher den Wert cgroup nicht liest. Verwenden Sie mlock () anstelle von cgroups, um Seiten vollständig zu sperren.
:: Sie können den Swap-Status der folgenden Gruppen nicht ändern:
* Die Root-C-Gruppe, die den in / proc / sys / vm / swappiness festgelegten Swap-Status verwendet.
* Eine C-Gruppe, unter der sich untergeordnete Gruppen befinden.
BEARBEITEN: Wenn Sie genau wissen möchten, wie Sie es einstellen sollen, stellen Sie es genauso ein wie die meisten anderen cgroup-Attribute:
# cd /mnt/cgroup/<cgroupName>
# cat memory.swappiness
60
# echo "59 " > memory.swappiness
# cat memory.swappiness
59
/tmp
als gemountettmpfs
? unix.stackexchange.com/q/146490/56970