Исходный автор (ы) | Джон Левон |
---|---|
Первоначальный выпуск | 2001 |
Стабильная версия | 1.4.0 / 20 июля 2020 г.; 3 месяца назад (2020-07-20) |
Написано на | C |
Операционная система | Linux |
Платформа | Кросс-платформенность |
Тип | Профайлер |
Лицензия | GPL |
Веб-сайт | oprofile.sourceforge.net / news / |
В computing, OProfile является общесистемным статистический инструмент профилирования для Linux. Джон Левон написал его в 2001 году для ядра Linux версии 2.4 после получения степени магистра наук. проект; он состоит из модуля ядра, демона user-space и нескольких инструментов пользовательского пространства.
OProfile может профилировать всю систему или ее части, от подпрограмм прерывания или драйверов до процессов пользовательского пространства. У него низкие накладные расходы.
Наиболее широко поддерживаемый режим ядра oprofileиспользует системный таймер (см.: Сбор событий профилирования ). Однако этот режим не может измерять функции ядра, где прерывания отключены. Новые модели ЦП поддерживают режим аппаратного счетчика производительности , который использует аппаратную логику для записи событий без необходимости в каком-либо активном коде. В Linux 2.2 / 2.4 поддерживаются только 32-битные x86 и IA64 ; в Linux 2.6 более широкая поддержка: x86 (32 и 64 бит), DEC Alpha, MIPS, ARM, sparc64, ppc64, AVR32.
Графы вызовов поддерживаются только на x86 и ARM.
В 2012 году два инженера IBM признали OProfile одним из двух наиболее часто используемых инструментов профилирования монитора счетчиков производительности в Linux, наряду с perf tool.
Пример:
opcontrol --start (Если есть какие-либо проблемы с запуском, например --vm-linux, просто следуйте инструкциям) запуститеopcontrol --dump opreport -l > opcontrol --stop (прекращает сбор данных) opcontrol --shutdown (останавливает демона) opcontrol --reset (очищает данные профиля, которые были сохранены в приведенном примере файла)
Два наиболее часто используемых инструмента для профилирования PCM в Linux - это OProfileи perf[...].