9

Апплет системного монитора Ubuntu постоянно показывает 100% загрузки процессора. Если я щелкну по нему, вкладка ресурсов также покажет его на 100% непрерывно. Если же я пойду к процессам, чтобы выяснить, какой процесс является виновником, то нет ничего выше 10%. Если я бегу сверху, то ничего выше 10%. Отдельные процессы не складываются до 100%. Я пытаюсь убить много процессов, но общее использование по-прежнему составляет 100%. Как я могу узнать, что загружает процессор?

альтернативный текст

Это необычная ситуация на компьютере, которым я пользуюсь ежедневно, который никогда не приближается к 100% ЦП, если я не делаю то, что ему требуется (например, загрузку 32 вкладок Firefox), после чего он возвращается к нормальному уровню простоя. Это не новая установка или что-то еще. Нет причин, по которым процессор должен быть максимально загружен. Я не уверен, когда это началось или я изменил что-то, что вызвало это.

Обычно я использовал top или System Monitor и находил процесс, вышедший из-под контроля, но на этот раз я ничего не нашел с этими инструментами. Сохраняется после перезагрузок и все.

И процессор явно горячий, так что это не ошибочное чтение.

Обновление: я пытался убить каждый процесс, по одному, пока проблема не исчезла, и уничтожение vino-сервера окончательно исправило его, хотя этот процесс никогда не превышал 5%. Я включил Remote Desktop несколько дней назад (и, очевидно, теперь отключил его).

Но остается вопрос: как одному процессу удалось использовать 100% ЦП, в то время как top показал, что этот процесс только на 5%?Как я могу определить виновных в будущем?

Похоже, я не единственный, у кого была эта проблема:

По-прежнему проблема как в веселой, так и в кармической. Интересно, что и системный монитор, и htop не показывают сумму отдельных процессов, находящихся где-то около 100% процессорного времени.

5 ответов5

9

Когда вы говорите «ничего выше 10%», вы имеете в виду «никто не превышает 10%»? Требуется всего 11 вещей на ~ 9%, чтобы достичь 100% в общей сложности.

Кроме того, часть измеренного используемого времени ЦП может быть временем ожидания ввода-вывода - временем, в течение которого процесс может что-то делать, но не потому, что он ожидает ответа устройства ввода-вывода (т. Е. Он сделал запрос на диск). и диск еще не нашел нужный бит данных и вернул его). Вверху, это можно увидеть на линии (ях) ЦП как показатель% wa. Состояние ожидания ввода / вывода немного странно - процессор фактически не занят выполнением каких-либо действий (поэтому, если другой процесс хочет выполнить какое-то вычисление, он сможет), но он учитывается в показателях загрузки системы, поскольку загрузка системы больше представляет чем только процессор активий.

Было бы полезно добавить вывод top -n 1 к вашему вопросу.

Кроме того, если ваше ядро достаточно недавно, чтобы иметь функцию учета ввода-вывода (если вы используете последнюю версию Ubuntu, так и должно быть), и оно включено, вы можете увидеть, какие процессы активно выполняют операции ввода-вывода, запустив iotop -n 1 -ob (iotop может быть не установлен по умолчанию, если у вас его нет, попробуйте установить с помощью apt-get install iotop или найдя его в менеджере пакетов GUI.

2

У меня была похожая проблема. Процессор пыхтел на полную, и ни один из процессов в System Monitor ничего не показывал. Я нашел один ответ, используя команду "top" в окне терминала. Это показало, что apt загружал мой процессор без веской причины. Так почему же System Manager не показал это? Оказывается, есть опция под View для всех процессов; Мой был проверен как Мои процессы, поэтому я никогда не видел виновника. Надеюсь это поможет.

0

У меня та же проблема, но я обнаружил, что Xorg использует 50% ЦП, а это показывает, что его [эту ошибку] можно исправить с помощью команды sudo rmmod ums_realtek . На этот раз Xorg использовал только 5-10% CPU в системном мониторе, но на вкладке ресурсов он все еще показывал 100%.

Пока я наблюдал за системным монитором, я увидел мерцание рута, используя 100% CPU! У меня не было времени, чтобы увидеть, что это было, но я уверен, что это как-то связано с этим.

-1

Первый вопрос - кажется ли ваша система медленной или не отвечает. В конце концов, это ваш процессор, вы заплатили за него, и у вас есть право использовать его в полном объеме для ваших целей. Второй вопрос заключается в том, пытаетесь ли вы сделать слишком много с вашей системой, и вам следует подумать об обновлении, если это возможно. В моем первом Linux-боксе было медленное 486, и его было действительно легко превзойти. Например, если вы работаете на OLPC XO, ваши ресурсы действительно ограничены.

Серьезно, вы вряд ли будете одновременно использовать множество чрезмерных ресурсов. Если ни один процесс не занимает более 10%, то ваша система гибнет от уток, и вы не сможете уменьшить нагрузку, не уменьшив то, что вы делаете.

При этом проверьте системные службы и отключите те из них, которые вам не нужны. Попробуйте удалить те, которые действительно вам не нужны (sudo apt-get remove foo). В частности, если вы перегружаете систему, любое снижение нагрузки может только помочь. Попробуйте выйти из программ, которые вы не используете.

Если есть один процесс, который использует все доступные процессоры, попробуйте найти его, запустив top и отметив, какой процент ресурсов используют основные процессы. Когда вы убиваете нескольких, посмотрите, поднимается ли один быстрее других. Конечно, убийство такого процесса не принесет вам столько денег, так как это не более 10% нагрузки.

-1
  1. apt-get install cpufrequtils
  2. открыть /etc/rc.conf
  3. добавьте в Модули следующее: MODULES=( # your-modules-not-touch # acpi-cpufreq cpufreq_ondemand cpufreq_performance)
  4. перезагружать

После перезагрузки вы должны запустить cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors чтобы увидеть, какие модули загружены.

Во время работы вы можете менять губернаторов на то, что соответствует вашим потребностям. Например:

  • cpufreq-set -r -g ondemand

Вы можете использовать один из следующих регуляторов:

  • производительность: он запускает процессор с максимальной тактовой частотой (модуль: cpufreq_performance)
  • ondemand: динамически переключается между доступными тактовыми частотами процессора (ов) в зависимости от нагрузки sys (модуль: cpufreq_ondemand)
  • консервативно: аналогично ondemand , но тактовая частота процессора (ов) постепенно переключается на все доступные частоты (в зависимости от нагрузки sys) (модуль: cpufreq_conservative)
  • powersave: ЦП работает с минимальной скоростью (модуль: cpufreq_powersave)
  • userspace: позволяет пользователю вручную устанавливать тактовую частоту процессора. (модуль: cpufreq_userspace)

Если вы используете GNOME2, есть апплет, который удивителен.

  1. Щелкните правой кнопкой мыши на панели
  2. Добавить апплет
  3. начните вводить: CPU , вы должны увидеть это :)
  4. Нажмите кнопку Add

Используя этот апплет, вы можете переключаться между доступными регуляторами (вы добавляли их в /etc/rc.conf ранее).

Например, я все время использую ondemand , потому что мне не нужна полная производительность для запуска eclipse и эмулятора Android на моем ArchLinux:P

Summa Summarum - Google для cpufrequtils и узнать, как его использовать :) Это pckg сэкономил мое время и деньги; D

Ура!

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .