win10上程序性能分析

性能分析工具

Windows 性能工具包(Windows Performance Toolkit)位于 Windows 评估和部署工具包(Windows ADK)中,其中包含各种性能监控工具,这些工具可生成有关 Windows 操作系统和应用程序的详细性能概况。

下载ADK时,要匹配本机的操作系统版本,本人计算机为Windows 10 版本 20H2。安装时,有一个窗口选择要安装的工具。选择Windows Performance Toolkit,本是默认勾选的。

安装ADK后,可以在安装目录下找到旧版本的Xperf命令行工具。不过目前WPT提供了更方便的图形化界面,两个独立的工具:

  1. Windows Performance Recorder (WPR) :WPR 是一款用于创建 Windows 事件跟踪 (ETW) 记录的功能强大的记录工具。 可以通过用户界面 (UI) 或命令行来运行 WPR。 WPR 提供了内置配置文件,可以使用它们来选择要记录的事件。
  2. Windows Performance Analyzer (WPA) :WPA 是一款功能强大的分析工具,该工具将非常灵活的 UI 与丰富的图形功能和数据表相结合。

工具使用

1. 使用WPR捕获性能信息

在本机上搜索WPR,运行程序。点击Strat按钮开始捕获数据。等待一段时间后,点击Save按钮结束捕获并保存捕获的性能数据。

win10上程序性能分析_第1张图片

点击More options按钮,可以:选择需要捕获那些性能数据、信息详细程度等等。一般地,可以额外勾选CPU usageDisk I/O activity,其他按需求选择。

在捕获过程中,执行要分析的程序f.exe。捕获完成后,将.elt文件用WPA打开,图形化分析。

2. 使用WPA分析性能信息

如果想详细了解WPA,戳:如何使用WPA

打开.elt文件后,可以看到System ActivityComputationStorageMemoryPower等若干性能信息。

win10上程序性能分析_第2张图片

可以在某进程上右击,选择Filter To Selection,在分析图中过滤掉其他进程的信息;若要恢复,可以右击,选择Clear Filter。可以在列表头右击,More Columns,选择要显示的属性。

双击Computation里的CPU Usage (Attributed),用柱状图显示各进程的CPU利用率。图中的CPU利用率可以达到100%以上(极限大约是800%),这是正常的,因为多核多处理器(4核8处理器)。鼠标移动到柱状图某个色块上,比如f.exe的色块上,可以看到某时刻此进程的CPU使用率(单线程进程的也可能略微超过100%,这是为什么)。在柱状图下面的表格里,可以找到f.exe的更详细信息。展开,可以看到进程的若干线程的信息:换入换出时刻(s)、CPU使用时间(ms)、处理器(0 - 7)。一个线程会在各个核上间断地执行。

展开CPU Usage,选择Timeline by CPU,查看各个核的时间线。选择Utilization by CPU,查看各个核的使用率。选择Timeline by Process,查看各个进程的时间线。选择Utilization by Process,查看各个进程的CPU使用率:CPU Usage是线程的运行时间,ReadyWaits是线程等待的时间,Count是线程换入换出的次数,%CPU Usage是CPU占用率(这个是占全部可用核的算力的,不会超过100%)

Storage显示了磁盘I/O的情况,有两个盘:磁盘0是D,E,F,G盘(HDD,机械),磁盘1是C盘(SSD,固态)。Memory显示了内存占用情况,可以看到内存页的情况,也可以查看各个进程的I/O时间。可以用这两个属性来分析程序是否是I/O密集型的还是计算密集型的,从而加速程序。

最后吐槽下,数据文件是真的大,WPA时不时就卡死了!

你可能感兴趣的:(计算机,计算机,性能优化,测试工具,windows)