perfview由微软官方打造,它是一款性能分析软件,你能通过这款软件知道不同的进程对电脑运行的影响,这些统计结果会以图表的形式直观展示出来,点击数据就能查看详细信息。
收集配置数据
PerfView利用Windows事件追踪,而ETW从Windows 2000 Server以来就一直内置于操作系统中。只是最近才有XPerf和PerfView一类的工具利用ETW数据来解决性能问题。事件数据被收集到一个事件跟踪日志(ETL)中。根据你想要跟踪事件的数量和时间的长度,ETL文件可能会非常大。你可以限制这个日志文件的大小,如果空间受限或者你不知道问题何时发生的话,你还可以让它们循环。默认每毫秒一次的采样间隔在收集时间内产生了大概百分之十的CPU开支。建议大概5000个样本(5秒)用于一次代表性配置采样。
开始一次数据收集有两种方式,用运行命令启动一个程序或者用收集命令在计算机范围内收集数据。这些命令可以由收集下拉菜单下的GUI引发,或者从CLI或脚本中执行“PerfView run”或“PerfView collect”命令。下图显示运行命令tutorial.exe时收集数据的过程,tutorial.exe是一个内置的训练练习。
查看结果
一旦你在些之间针对性能问题收集了数据,你可以用PerfView分析ETL文件。该ETL文件会出现在左边的窗口,有收集日志或运行命令期间你提供的名字。通过双击该RTL文件,十来个独立的节点会和指代它们内容的名字一起出现。例如,你会在下图中看到跟踪信息、程序、事件、CPU堆栈。双击各个节点,适当的查看器会打开这些内容。
挂钟/阻塞时间调查:如果您的程序太慢,但它没有消耗过多的CPU,那么它必须被阻止等待其他东西(磁盘网络,…)。PerfView可以指示操作系统在线程睡眠或唤醒时记录事件,并有一个显示程序正在等待的位置。
内存调查:您还可以在每次OS堆内存分配器分配或释放对象时打开事件。使用这些事件,您可以看到哪些调用堆栈负责大多数非托管内存分配。CPU调查:PerfView能够读取Linux内核中内置的Linux“Perf Events”收集器的输出。
CPU调查:PerfView能够读取Linux内核中内置的Linux“Perf Events”收集器的输出。
在PerfView的stack viewer中查看自己的层次数据:PerfView的stack viewer功能强大,但也非常灵活。PerfView定义了一个非常简单的XML或JSON格式,可以读入这个查看器。这使您可以轻松生成数据,然后可以在PerfView强大的堆栈查看器中查看这些数据。
为了针对一个特定程序分析计算密集型性能问题,你将需要学习要调用的堆栈和函数。这可以通过双击左侧窗口中的“CPU堆栈”节点完成。接着你会得到提示来选择你感兴趣的程序。最后,该CPU堆栈查看器会在独立的窗口中打开,如下图QQ进程的信息 ,你可以确定调用了哪个函数以及它们的频率。
如果你仔细查看上面的例子,你会发现第一行显示<
PerfView是一个便于用户的工具,可以用来收集和分析ETW数据用于解决配置程序性能数据的问题。这个工具可以快速地显示为这个程序执行的操作系统函数,了解性能问题可能潜藏的位置。
perfview暂时不提供中文界面,分析师能用它了解是电脑出错的症结所在,用户可以自行限制日志文件的大小,搜索工具帮助大家快速定位目的程序,软件支持截图保存问题界面。
上文就是小编为您带来的perfview了,更多精彩软件请多多关注IE浏览器中文网站!