Патч для cgroup

Я недавно читал статью на OMG Ubuntu о патче ядра для 2.6.38. На Phoronix было показано видео, демонстрирующее улучшение производительности после установки этого патча.
На ask.ubuntu.com было предложено два варианта патча, с использованием cgroups. Ниже показан один из них.

apt-get install cgroup-bin


редактируем /etc/cgconfig.conf

mount {

cpu = /mnt/cgroups/cpu;
cpuacct = /mnt/cgroups/cpuacct;
devices = /mnt/cgroups/devices;
}

group . {
perm {
task {
uid = root;
gid = adm;
}
admin {
uid = root;
gid = adm;
}
}
cpu {
}
}


перезапускаем cgconfig

sudo /etc/init.d/cgconfig restart

и добавляем в .bashrc, следующее

if [ «$PS1» ] ; then
mkdir -m 0700 -p /mnt/cgroups/cpu/$$
echo 1 > /mnt/cgroups/cpu/$$/notify_on_release
echo $$ > /mnt/cgroups/cpu/$$/tasks
fi


Создаем файл /bin/rmcgroup, с содержимым:

#!/bin/bash

rmdir /mnt/cgroups/cpu/$1


Установим файлу права на исполнение

chmod a+x /bin/rmcgroup

запускаем с под root’а

echo «/bin/rmcgroup» > /mnt/cgroups/cpu/release_agent

Это позволит удалить PID при выходе.

Вы также можете положить это скрипт в /etc/rc.local или запускать cgconfig файл каждый раз самостоятельно.


При запуске терминала Вы должны заметить в /mnt/cgroups/cpu директорию с PID вашего процесса. Это должно быть все что необходимо в соответствии с сообщениями. 

Источник stefan’s blog

1 Comment to Патч для cgroup

  1. Это для какого ядра? 2.6.38 или другие можно патчить?

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *