Как я могу отследить возникающую проблему с производительностью

У меня есть два похожих ноутбука, оба серии ThinkPad P. Опишу их характеристики:

Новый ноутбук:

  • Intel(R) Core(TM) i7-12850HX (16 ядер, 24 потока)
  • 128 ГБ DDR5, твердотельный накопитель емкостью 4 ТБ (2x2 ТБ)
  • Убунту 22.04.3 ЛТС

Старый ноутбук:

  • Intel(R) Core(TM) i7-11800H (8 ядер, 16 потоков)
  • 64 ГБ DDR4, твердотельный накопитель емкостью 3 ТБ (1x1 ТБ + 1x2 ТБ)
  • Убунту 20.04.6

По всем характеристикам новый ноутбук должен быть значительно быстрее, и это то, что показывает большинство тестов (sysbench показывает увеличение процессора на ~40% в новом ноутбуке, время компиляции gcc составляет ~900 секунд против ~1300, дисковый ввод-вывод находится в пределах нескольких сто кбит/с при тесте более 150 ГБ, хотя технически старый вариант был быстрее).

Исключением, которое меня действительно убивает, является создание проектов petalinux (yocto/bitbake). Начиная с одних и тех же проектов, время сборки составляет (новый – старый): 40–10 минут, 60–20 минут для двух разных проектов, над которыми я часто работаю. Я не уверен, что вызывает это замедление, и я попробовал несколько вещей:

Процессы мониторинга показывают, что в обеих системах все процессоры закреплены на протяжении большей части сборки. Я пробовал ограничивать потоки, чтобы «ядра эффективности» не вступали в игру в случае, если они каким-то образом вызывают проблемы, но это только замедлило процесс. Новая машина также, похоже, не расходует ресурсы существенно по-другому (что касается использования ядра и пользователей, показанного на рис.htop). Также пробовал ответы здесь , но безуспешно. Я просмотрел выводperfна новой машине, но, не зная больше, что я ищу, это не помогло, поэтому я не запускал его на старой машине для сравнения, это в списке.

Некоторые основные вещи, которые мне могли бы пригодиться, чтобы объяснить/посоветовать, как тестировать: Я заметил, что новая машина никогда не выходит за рамки 3,2 ГГц, как сообщает/proc/cpuinfo(при условии, что это правда), в то время как старая машина, похоже, большую часть времени тратит около 3,8-4 на всех ядрах во время сборки. Меня это очень сбивает с толку, глядя на характеристики процессора. Я также заметил, что вентиляторы на новом ноутбуке кажутся невероятно агрессивными по сравнению со старым. Интересно, сильно ли меня душат? Температуры, о которых сообщают оба, кажутся немного бесполезными; Температура отдельных ядер варьируется примерно на 25°C на обеих машинах, при этом некоторые ядра достигают «критической» температуры в 100°C, а другие колеблются в пределах 80°C. Общая температура процессора была более стабильной, но одинаково высокой на обеих машинах.

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

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

Обновление 1:

После просмотра этого ответа я проверилscaling_governorдля моего первого процессора и заметил, что он находится в режиме энергосбережения, несмотря на то, что настройки графического интерфейса находятся в режиме производительности. Я настроил их все на производительность и был рад видеть, что мои ядра производительности подскочили до 4+ ГГц и завершили часть процесса сборки быстрее, чем раньше. К сожалению, с тех пор он вернулся в основном к 3.3-3.8, и сборка снова занимает гораздо больше времени.

0 ответов

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