Ограничение CPU на процесс

Тема в разделе "Linux", создана пользователем Vit_ amin, 2 окт 2012.

  1. Vit_ amin

    Vit_ amin BotManager001

    Сообщения:
    1.050
    Симпатии:
    344
    Как ограничить количество CPU на процесс с помощью команды nice ?

    Добавлено через 2 часа 16 минут
    Неправильно сказал перефразирую фразу.
    Как поставить приоритет на каком то процессе через команды nice.
    В интернете читал не пойму синтаксис команды.
     
    Последнее редактирование: 2 окт 2012
  2. ZloyMonah

    ZloyMonah

    Сообщения:
    479
    Симпатии:
    71
    Запускаешь сервер, так! вводишь top смотрим pid нашего процесса, скажем он 24148 и дальше от root

    renice -n -20 -p 24148

    таким образом мы ставим процессу с пидом 24148 самый высокий приоритет -20! если нужно самый малый то 20

    то есть
    -20
    -19
    -18
    .....
    0
    .....
    18
    19
    20

    Вот так! То есть -20 самый высокий!! )))))
     
    Vit_ amin нравится это.
  3. Vit_ amin

    Vit_ amin BotManager001

    Сообщения:
    1.050
    Симпатии:
    344
    ПоЯвилось еще 2 вопроса.
    1. Если сервер упадет и снова запуститься то приоритет будет такой же как до краша?
    2.Как мне замутить это в крон?
     
  4. Rt.

    Rt.

    Сообщения:
    396
    Симпатии:
    121
    Vit_ amin, приоритет нужно устанавливать каждый раз, т.к. pid процесс уже другой.
    в кроне лови pid процесса
    где-то на форуме валяется давно уже, как ловить pid сервера
     
  5. tiger_by

    tiger_by Гл. Админ SourceGames.RU

    Сообщения:
    629
    Симпатии:
    279
    Как как. ps в помощь.
    Код:
    ps ax | grep proc_name | grep -v grep | awk '{print $1}'
     
    Vit_ amin нравится это.
  6. Vit_ amin

    Vit_ amin BotManager001

    Сообщения:
    1.050
    Симпатии:
    344
    ps ax | grep srcds_i686 | grep -v grep | awk '{print $1}'
    так получается ?
     
  7. tiger_by

    tiger_by Гл. Админ SourceGames.RU

    Сообщения:
    629
    Симпатии:
    279
    Видать да. На выходе получишь pid.
     
  8. ZloyMonah

    ZloyMonah

    Сообщения:
    479
    Симпатии:
    71
    Да! Но если у тебя три сервака, то на выходе получим три пида!!! Каждый с новой строки!!
     
  9. tiger_by

    tiger_by Гл. Админ SourceGames.RU

    Сообщения:
    629
    Симпатии:
    279
    Поэтому я грепаю по номеру порта сервера.
     
    Vit_ amin нравится это.
  10. Vit_ amin

    Vit_ amin BotManager001

    Сообщения:
    1.050
    Симпатии:
    344
    У меня их больше сюда не влезли картинки, тогда получается как изменить код и все добавить в крон ?
     
  11. tiger_by

    tiger_by Гл. Админ SourceGames.RU

    Сообщения:
    629
    Симпатии:
    279
    Скрины сюда бы влил http://rghost.ru/
    А сюда ссыли.

    Вообще допиши в старт скрипт
    Код:
    renice -n -20 -p $(ps ax | grep proc_name | grep -v grep | awk '{print $1}')
     
    Vit_ amin нравится это.
  12. Vit_ amin

    Vit_ amin BotManager001

    Сообщения:
    1.050
    Симпатии:
    344
    Ок щас попробую спасибо а насчет картинок.Пишет больше 3-ех нельзя :)
    P.S. А разве писать надо не nice а не renice это же вроде бы как изменение уже существующего процесса с приоритетом?
     
  13. tiger_by

    tiger_by Гл. Админ SourceGames.RU

    Сообщения:
    629
    Симпатии:
    279
    Ок, тогда в старт скрипте перед командой запуска
    Код:
    nice -n -20 ./srcds_run -game.....
    Будет сразу давать нужный приоритет процессу
     
    Vit_ amin нравится это.
  14. Vit_ amin

    Vit_ amin BotManager001

    Сообщения:
    1.050
    Симпатии:
    344
    А этот приоритет останется если сервер упадет ? И опять начнет работать
     
  15. KorDen

    KorDen Atra esterní ono thelduin! Ньюсмейкер

    Сообщения:
    2.194
    Симпатии:
    1.398
    Там их и будет больше потому что srcds_run запускает дочерние srcds_linux, и у всех одинаковые параметры - отличить проблематично....
     
  16. tiger_by

    tiger_by Гл. Админ SourceGames.RU

    Сообщения:
    629
    Симпатии:
    279
    Я говорю, поправь старовый скрипт, и все будет чики пуки.
     
  17. Vit_ amin

    Vit_ amin BotManager001

    Сообщения:
    1.050
    Симпатии:
    344
    То есть у меня получается так ?
    @reboot sleep 60;cd /root/zombie && nice -n -4 ./srcds_run +exec zriot +mm_pluginsfile zriot.ini +sm_basepath zriot +sv_logsdir zriot/logs
     
  18. tiger_by

    tiger_by Гл. Админ SourceGames.RU

    Сообщения:
    629
    Симпатии:
    279
    Именно. Но лучше иметь еще скрипт для start|stop|restart и само собой не в кронтабе.
     
    Vit_ amin нравится это.
  19. Vit_ amin

    Vit_ amin BotManager001

    Сообщения:
    1.050
    Симпатии:
    344
    Спасибо за ответы тему можно закрыть.

    Добавлено через 51 минуту
    СТОП!
    Так если самый высокий приоритет к примеру -20, тогда почему мы пишем так
    nice -n -20 а не так
    nice -n --20 ?
    Или я чего то не понимаю ?
     
    Последнее редактирование: 4 окт 2012
  20. ZloyMonah

    ZloyMonah

    Сообщения:
    479
    Симпатии:
    71
    nice, это команда, -n это ключик для этой команды, а -20 это значение!!

    nice -[ключ] [команда значения] ....
     
    Vit_ amin нравится это.