Вимкнення заміни лише для одного процесу з групами?


15

Я хотів би вимкнути заміну лише для одного процесу. Зміна повинна працювати як завжди для інших процесів.

Як я можу це реалізувати з групами?

Відповіді:


9

З документації на ядро, що стосується пам'яті.

5.3 swappiness

Подібно до / proc / sys / vm / swappiness, але впливає лише на ієрархію груп.

Помітність наступних груп не може бути змінена.
- коренева група (використовує / proc / sys / vm / swappiness).
- група, яка використовує ієрархію і має інші під ними групи.
- група, яка використовує ієрархію, а не корінь ієрархії.

Від порталу клієнтів Red Hat:

memory.swappiness

встановлює схильність ядра до заміни процесорної пам'яті, використовуваної завданнями в цій групі, замість повернення сторінок із кеша сторінки. Це та сама тенденція, обчислена так само, як встановлена ​​в / proc / sys / vm / swappiness для системи в цілому. Значення за замовчуванням - 60. Значення нижчі за 60 зменшують схильність ядра до заміни процесорної пам'яті, значення більше 60 збільшують схильність ядра до заміни процесорної пам’яті, а значення, що перевищують 100, дозволяють ядру міняти сторінки, що входять до складу адресний простір процесів у цій групі.

Зверніть увагу, що значення 0 не перешкоджає заміщенню оперативної пам'яті; своп може все-таки статися, коли бракує системної пам’яті, оскільки глобальна логіка управління віртуальною пам’яттю не зчитує значення групи. Щоб повністю заблокувати сторінки, використовуйте mlock () замість груп.

:: Ви не можете змінити свопість у наступних групах:
* коренева група, яка використовує свопість, встановлену в / proc / sys / vm / swappiness.
* група, яка має дочірні групи під нею.

EDIT: Якщо вам цікаво точно знати, як його встановити, ви встановите його так само, як і більшість інших атрибутів групи:

 # cd /mnt/cgroup/<cgroupName>
 # cat memory.swappiness
 60
 # echo "59 " > memory.swappiness
 # cat memory.swappiness
 59

А як щодо файлів, /tmpвстановлених всередині tmpfs? unix.stackexchange.com/q/146490/56970
CMCDragonkai

Добре, що ви цитували тут відповідну частину документації на ядро ​​- посилання порушено.
mgarey

Посилання на документацію на ядро ​​linux порушено. Використовуйте це замість kernel.org/doc/Documentation/cgroup-v1/memory.txt
Ендрю Ейзенберг

@AndrewEisenberg Не соромтесь редагувати відповідь, якщо хочете
Братчлі

Гммм ... не дозволить мені. Каже, що правка повинна бути більше 6 символів. Напевно, недостатньо репутації.
Ендрю Айзенберг
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.