При использовании ruby-prof, напечатанного в режиме graph-html, отчет для одного метода говорит (с некоторым отрывом)
%Total %Self Total Self Wait Child Calls Name Line
52.85% 0.00% 51.22 0.00 0.00 51.22 1 ClassName#method_name 42
51.22 0.00 0.00 51.22 1/3 Hash#each 4200
Очевидно, что это не Hash#each
, что занимает много времени, но блок yield
внутри Hash # каждый.
Глядя на отчет для Hash #, каждый из них запутан, потому что он сообщает обо всем коде, вызываемом любым, использующим Hash # each.
Можно ли запросить ruby-prof поместить информацию о выпущенном коде в отчет ClassName#method_name
?
Использование min_percent
или переход на плоский профиль, похоже, не помогают.