OProfile — популярное средство профилирования для Linux-систем.
OProfile позволяет профилировать различные части системы — от обработчиков прерываний и драйверов, до пользовательских программ.
OProfile состоит из модуля ядра, резидентного демона и нескольких пользовательских утилит.
История Джон Левон создал OProfile в 2001 году, для Linux версии 2.4 на базе своей диссертацииInterview: John Levon , 11 Nov 2001 // KernelTrap: «John Levon, the author of OProfile».
В 2012 инженеры IBM признали OProfile одним из двух самых широко используемых инструментов профилирования на Linux, вместе с perf.
В 2021, было объявлено, что драйвер OProfile планируется удалить из ядра Linux 5.12 как устаревший. Его же набор утилит продолжит работать, используя драйвер профилирования perf.
Пользовательские утилиты — утилита управления демоном, который собирает статистические данные. Эти данные периодически сохраняются в каталоге . — утилита получения простого отчета профилирования. Утилита также может производить отчет анотированный ссылками на исходный код или инструкциями языка ассемблера. — конвертирует данные из oprofile в gprof-совместимый формат.{ref-en}
Примеры:
$ opcontrol --start # запуск сбора данных демоном-коллектором
$ ./<имя_программы> # запуск отлаживаемой программы
$ opcontrol --dump
$ opreport -l <имя_программы> > ${output_file}
$ opcontrol --stop # остановка сбора данных
$ opcontrol --shutdown # остановка демона
$ opcontrol --reset # очистка данных сохраненных в файле
См. также Профилирование (информатика)
Примечания