На Linux, как сказать, сколько ядер машины активно?

На Linux, как сказать, сколько ядер машины активно? Я предполагаю, что тест для этого работал бы на Android также. Я должен знать, активно ли больше чем одно ядро когда-либо. Удивление должно было протестировать, это при наличии процесса создает много потоков. Для потока действительно ли возможно запросить, какой процессор это идет? тем путем можно сказать, будут ли несколько ядер когда-либо использоваться под большой нагрузкой. Не уверенный, если я на правильном пути.

13
задан 25.01.2011, 00:32

3 ответа

Можно использовать top перечислять использование каждого ядра. Нажмите 1 при необходимости для разделения строки ЦП на отдельную строку для каждого ядра.

Можно также добавить столбец, который показывает используемое в последний раз ядро для каждого процесса. Нажмите f для перевода в рабочее состояние cписка полей, затем j для активации столбца "P". Затем нажмите пространство для возврата к предпросмотру в реальном времени.

18
ответ дан 07.12.2019, 11:30

ps назвали поле psr сказать Вам, на которых работает процессор задание.

Таким образом, Вы могли использовать что-то как:

ps -e -o psr= | sort | uniq | wc -l

Отметьте это просто выполнение ps как это, конечно, сделает по крайней мере одно ядро активным.

Вероятно, лучше должен выполнить это:

tmp=/tmp/ps.$$
ps -e -o psr= > /tmp/ps.$$
sort -u "$tmp" | wc -l
rm "$tmp"

тот путь sort и wc не увеличивайте количество.

6
ответ дан 07.12.2019, 11:30

Попробуйте следующее:

cat /proc/cpuinfo

Вот ссылка на пример Java Android.

2
ответ дан 07.12.2019, 11:30

Теги

Похожие вопросы