LINUX.ORG.RU

определить более свободное ядро перед запуском приложения

 


0

1

Нужно запускать приложения с привязкой к ядру, пытаюсь это автоматизировать, но как можно получить информацию какое ядро более свободное и потом чтобы на него привязывал скрипт приложение.


ядро linux

До сих пор непонятно, что ты имеешь ввиду: ядро ОС или ядро цпу. Если второе, то парсить /proc/stat (man sed,awk)

Unicode4all ★★★★★
()

Из скриптиков разве можно привязывать «приложения» на ядра процессора? Знаю токо сисколы.

Да и зачем тебе это надо?

unt1tled ★★★★
()
Ответ на: комментарий от unt1tled

нужно заставить панель управления игровыми серверами, научить привязывать игровые сервера к ядрам. Для этого перед запуском, панель должна знать какое ядро на дедике более свободное и туда запустить игровой сервер с привязкой

User01
() автор топика
Ответ на: комментарий от User01

научить привязывать игровые сервера к ядрам.

Никогда так не делай, любитель приваточек.

devl547 ★★★★★
()

пока будешь определять, занятое может разгрузится

anonymous
()
Ответ на: комментарий от post-factum

mpstat сидел минут 5 обновлял, одну и ту же инфу выводит. Мне нужно по запросу к оборудованию сразу получать информацию какое ядро менее загружено

User01
() автор топика
Ответ на: комментарий от User01

Я так понимаю, правильная статистика по загруженности выдаётся только за некоторое время, а не моментально. top в пакетном режиме тоже так работает.

Как вариант, можешь пускать mpstat или top с секундным интервалом и парсить его выхлоп:

top -n2b | grep -E '%Cpu[[:digit:]]*' | tail -n 2
post-factum ★★★★★
()
Последнее исправление: post-factum (всего исправлений: 2)

Ну определишь ты наиболее свободное ядро, запустишь на нём что-то. Потом придёт скедулер и загрузит его. Отличный план.

fmdw
()
Ответ на: комментарий от fmdw

Лично проверял, когда запускаю приложение с tascset и указываю ядро, fps держится стабильно, когда без привязки, он начинает как дурной прыгать по ядрам и fps прыгает 950-200 и тд. Поэтому нужно перед запуском приложения, быстро получить информацию, какое ядро менее загружено и на него привязывать.

User01
() автор топика
Ответ на: комментарий от User01

нет никаких более свободных ядер, шедулер пытается загрузить всё что доступно дабы ничто не простаивало

тебе нужен cpuset

anonymous
()
Ответ на: комментарий от four_str_sam

renice -20 chrt -f -p 98 процессу выставлял, по началу практически перестал прыгать по ядрам, но с запуском еще таких же процессов с таким же приоритетом, скачки начались чаще

User01
() автор топика
Ответ на: комментарий от User01

А если тупо раздать каждому ресурсоемкому процессу по ядру? А там планировщик сам оставшиеся ресурсы распределит.

Кстати, твои процессы однопоточные, что ли?

four_str_sam
()
Ответ на: комментарий от four_str_sam

да, однопоточные, это hlds Серверов больше чем ядер)

User01
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.