здравствуйте. на дедике стоит debian 7 wheezy
интересует как задать определенному скрипту или процессу определенное ядро и количество памяти.
т.е. я хочу поставить 3 игровых сервера. и на каждый хочу выделить 1 гб ОЗУ и 1 ядро 3000Mhz как это сделать?
++++
на сервере стоит ISPManager lite и стандартный веб пакет. Mysql-php-proftd-squirellmail-apache и тп.
я не понимаю почему постоянно из 4 гигов оперативной памяти сервер начинает жрать 1 гб потом 2гб потом 3гб
и так до тех пор пока я не пропишу echo 3 > /proc/sys/vm/drop_caches далее занятость оперативной памяти падает обратно до 200мб.
что это? относиться ли это к системе или же это настройки сервера?
как выделить на процесс определенное ядро и количество памяти?
По первому вопросу cgroups, по второму надо смотреть на вывод free и почитать linux virtual memory документацию.
т.е. я хочу поставить 3 игровых сервера. и на каждый хочу выделить 1 гб ОЗУ и 1 ядро 3000Mhz как это сделать?
для памяти можно ulimit использовать... про cgroups уже сказали...
но сначала надо трижды подумать, действительно ли оно надо...
что это? относиться ли это к системе или же это настройки сервера?
http://www.linuxatemyram.com/
у меня раньше был VPS 512 мб
и каждый раз там память увеличивалась до максимума.
сервер начинал ругаться couldnt allocate memory
и как тогда понимать, что линуха должна сама разгружать кеш?
процесс к процессору это taskset.
у меня раньше был VPS 512 мб
без логов/доступа к железке это гадание по ауре... возможно, действительно вся память съедалась именно приложениями...
процесс к процессору это taskset.
ЕМНИП это не распростаняется на потомков процесса.
хорошо. а такая функция как приоритет для процесса(низкий-средний-высокий-реального времени) есть в линухе? как прописать через командную строку?
можно закрыть. пробую renice
[quote=dyasny]процесс к процессору это taskset.
ЕМНИП это не распростаняется на потомков процесса.[/quote]
да, но никто не мешает прогонять taskset или sched_setaffinity() или cpuset() сразу после fork(), или извне. Вариантов много
т.е. я хочу поставить 3 игровых сервера. и на каждый хочу выделить 1 гб ОЗУ и 1 ядро 3000Mhz как это сделать?
лучше не надо.
я не понимаю почему постоянно из 4 гигов оперативной памяти сервер начинает жрать 1 гб потом 2гб потом 3гб
а что в этом плохого? Пусть жрёт.
хорошо. а такая функция как приоритет для процесса(низкий-средний-высокий-реального времени) есть в линухе? как прописать через командную строку?
nice -X командаman 1 nice