使用Windows机器学习对应用进行分析

剖析是一种工具,旨在帮助开发者和人工智能工程师诊断进程的CPU、GPU、NPU资源使用情况、不同执行提供者的ONNX模型以及Windows机器学习事件。

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

前提条件

应用启动时的个人资料

在此模式下,分析工具会对下一个启动的应用进行配置,该应用正在发送 Windows ML 事件。 这个选项非常适合测试一次性运行的应用。在这种情况下,你开始做分析,然后运行应用,资源使用情况就会开始显示出来。

截图显示下次游戏开始

工具开始对新启动的应用进行分析。这意味着如果内核已经运行,就需要重启内核来开始配置文件。仅仅开始新笔记本并不会自动开始画像。

重要

要接收 Windows ML 事件,工具需要以管理员模式运行。如果VS Code没有在管理员模式下启动,会弹出通知并引导你重启VS Code。你需要关闭所有其他 VS Code 实例,这样管理员模式下的重启才能正常工作。截图显示了管理员模式下重启VS Code的通知

建模一个跑步应用

在此模式下,分析工具开始对已运行的应用进行分析。您可以根据以下标准选择流程:

  • 进程编号:比如12345
  • 进程名称:通常是应用程序名称,没有.exe.第一场比赛将被分析。
  • 过程路径:类似c:\Users\xxx\Inference.Service.Agent.exe.第一场比赛将被分析。

这个选项非常适合用于分析已经运行且无法重启的应用进行分析。

截图显示如何按进程ID或名称开始

ONNX模型的剖析

在此模式下,分析工具开始在目标执行提供者(EP)或设备策略上对ONNX模型文件进行分析,持续时间为特定。你可以在运行时看到资源使用情况。

该选项非常适合在不同EP或设备策略上对ONNX模型进行分析。

展示如何通过模型文件开始的截图

分析完成后,会弹出通知,指导你打开或保存报告。

显示成功通知的截图

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

显示报告数据的截图

资源使用视图

在主窗口中,顶部的图表显示了CPU、GPU、NPU和内存的使用情况。使用情况每秒更新一次,并保持10分钟。你可以使用右上角的工具通过放大、缩小和平移来导航时间线。

显示资源使用视图的截图

注释

此功能使用性能计数器。为了获得更高的准确度,你也可以试试 Windows 性能记录器

Windows ML 事件视图

在主窗口底部的图表显示了Windows ML事件。其时间线与资源使用视图同步,因此当某些事件发生时,您可以轻松判断资源的使用情况。

重要

要接收 Windows ML 事件,工具需要以管理员模式运行。如果VS Code没有在管理员模式下启动,会弹出通知并引导你重启VS Code。你需要关闭所有其他 VS Code 实例,这样管理员模式下的重启才能正常工作。截图显示了管理员模式下重启VS Code的通知

目前,我们只展示以下类型的事件:

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

显示 Windows ML 事件视图的截图

你学到了什么

在本文中,你学到了:

  • 开始用不同的方式进行画像
  • 检查资源使用视图
  • 检查 Windows ML 事件视图

参见