AI 火焰图

主要观点:Intel 创建新分析工具 AI Flame Graphs 帮助降低 AI 成本,其基于 CPU 火焰图原理,能展示 AI 加速器或 GPU 硬件配置及全软件栈,已在 Intel Tiber AI Cloud 向客户提供预览。AI profiling 困难,需解决 GPU 和 AI 加速器程序的指令分析及与 CPU 栈关联等问题,目前一些 workload 较难且有中等开销,未来会逐渐改善。AI Flame Graphs 类似 CPU 火焰图,将成为 AI 开发者日常工具,已展示给其他 AI 开发者,PyTorch 支持也在推进中,最初发布在 Intel Tiber AI Cloud 预览。

关键信息

  • AI Flame Graphs 原型基于 Intel EU stall profiling 和 eBPF,设计为易用、低开销,像 CPU 分析器。
  • 火焰图是 2011 年发明的可视化工具,已在全球广泛应用,在 CPU 分析中起重要作用。
  • AI Flame Graphs 可搜索样本,内置搜索功能,通过 magenta 突出显示搜索词。
  • CPU 指令分析在不同代码情况下难易不同,AI workloads 更复杂,需处理多种运行时和框架。
  • 展示了不同 AI 开发者对 AI Flame Graphs 的反应,从最初困惑到逐渐理解其价值。
  • 介绍了 PyTorch 在 AI Flame Graphs 中的支持进展及遇到的问题。
  • 强调 AI Flame Graphs 应易用、低开销、安全且全面,Intel 已证明其可行性。

重要细节

  • 示例中绿色帧为 AI 或 GPU 加速器指令,水蓝色为函数源代码,红色(C)、黄色(C++)、橙色(内核)为启动 AI/GPU 程序的 CPU 代码路径,灰色“-”帧用于突出 CPU 和 AI/GPU 代码边界。
  • 第一个版本在 Intel Tiber AI Cloud 的 Intel Data Center GPU Max Series 中提供预览,客户可通过服务渠道申请早期访问。
  • 早期 CPU 火焰图发明后经历多年努力完善,AI 分析比 CPU 分析成熟度低,需做更多工作。
  • 不同的 AI 运行时和框架需特殊处理才能获取 CPU 栈和符号,GPU 和 AI 调试比 CPU 更不成熟。
  • 展示了 PyTorch 在 AI Flame Graphs 中的具体示例及遇到的困难,如 oneDNN 内核的 JIT 生成和缺少源路径等。
  • 提到 NVIDIA 的 Nsight Graphics 有 GPU 火焰图,但较浅且缺 CPU 上下文,新方法可实现轻松、全面、随时的分析。
  • 感谢 Intel 内部众多同事的帮助,以及使用火焰图的公司和开发者对节省地球资源的贡献。
阅读 19
0 条评论