什麼是 IACA 以及如何使用它?
IACA 是英特爾架構程式碼分析器的縮寫,是英特爾開發的一款已停產的靜態分析工具。它允許分析現代 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
-
:特定處理器Architecture-
:使用Graphviz 生成可視化依賴圖
輸出:
-
文字報告顯示:
- 吞吐量或延遲分析
- 連接埠綁定和壓力分析
- 每條指令的週期細分
- 依賴關係圖(如果指定)
以上是什麼是英特爾架構程式碼分析器 (IACA)?的詳細內容。更多資訊請關注PHP中文網其他相關文章!