Увеличение глубины cProfiler в Python, чтобы сообщить о дополнительных функциях?

Я пытаюсь профилировать функцию, которая вызывает другие функции. Я вызываю профилировщик следующим образом:

from mymodule import foo
def start():
   # ...
   foo()

import cProfile as profile
profile.run('start()', output_file)
p = pstats.Stats(output_file)
print "name: "
print p.sort_stats('name')
print "all stats: "
p.print_stats()
print "cumulative (top 10): "
p.sort_stats('cumulative').print_stats(10)

Я обнаружил, что профилировщик говорит, что все время было потрачено в функции "foo ()" моего модуля, вместо того, чтобы разбивать ее на вызовы подфункций foo (), что я и хочу видеть. Как я могу заставить профилировщик сообщать о производительности этих функций?

спасибо.

9
задан 20 December 2010 в 18:57
поделиться