本站点文档内容均翻译自code.visualstudio.com,仅供个人学习,如有差异请以官网为准。

使用 Windows Machine Learning 对应用程序进行分析

Profiling 是一个工具,旨在帮助开发人员和 AI 工程师诊断进程在不同执行提供者上的 CPU、GPU、NPU 资源使用情况、ONNX 模型以及 Windows ML 事件。

在本文中,您将学习如何开始分析,以及如何检查资源使用视图和事件视图。

先决条件

应用启动时的个人资料

在这种模式下,分析工具分析的是启动后并发送Windows ML事件的下一个应用程序。 此选项非常适合测试一次性运行的应用程序。在这种情况下,您开始分析,然后运行应用程序,资源使用情况将开始显示。

截图显示如何在下次会话中开始

该工具开始对新启动的应用进行分析。这意味着,如果要分析一个Python笔记本,而内核已经运行,你需要重启内核以开始对该内核的分析。仅仅启动一个新的笔记本不会自动开始分析。

重要

要接收 Windows ML 事件,工具需要以管理员身份运行。如果 VS Code 没有以管理员身份启动,将显示通知并引导您重新启动 VS Code。您需要关闭所有其他 VS Code 实例才能使以管理员身份重新启动生效。 显示需要以管理员身份重启 VS Code 的通知的截图

介绍一个跑步应用程序

在这种模式下,性能分析工具开始对已运行的应用程序进行分析。您可以根据以下标准选择一个进程:

  • 进程 ID: 像 12345
  • 进程名称:通常为应用程序的名称,不包含.exe第一场比赛将被重点介绍。
  • 处理路径:喜欢c:\Users\xxx\推理服务代理程序.exe第一场比赛将被重点介绍。

此选项非常适合用于对已经运行的应用程序进行分析,而您无法为了分析目的而重启它。

截图显示如何通过进程ID或名称启动

分析 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 实例才能使以管理员身份重新启动生效。 显示需要以管理员身份重启 VS Code 的通知的截图

目前,我们仅显示以下类型的事件:

  • 确保ExecutionProvider已就绪:当Windows ML正在准备EP时
  • 会话创建:当会话创建时
  • 推理:当模型在会话中推理

显示Windows ML事件视图的截图

你所学到的

在本文中,您将学习如何:

  • 以不同的方式开始分析
  • 检查资源使用情况视图
  • 检查 Windows ML 事件视图

另见