使用 Windows Machine Learning 对应用程序进行分析
Profiling 是一个工具,旨在帮助开发人员和 AI 工程师诊断进程在不同执行提供者上的 CPU、GPU、NPU 资源使用情况、ONNX 模型以及 Windows ML 事件。
在本文中,您将学习如何开始分析,以及如何检查资源使用视图和事件视图。
先决条件
- 安装最新版本的Visual Studio Code.
- 安装 AI 工具包 VS Code 扩展。有关更多信息,请参见 安装 AI 工具包.
应用启动时的个人资料
在这种模式下,分析工具分析的是启动后并发送Windows ML事件的下一个应用程序。 此选项非常适合测试一次性运行的应用程序。在这种情况下,您开始分析,然后运行应用程序,资源使用情况将开始显示。

该工具开始对新启动的应用进行分析。这意味着,如果要分析一个Python笔记本,而内核已经运行,你需要重启内核以开始对该内核的分析。仅仅启动一个新的笔记本不会自动开始分析。
要接收 Windows ML 事件,工具需要以管理员身份运行。如果 VS Code 没有以管理员身份启动,将显示通知并引导您重新启动 VS Code。您需要关闭所有其他 VS Code 实例才能使以管理员身份重新启动生效。

介绍一个跑步应用程序
在这种模式下,性能分析工具开始对已运行的应用程序进行分析。您可以根据以下标准选择一个进程:
- 进程 ID: 像 12345
- 进程名称:通常为应用程序的名称,不包含
.exe第一场比赛将被重点介绍。 - 处理路径:喜欢
c:\Users\xxx\推理服务代理程序.exe第一场比赛将被重点介绍。
此选项非常适合用于对已经运行的应用程序进行分析,而您无法为了分析目的而重启它。

分析 ONNX 模型
在这种模式下,分析工具会在指定的执行提供者(EP)或设备策略上开始分析ONNX模型文件,持续一段时间。在运行时,您可以查看资源使用情况。
此选项非常适合在不同的EP或设备策略上对ONNX模型进行分析。

在分析之后,系统会显示一个通知来指导您打开或保存报告。

报告包含有关ONNX模型的详细分析统计数据和结果。

资源使用情况视图
在主Windows中,顶部的图表显示了CPU、GPU、NPU和内存的使用情况。使用情况每秒更新一次,并保持10分钟。您可以使用右上角的工具通过放大、缩小和平移来浏览时间轴。

此功能使用性能计数器。为了获得更高的准确性,您也可以尝试Windows性能记录器。
Windows ML 事件视图
在主Windows中,底部的图表显示Windows ML事件。其时间轴与资源使用情况视图同步,因此您可以轻松确定在特定事件发生时资源如何使用。
要接收 Windows ML 事件,工具需要以管理员身份运行。如果 VS Code 没有以管理员身份启动,将显示通知并引导您重新启动 VS Code。您需要关闭所有其他 VS Code 实例才能使以管理员身份重新启动生效。

目前,我们仅显示以下类型的事件:
- 确保ExecutionProvider已就绪:当Windows ML正在准备EP时
- 会话创建:当会话创建时
- 推理:当模型在会话中推理

你所学到的
在本文中,您将学习如何:
- 以不同的方式开始分析
- 检查资源使用情况视图
- 检查 Windows ML 事件视图