Folders and files Name Name Last commit message
Last commit date
parent directory Jan 21, 2022
Apr 14, 2022
Jan 21, 2022
Jan 17, 2022
Dec 26, 2021
Dec 11, 2021
Jan 6, 2022
Jan 11, 2022
Jan 27, 2022
Jan 26, 2022
Jan 21, 2022
Jan 26, 2022
Dec 11, 2021
View all files
Вручную запустить perf record, perf script, увидеть выдачу. Написать скрипт для запуска record,
script. Первый коммит в репозиторий.
Детально
Разбор perf script в скрипте. Извлечение
имени объектного файла и количества сэмплов из perf script.
Детально
Формирование записей: sqlite. Сохранение perf файлов. Обновление количества
сэмплов при повторных запусках.
Детально
Подготовка профиля. Для всех perf файлов: perf2bolt. merge-fdata.
Детально
Оптимизация при превышении заданного количества сэмплов. Вызов BOLT.
Сохранение оптимизированного файла.
Детально
Проверка оптимизированного файла. Детально
Подмена оптимизированных файлов при помощи символических ссылок.
Сброс количества сэмплов. Флажок в бд.
Детально
systemd: создать .service и .timer.
Детально
Измерение производительности для вручную собранного clang.
Детально
Обзор. Инструкция по установке: зависимости, сервис. Инструкция по
мониторингу. Требования к бинарным файлам.
Детально
Ротация perf файлов. Детально
Выделение функций. Выделить вызовы perf, работу с бд и другие части в отдельные функции. Функция main.
Параметризация опций: argparse. Пути к файлам perf и бд как параметры
командной строки.
Логирование. Печать всех сообщений в лог.
Пакетирование. Публикация. Детально
Расширенная функциональность
Выделение Buildid из объектного файла - уникальный идентификатор.
Пред-oптимизация. Анализ динамического покрытия.
Фильтрация приложений: perf record с IPC, icache/iTLB метриками.
БД: среднее IPC, icache MPKI, iTLB MPKI.
BAT mode.
Systemd: CPU, memory limits.
per-input: test hook, bolt_opts. source file regex -> hook/opts
You can’t perform that action at this time.