Самый простой в использовании инструмент: perf
. Он может легко be installed на любой Linux-системе и хорошо работает с OpenMP или другими приложениями с резьбой.
Вы можете посмотреть живое исполнение, просто запустив sudo perf top
в командной строке. Это скажет вам функции и строки исходного кода, которые в настоящее время потребляют большинство ресурсов ЦП, например top
, для целых процессов.
Приставка приложение с:
perf record ./your-program your-parameter
perf report
Подарит профиль на функции и исходный код линейным методом. Существует множество параметров для настройки perf
, например. путем включения трассировки графика вызовов с помощью -g
.
Однако, хотя потоки поддерживаются, вы не можете их легко отличить. Таким образом, вы не узнаете, какой поток показал, какие характеристики производительности. Для этого вам следует прибегнуть к более специализированным инструментам HPC, даже если они кажутся немного переполненными. Вы должны учитывать, что анализ параллельной производительности не прост. Независимо от того, какой инструмент вы используете.
Бесплатные инструменты будут:
- HPCToolkit: самый простой в использовании, поскольку она использует выборки только, так что нет никакой необходимости перекомпилировать приложение
- Score-P для записи и Cube для анализа профилей (сайты кажутся вниз Временно)
- Tau
Просьба пояснить, что простые в использовании и в этом контексте несколько противоположны. Исследователи обращают внимание на инструменты HPC, ориентированные на методы и функции. В принципе, вы не получаете гранта на исследование, чтобы сделать инструмент простым в использовании. Коммерческие инструменты могут быть более ориентированы на удобство использования. – Zulan