Gnome Shell и высокая загрузка процессора

Я использую Ubuntu 18.04 на старом (ish) ноутбуке, это hp dv7 6180sl с обновленным ram (16 Гб) и SSD. Он старый, но все еще достаточно быстрый для моей работы.

Поскольку несколько версий Ubuntu (я всегда делаю полную переустановку при каждом выпуске, так что я не перехожу к более старой версии), похоже, что процессор никогда не простаивает, поэтому вентиляторы всегда работают. Сегодня я решил выяснить, что использует мой процессор.

Я прочитал много ответов здесь и в Google, но ничего не решило мою проблему. Топ говорит об этом:

PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND     
5501 tox       20   0 3911436 324668  68984 S  12,5  4,0  30:04.86 gnome-shell 

Взяв PID gnome-shell, я попытался сделать ремешок, чтобы посмотреть, что происходит под капотом, и увидел, что есть recvmsg системный вызов, который выдает большое количество ошибок, занимая почти 30% времени (это почти через минуту):

strace: Process 5501 attached
% time     seconds  usecs/call     calls    errors syscall
------ ----------- ----------- --------- --------- ----------------
29.71    0.100941           2     46612     39214 recvmsg
24.81    0.084290           5     17842           poll
22.21    0.075445           3     21796           ioctl
8.92    0.030304           4      7269           writev
3.72    0.012652           8      1583        53 futex
3.17    0.010771           2      5180           getpid
1.58    0.005380           1      3874           mprotect
1.58    0.005357           3      2003           write
1.46    0.004969           3      1958           read
0.51    0.001727           8       215         2 openat
0.48    0.001634           3       501           close
0.45    0.001533           5       288           timerfd_create
0.32    0.001098           4       288           timerfd_settime
0.32    0.001072           6       183           mmap
0.26    0.000887           7       132       114 stat
0.25    0.000838           2       426           fstat
0.11    0.000370           2       213           fcntl
0.08    0.000267          10        26           munmap
0.06    0.000191           1       146           getrusage
0.00    0.000001           0         4         1 recvfrom
0.00    0.000001           1         2           uname
0.00    0.000001           1         1           restart_syscall
------ ----------- ----------- --------- --------- ----------------
100.00    0.339729                110542     39384 total

Это то, что я должен беспокоиться?

1 ответ

С момента установки 18.04 у меня была такая же постоянная высокая загрузка ЦП на gnome-shell без явной причины. Я подумал, что это просто скрывает что-то под капотом, например, рендеринг видео Firefox, но он также не падает почти до нуля даже при закрытой каждой программе и даже без перемещения мыши.

Я попробовал ту же самую стрейс и получил похожие результаты:

% time     seconds  usecs/call     calls    errors syscall
------ ----------- ----------- --------- --------- ----------------
 39.61    0.240174           3     87585     76642 recvmsg
 25.36    0.153778           6     27384           poll
  9.07    0.054990           3     17502           ioctl
  8.98    0.054434           3     18079           write
  7.98    0.048402           5      9702           writev
  3.29    0.019926           3      6640           read
  2.20    0.013369           1      8942           getpid
  1.32    0.008014           6      1352        59 futex
  0.91    0.005530           2      2634           mprotect
  0.23    0.001413          20        72           mmap
  0.21    0.001299           4       353           close
  0.21    0.001272           5       240           timerfd_create
  0.17    0.001043          10       101         2 openat
  0.17    0.001010           4       240           timerfd_settime
  0.09    0.000518           1       420       360 stat
  0.07    0.000432           2       198           fstat
  0.06    0.000374           9        41           munmap
  0.03    0.000192           2       124           getrusage
  0.03    0.000184           2        99           fcntl
  0.00    0.000006           2         4           recvfrom
  0.00    0.000004           1         7           sendmsg
  0.00    0.000004           1         7           ftruncate
  0.00    0.000004           1         7           memfd_create
  0.00    0.000003           2         2           uname
  0.00    0.000001           0         7           lseek
  0.00    0.000000           0         1           restart_syscall
------ ----------- ----------- --------- --------- ----------------
100.00    0.606376                181743     77063 total

Это довольно плохо, у меня заикание с интервалом около 1 секунды во всех моих программах. Он настолько последовательный, что я привык его компенсировать. Воспроизведение видео заикается, игры заикаются, Firefox заикается, это довольно раздражает. Не знаю, с чего начать его исправление, хотя уничтожение gnome-shell и его перезапуск хотя бы какое-то время работает - все еще с ошибками, но более отзывчивым.

Боковая панель слева часто также глючит с перекрывающимися значками и тому подобным, я подозреваю, что есть некоторые кумулятивные ошибки, в которые попадает gnome-shell, и что в какой-то момент она тратит много времени на ЦП, пытаясь разрешить плохо взаимодействующие противоречия между некоторой конфигурацией или краем случай или что-то. Думаю, на данный момент я просто надеюсь, что 18.10 лучше.

Другие вопросы по тегам