Этот вопрос возникает практически у каждого разработчика систем реального времени. Почему приложение укладывается в дедлайны на стенде, но начинает работать иначе на целевой системе? Как понять, где именно теряется производительность?
На Хабре вышла статья Александра Капустина, в которой мы рассказываем о новой технологии прикладного профилирования в ОСРВ «Нейтрино».
Из статьи Вы узнаете:
почему в основе профилирования лежит системная трасса ядра;
как профилировать не только прикладные программы, но и драйверы, системные сервисы и другие компоненты микроядерной ОС;
как получать не только длительность выполнения функций, но и их чистое процессорное время с учётом работы планировщика;
какие форматы отчётов поддерживаются (calltree, FlameGraph, speedscope, Chrome Trace) и для каких задач каждый из них подходит.Если тема Вам интересна — поддержите статью лайком, поделитесь ею с коллегами и задавайте вопросы в комментариях. Будем рады обсудить.
#Хабр


