このプロジェクトについて

py-spyはRustで書かれたサンプリングプロファイラで、極めて低いオーバーヘッドでPythonプログラムを分析するために設計されています。別プロセスで動作しターゲットプログラムのメモリを直接読み取るため、本番環境での使用も安全です。 主な機能: - **非侵襲的プロファイリング**:プログラムを再起動したりソースコードを変更したりすることなく、関数内の処理時間を可視化できます。 - **3つの主要モード**: - `record`:インタラクティブなSVGフレームグラフやspeedscope形式などでプロファイルを生成します。 - `top`:Unixのtopコマンドのように、最も多くの時間を費やしている関数のライブ表示を提供します。 - `dump`:各Pythonスレッドのカレントコールスタックを、オプションでローカル変数と共にダンプします。 - **幅広い互換性**:Linux、OSX、Windows、FreeBSDをサポートし、CPython 2.3~2.7および3.3~3.14と互換性があります。 - **高度な機能**: - ネイティブC/C++またはCython拡張のプロファイリング対応。 - サブプロセス(multiprocessingやgunicornワーカープールなど)のプロファイリング能力。 - GIL(グローバルインタプリタロック)検出によるロック保持スレッドのフィルタリング。 - ターゲットプロセスを完全に一時停止しないノンブロッキングモード。