magic-trace
Intel Processor Trace ベースの高解像度の追跡ツールで、約 40 ナノ秒の精度で記録プログラムのすべての関数を呼び出し、コードを変更せずに再生可能なインタラクティブ分析を提供し、コストはわずか 2 ~ 10% です。
スマートダウンロード
Download 版をダウンロード
v1.2.4 · 6.5 MB
ビデオを再生するように、プログラムのナノ秒レベルの関数呼び出しの詳細を表示し、パフォーマンスのボトルネックと異常な行動を迅速に検出します。
主な機能
- [「すべての関数呼び出し(C/C++、Rustなどのコンパイル言語を含む)をキャプチャ)、解像度約40ナン秒」、「侵入追跡なし:アプリケーションのコードを変更したり再コンパイルする必要がない」、「Ctrl+Cを手動で起動するか、または指定された関数を自動起動するか、約10ミリ秒の歴史を追跡できる」、「インタラクティブな呼び出しスタックタイムラインを生成し、スケーリング、測定、マークなどの操作をサポートする」、「Intel Processor Trace ハードウェアによる低コスト(2-10%)」、「perf バックエンドと統合でき、コアコア状態の追跡をサポートする(ルート権限が必要)」]
できないこと
- •Intel Skylake およびそれ以降の CPU アーキテクチャのみをサポートし、Linux システムのみが仮想マシンで動作することをサポートしません(仮想マシンは通常、Intel PT パネリングをサポートしていません) コントロール コントロール コントロール コントロール コントロール コントロール コントロール コントロール コントロール コントロール コントロール コントロール コントロール コントロール コントロール コントロール コントロール コントロール コントロール コントロール コントロール コントロール コントロール コントロール コントロール コントロール コントロール
使用例
- 「生産環境のリクエストの遅い反応の原因を分析し、異常なリクエストと正常なリクエストの行動の違いを区別する」、「トラッキングプログラムが崩壊する前の最後の数ミリ秒の完全な実行経路を追跡し、単一のバックアップを置き換える」
詳細説明
Magic-trace は、Jane Street によって開発された高性能な追跡ツールで、Intel Processor Trace テクノロジーに基づいて、約 40 ナノ秒の解像度でプロセッサが実行するすべての関数呼び出しを記録します。 サークル バッファを通じて継続的にコントロール ストリームを記録し、起動時 (Ctrl+C や指定された関数を呼び出し) から約 10 ミリ秒前に完全なコール スタック ストーリーをカットし、インタラクティブなタイムライン ビューを生成します。 従来のサンプル ツール perf とは異なり、magic-trace はすべてのコントロール ストリームをキャ
タグ
はじめ方
ソフトウェアをインストール
ディストリビューションに合ったパッケージをインストール(dpkg / rpm / AppImage)
「最新バージョンの実行ファイルをダウンロードし、chmod +x magic-trace を実行して実行権を付与する」、「ターゲットプログラムを起動し、magic-trace attach -pid $(プログラム名)を実行する」、「数秒後に Ctrl+C を押して、magic-trace が現在のディレクトリで trace.fxt.gz ファイルを生成する」、「ブラウザで magic-trace.org を開いて Open trace file をクリックして作成した追跡ファイルをロードする」、「W/S/A/D キーでスケーリングと移動ビューを使用して、マウス ローラーでスケーリングの深さを確認し、スケーリングの消費量をクリックする」
- 「最新バージョンの実行ファイルをダウンロードし、chmod +x magic-trace を実行して実行権を付与する」、「ターゲットプログラムを起動し、magic-trace attach -pid $(プログラム名)を実行する」、「数秒後に Ctrl+C を押して、magic-trace が現在のディレクトリで trace.fxt.gz ファイルを生成する」、「ブラウザで magic-trace.org を開いて Open trace file をクリックして作成した追跡ファイルをロードする」、「W/S/A/D キーでスケーリングと移動ビューを使用して、マウス ローラーでスケーリングの深さを確認し、スケーリングの消費量をクリックする」
最新のリリースノート
## What's Changed
* Add support for compressed output files, whether gzip (supported by Pe… by @bnigito in https://github.com/janestreet/magic-trace/pull/306
* Handle TSX transactions by @bnigito in https://github.com/janestreet/magic-trace/pull/308
* Fix symbol resolution for Rust binaries by @JosiahWhite in https://github.com/janestreet/magic-trace/pull/321
* Reap zombie `perf` processes from capability detection by @Xyene in https://github.com/janestreet/magic-trace/pull/316
* Recognize `int3` instructions in trace parser by @Xyene in https://github.com/janestreet/magic-trace/pull/322
* Add a `MAGIC_TRACE_NO_OCAML_EXCEPTION_DEBUG_INFO` environment variable by @bnigito in https://github.com/janestreet/magic-trace/pull/305
## New Contributors
* @bnigito made their first contribution in https://github.com/janestreet/magic-trace/pull/305
* @JosiahWhite made their first contribution in https://github.com/janestreet/magic-trace/pull/321
**Full Changelog**: https://github.com/janestreet/magic-trace/compare/v1.2.3...v1.2.4
チェックサムがありません
このプロジェクトは GitHub Release ページに SHA-256 チェックサムを公開していません
SHA256 チェックサム
チェックサムなし
GitHub Releases から直接ダウンロードし、ファイルの整合性をご自身で確認してください
本プラットフォーム上のすべての SHA-256 チェックサムは、プロジェクトの公式 GitHub Release ページから抽出されたもので、一切の改変はありません。GitHub Releases ページで独自に検証できます。
オープンソースの透明性
GitHub ソースを見るアンインストール情報
ダウンロードした実行ファイルを直接削除できます(他のシステムファイルが残っていない)。
追加の依存関係なし
ダウンロード後すぐに使用可能。追加のランタイムは不要です。