加入收藏 | 设为首页 | 会员中心 | 我要投稿 源码门户网 (https://www.92codes.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Windows > 正文

微软Xperf使用手册 监控Windows功能新方案

发布时间:2022-01-22 12:32:08 所属栏目:Windows 来源:互联网
导读:IT管理员总是在不停地寻找新工具,从而使得自己的生活更简单(如果这些工具是免费的,那就更好了)。下载工具时我通常都很细心,对于那些不需送货但价格却贵到血腥的工具更是谨慎。不过,对于微软最近在性能检测领域提供的叫做Xperf的新工具,我感到高兴和
        IT管理员总是在不停地寻找新工具,从而使得自己的生活更简单(如果这些工具是免费的,那就更好了)。下载工具时我通常都很细心,对于那些不需送货但价格却贵到“血腥”的工具更是谨慎。不过,对于微软最近在性能检测领域提供的叫做Xperf的新工具,我感到高兴和惊讶。
 
        Xperf是一个先进的故障调试工具,可深入调试各种性能问题,其高度是Perfmon无法企及的。它是产品套件Windows性能工具包(Windows Performance Toolkit ,WPT)的一部分,而WPT则属于微软软件开发包(Microsoft Software Development Kit ,SDK)。Xperf是Windows事件跟踪系统(Event Tracing for Windows,ETW)的补充。ETW则是服务器操作系统的一个内置组件,提供详细的系统性能和系统数据。
 
Xperf工具能够处理诸多问题,如系统响应问题、启动缓慢、高CPU和磁盘利用率、应用程序延迟及响应缓慢等。它支持在x86、x64和IA-64等平台上的跨平台使用时CPU占用低于2.5%,同时每秒能收集超过20000个系统事件。
 
换言之,这是一个你绝对会添加到工具箱中的工具。但在我们深入了解Xperf提供的诸多功能之前,我们首先通过一个简短的教程了解一下如何安装Xperf,以及如何利用这个工具调试Windows的各种系统性能问题。
 
安装Xperf
 
正如前面提到的那样,Windows性能工具包(WPT)随着Windows软件开发包(SDK)一起发布。在安装SDK之前,你必须首先安装Microsoft .NET Framework 4。除非你想安装整个高达4GB的SDK,否则你就只应该选择Windows性能套件(Windows Performance Toolkit)和Windows调试工具(Debugging Tools for Windows)这两个选项,如图1所示。
 
你还应该选择可再分发包(Redistributable Package)下的WPT和调试工具(Debugging Tool)选项,这样以后你才可以单独安装使用某个工具,而不用被迫重新安装SDK。安装产生的Windows性能套件和调试工具可以在如下位置找到:
 
复制
C:Program FilesMicrosoft SDKsWindowsv7.1RedistWindows Performance Toolkit
1.
微软,Xperf,监控,Windows,性能
  
如果你在SDK的安装过程中遇到问题,你可以参考这个故障排除页面寻求帮助,如清理AppDataLocalTemp目录下的文件(我经常需要这么做)。安装完成后,系统会为WPT新建一个程序组,如图2所示。相关的工具放在下面这个目录中:
  
微软,Xperf,监控,Windows,性能
  
这条命令会收集多个种类的内核事件,包括PROC_THREAD、LOADER、DISK_IO、 HARD_FAULTS、 DPC、 INTERRUPT、 CSWITCH 和 PERF_COUNTER,并将数据记录到一个名为kernel.etl的日志文件中。想要列出所有种类的内核事件,使用下面这条命令:
 
注意:丰富的联机帮助对每类事件都做了详细解释
 
开始收集事件数据后,让服务器重现你准备调试的问题,然后使用如下命令结束收集:
 
这将合并缓存在kernel.etl中的数据,并最终创建一个名为trace.etl的跟踪日志文件。跟踪日志文件既可以在出现问题的服务器上进行调试,也可以在另外一台装有WPT的服务器上进行。要查看产生的图形和图表,使用下面这条命令:
 
跟踪文件将被分两步处理,产生各种图表。默认的图形包括:
 
各CPU的使用率
各个进程的CPU使用率
各个线程的CPU使用率
CPU空闲状态
磁盘I/O、磁盘使用率
各个进程的磁盘使用率
进程的生命周期
DPC的CPU使用率
中断的CPU使用率
硬件故障
其它常见事件
将鼠标指针悬停在图形的某一特定线上,你可以看到更多细节,如占用所有CPU使用时间的进程名字。举个例子,在图3中你可以清楚地看到杀毒程序Rtvscan.exe是如何占用CPU的。
  
使用Xperf的另一个方便之处是你可以将某一特定时间范围内的图形放大,从而更清晰地查看这一区域内的图形。图4中,你可以看到在磁盘占用率这幅图里,前60秒后出现了一个峰值。用鼠标指针点击并拖动图上的那个部分,然后右击,选择“放大所选区域”(Zoom To Selection),放大出现问题的时间区域。这样会产生一幅包含你指定时间区域的新图。要回到原图,右击鼠标然后选择“取消放大”(Unzoom)。
  
为了得到更加详细的信息,你可以右击图形,然后选择“汇总表”(Summary Table)。这会产生一个图表,记录所有与该图形相关的计数器和数据。例如,图5就展示了磁盘I/O图的汇总表。表中***行清晰地显示了Rtvscan.exe进程进行着大量的读操作,这意味着它正在进行病毒扫描。
  
正如你看到的那样,Xperf是一个非常强大且直观的工具,能够真正帮助你分析系统性能问题。然而,我刚刚谈到的仅仅是Xperf众多功能中的冰山一角,该工具还适用于系统启动缓慢问题的检测、高内核和中断时间以及重点文件的分析等。每一项功能都值得单独为其功能和好处进行一番讨论。

(编辑:源码门户网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!