Pythonコードのプロファイルとトレースを同時に行う方法を探しています。Python のトレース クラスとトレースバック クラス、および Python の Cprofiler クラスとプロファイラー クラスを確認しました。
トレース ライブラリには、関数の実行にかかった時間やメモリの量に関する情報は含まれていません。トレースの方法。私が探しているのは、php の xdebug に似たものです。
パイソン <= 2.6
前もって感謝します
ここprofile
のドキュメントを調べましたか
こちらもご覧ください:
プロファイリング結果の視覚化
RunSnakeRunは、正方形マップを使用して cProfile からのプロファイル ダンプを視覚化する、Mike Fletcher による GUI ツールです。関数/メソッドの呼び出しは、さまざまな基準に従って並べ替えることができ、ソース コードは視覚化および呼び出し統計と一緒に表示できます。
使用例:
runsnake some_profile_dump.prof
Gprof2Dotは、プロファイリング結果の出力を、PNG 画像または SVG に変換できるグラフに変換できる Python ベースのツールです。
Python 2.5 を使用した典型的なプロファイリング セッションは次のようになります (古いプラットフォームでは、-m オプションの代わりに実際のスクリプトを使用する必要があります)。
python -m cProfile -o stat.prof MYSCRIPY.PY [ARGS...]
python -m pbp.scripts.gprof2dot -f pstats -o stat.dot stat.prof
dot -ostat.png -Tpng stat.dot
PyCallGraph pycallgraph は、Python プログラムのコール グラフを作成する Python モジュールです。モジュールの関数呼び出しと他の関数呼び出しへのリンク、関数が呼び出された回数、およびその関数で費やされた時間を示す PNG ファイルを生成します。
典型的な使用法:
pycallgraph scriptname.py
PyProf2CallTreeは、cProfile Python モジュールで収集されたプロファイリング データを kcachegrind グラフィカル コールツリー アナライザーで視覚化するのに役立つスクリプトです。
典型的な使用法:
python -m cProfile -o stat.prof MYSCRIPY.PY [ARGS...]
python pyprof2calltree.py -i stat.prof -k