IACA とは何ですか?またその使用方法は何ですか?
IACA (Intel Architecture Code Analyzer の略) は、Intel が開発した廃止された静的解析ツールです。最新の Intel プロセッサでのコード スケジューリングの分析が可能です。
機能
IACA は以下を計算できます:
-
スループット: プロセッサの最大スループット一番奥のループ
-
レイテンシ: 最初の命令から最後の命令までの最小レイテンシ
-
トレース: パイプライン ステージによる命令の進行状況
サポートされているプラットフォームとコードフォーマット
- プロセッサーのバージョン: Nehalem、Westmere、Sandy Bridge、Ivy Bridge、Haswell、Broadwell、Skylake (バージョン 2.3 まで)、Haswell、Broadwell、Skylake (バージョン 3.0)
- コード形式: C/C 、x86アセンブラー
制限事項
-
EOL: IACA は 2019 年にサポート終了になりました
- サポートされていない命令は無視します
- スループットの最内側以外のループをサポートしませんモード
使用法: C/C
- コードに iacaMarks.h を含めます
- 最も内側のループの周囲に開始マーカーと終了マーカーを挿入します
- 最適化してコードを再構築する有効
使用法: アセンブリ (x86)
- 開始マーカーと終了マーカーのマジック バイト パターンを手動で挿入
分析:
- 挿入されたコードバイナリを提供しますマーカー
- 呼び出しコマンド: iaca.sh -arch -graph -64 foo
- : 特定のプロセッサ アーキテクチャ
- : 視覚的な依存関係グラフを生成します使用してGraphviz
出力:
-
テキスト レポート:
- スループットまたはレイテンシー分析
- ポート バインディングと圧力分析
- それぞれのサイクルの内訳命令
- 依存関係グラフ (指定されている場合)
以上がインテル アーキテクチャ コード アナライザー (IACA) とは何ですか? それを使用してコードのパフォーマンスを分析するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。