Ssylka

Perforator: эффективное непрерывное профилирование с открытым исходным кодом

Perforator – это новая система непрерывного профилирования, разработанная для анализа производительности программ в Linux. Она использует eBPF для сбора стеков в ядре, что обеспечивает высокую точность и низкий оверхед. Perforator способен профилировать широкий спектр событий, включая такты CPU и ввод-вывод, и поддерживает раскрутку стека через DWARF, упрощая процесс оптимизации производительности.
Perforator: эффективное непрерывное профилирование с открытым исходным кодом
Изображение носит иллюстративный характер

Система состоит из трех основных компонентов: агента, работающего на каждом хосте и собирающего профили; хранилища, где профили и бинарные файлы хранятся в S3 и ClickHouse; и бэкенда, предоставляющего gRPC-интерфейс для пользователей и агентов. Perforator поддерживает нативные языки программирования (C++, C, Go, Rust) и JIT-компилируемые языки, а также предлагает интеграцию с FDO для оптимизации на основе профилей.

Ключевым преимуществом Perforator является его способность генерировать быстрые и интерактивные флеймграфы, позволяющие легко находить узкие места в коде. Кроме того, система может быть использована для профилирования по срезам, например, для анализа производительности в A/B-тестах, и сбора стеков при фатальных сигналах, что упрощает отладку.

Perforator также предоставляет локальный режим для замены perf record, что позволяет быстро профилировать процессы или всю систему. Он поддерживает символизацию бинарных файлов через debuginfod. Несмотря на некоторые ограничения, такие как необходимость CAP_SYS_ADMIN и поддержка Linux 5.4+, Perforator является мощным инструментом для оптимизации производительности.


Новое на сайте

15287Жидкость, восстанавливающая форму: нарушение законов термодинамики 15286Аркадия ведьм: загадка Чарльза годфри Леланда и её влияние на современную магию 15285Кто станет новым героем Звёздных войн в 2027 году? 15283Ануше Ансари | Почему космические исследования важны для Земли 15282Гизем Гумбуская | Синтетический морфогенез: самоконструирующиеся живые архитектуры по... 15281Как предпринимателю остаться хозяином своей судьбы? 15280Люси: путешествие к древним обломкам солнечной системы 15279Роберт Лиллис: извлеченные уроки для экономически эффективных исследований дальнего... 15278Почему супермен до сих пор остаётся символом надежды и морали? 15277Райан Гослинг в роли нового героя «Звёздных войн»: что известно о фильме Star Wars:... 15276Почему экваториальная Гвинея остаётся одной из самых закрытых и жестоких диктатур мира? 15275Почему морские слизни становятся ярче под солнцем? 15274Глен Вейль | Можем ли мы использовать ИИ для построения более справедливого общества? 15273Лириды: где и как увидеть древний звездопад в этом апреле? 15272Сдержит ли налог на однодневных туристов в Венеции наплыв гостей?