Командная строка Middle Производительность и профилирование обновлено
Анализ профиля в формате folded stacks
Условие
На stdin первая строка: имя функции. Дальше CPU-профиль в формате folded stacks (как для flame graph): строки кадр1;кадр2;...;кадрN <число сэмплов>, где последний кадр это функция, выполнявшаяся на CPU. Выведите total <всего сэмплов>, затем три функции с наибольшим собственным временем (сэмплы, где функция последний кадр) в формате <процент от всех с 1 знаком> <функция> (при равенстве по имени), и последней строкой inclusive <функция> <процент>%: доля сэмплов, в стеке которых есть заданная функция (каждый стек считается один раз).
Как подойти
Подсказки: 2
split($1, f, ";")разобьёт стек, последний элементf[n].- Если функция встречается в стеке дважды (рекурсия), считайте стек один раз.
Решите в тренажёре
Редактор с автотестами прямо в браузере. Можно решить спокойно, вслух или под таймером, как на собесе.