WikiDer > Повернуть вправо
Увеличить это анализ производительности инструмент для приложений, работающих на Linux и Mac OS X операционные системы от RotateRight. Используя статистическое (основанное на событиях) профилирование, это программное обеспечение диагностирует проблемы производительности, связанные с программным кодом, интенсивно использующим процессор и память. К сожалению, разработка этого продукта закончилась в 2015 году.
Статистическая выборка
Статистическая выборка является периодической записью процессора счетчик команд или указатель инструкции.
- Каждая выборка берется (запускается) по истечении фиксированного периода времени или наступления заданного количества событий. Таким образом, образцы кода берутся пропорционально тому, где тратится больше времени или происходит больше событий.
- Статистическая выборка может быть общесистемной или нацелена на конкретную обработать. Общесистемная выборка фиксирует все процессы, запущенные в системе, и может включать время, потраченное на ядро или код драйвера. Выборка, ориентированная на процесс, может использоваться для понимания времени, потраченного на ожидание ввода-вывода или работы ядра.
- Дополнительная информация, помимо счетчика программ, может быть записана в каждом интервале. Например, другие счетчики производительности оборудования можно прочитать или всю функцию стек вызовов можно записать. Запись стека важна, потому что она позволяет разработчику знать не только, где было потрачено время (или произошли события), но и как был вызван этот код.
Визуализация дерева вызовов
Информация о символах используется для отображения адресов программ в имена символов. Разбивка профиля на уровне символьной детализации - полезный способ понять время, затрачиваемое на блоки кода. Существует множество методов обобщения информации в наборе образцов, которые включают следы стека вызовов каждого образца:
- Сверху вниз (дерево) визуализация используется для поиска «горячих» (часто выбираемых) путей вызова, начиная с корневого символа (например, основного).
- Вверх дном (лист) визуализация используется для поиска «горячего» кода, начиная с символов, в которых произошли сэмплы.
- Визуализация горячих точек - это полный список символы встречается в профиле, который используется в сочетании с параллельными видами дерева и листьев (вид бабочки). При выборе символа в списке точек доступа в представлении «бабочка» отображаются вызывающие и вызываемые абоненты этого символа.
Визуализация кода
Визуализация кода позволяет разработчику соотносить исходный код с машинные инструкции. Это также позволяет аннотировать каждую строку источника или инструкции данными о производительности.
- Информация об отладке, такая как DWARF может использоваться для сопоставления адресов программ с исходным кодом. Это та же информация, которую использует отладчики такие как GDB.
Механизм анализа кода
Механизм анализа кода анализирует исходный код или код сборки, чтобы предоставить рекомендации по настройке для конкретных процессоров и архитектур. Механизм анализа кода Zoom выполняет следующие функции:
- Дисплеи базовые блоки.
- Обнаруживает петля границы.
- Вычисляет регистр зависимости.
- Находит ветвь цели.
- Вычисляет циклы срыва.