Re: Динамически включать-выключать CPU
2011/9/10 Иван Лох <loh@1917.com>:
>> И узнать, какой процесс как называется, никак нельзя? А то kswapd0
>> вроде тоже в контексте ядра должен быть, а top знает как его зовут.
>
> ps aux -- те, что в квадратных скобках
Нагуглил другой способ - спасибо за ключевые слова, без них не нагуглилось.
cat /proc/$pid/status | grep name
> Пока syslog не запущен то printk только так. А потом можно logger
У меня "вместо init", значит printk. Значит Си. Я пока пытаюсь Сей
избежать, так что обойдусь :) Хотя если где-нибудь есть исходник, из
коего можно сделать /bin/printk...
При помощи простенького питонного скрипта с os.system() я узнал, какие
же процессы у меня остались не в новом cpuset:
Name: migration/0
Name: ksoftirqd/0
Name: watchdog/0
Name: migration/1
Name: ksoftirqd/1
Name: watchdog/1
Name: events/0
Name: events/1
Name: kintegrityd/0
Name: kintegrityd/1
Name: kblockd/0
Name: kblockd/1
Name: kondemand/0
Name: kondemand/1
Name: aio/0
Name: aio/1
Name: crypto/0
Name: crypto/1
Name: ata/0
Name: ata/1
Для сравнения:
$ cat /proc/31/status | grep Name
Name: kswapd0
Таким образом, /0 или /1 это такие CPU affinity. Это подтверждается
просмотром полного /proc/$pid/status - там есть пункт
Cpus_allowed_list и в нём для данных процессов указан 0 или 1.
Более того. Точно такие же процессы имеются при isolcpus=1 - и для CPU
1 тоже. Значит, мне удалось полностью реплицировать isolcpus на
cpusets.
Прикол в том, что на эту тему нагуглился разговор в LKML, там isolcpus
хотели отменить, но нашлись юзеры, его применяющие. Вот переписать моё
решение на Сях, уонфиг ему сделать - и закинуть в LKML как
уж-совсем-полный аналог isolcpus?
Ладно, это потом, сначала узнаем, пропадут ли зависы. Пока погонял
сколько-то с no_hz=off - не зависло, а обычно с ним висло быстро...
(И кстати, если пропадут - стоит ли пытаться искать баг, возвращая
задачи на оба процессора? Или заработало - и ладно? Или можно так:
заработало - и ладно, но написать в ЖЖ на английском и русском
решение, чтобы следующие напоровшиеся смогли его найти?)
Кстати, всем огромное спасибо - я бы не добрался до столь странного
решения без КУЧИ подсказок.
--
Yours, Mikhail Ramendik
Unless explicitly stated, all opinions in my mail are my own and do
not reflect the views of any organization
Reply to: