Я периодически просматриваю, рекомендации GitHub
— там попадаются интересные библиотеки и люди. И вот после написания статьи Что не так с cProfile в Python GitHub
через некоторое время подкинул ссылку на репозиторий tuna: Python profile viewer.
Как заявляет автор, в своём инструменте он порешал, проблемы, которые имеются в SnakeViz
(связанные с невозможностью восстановить граф вызовов). И на мой взгляд, автор tuna
заблуждается и вводит остальных в заблуждение — проблемы он не решил, а скорее замел под ковер. «Решение», которое он выбрал — если мы не можем показать достоверную информацию о вызовах, то просто не будем ее показывать. «Решение» отличное. Да на небольших примерах это сработает (или, например, для ячеек в Jupyter
), но как только граф вызовов разрастется и там появятся повторные вызов, ценность tuna
резко уменьшится.