前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >安装Windows Performance Toolkit进行0.1微秒级CPU监控

安装Windows Performance Toolkit进行0.1微秒级CPU监控

原创
作者头像
Windows技术交流
修改2021-10-07 00:32:02
2.4K0
修改2021-10-07 00:32:02
举报
文章被收录于专栏:Windows技术交流Windows技术交流

参考:

https://www.pianshen.com/article/4385736680/

https://blog.csdn.net/Pig_Pig_Bang/article/details/81068888

https://blog.csdn.net/Pig_Pig_Bang/article/details/81284122

https://developer.microsoft.com/en-us/windows/downloads/sdk-archive/

win10版的winsdksetup.exe和adksetup.exe不适用2008R2、适用≥2012R2,使用winsdksetup.exe和adksetup.exe都能在≥2012R2系统上安装Windows Performance Toolkit(含wpr.exe命令)。2008R2或Win7只能使用Windows 8.1 SDK,云服务器上WPT(wpr和wpa)跟实体物理机上的表现可能会有差异。

winsdksetup.exe

https://developer.microsoft.com/zh-cn/windows/downloads/windows-10-sdk/

adksetup.exe

https://docs.microsoft.com/zh-cn/windows-hardware/get-started/adk-install

我研究了WPR,它的最小时间单位是0.1微秒,即10000个单位是1毫秒,精细度非常高,所以用它研究一些性能问题

安装过程如下

下载winsdksetup.exe或adksetup.exe

先运行安装文件进行下载,下载时只勾选Windows Performance Toolkit和dotnet即可,下载相关文件到默认目录C:\Users\Administrator\Downloads\Windows Kits\10\WindowsSDK,然后再进到这个目录进行安装,安装的时候只安装Windows Performance Toolkit

C:\Users\Administrator\Downloads\Windows Kits\10\WindowsSDK

安装成功后在开始菜单找到Windows Performance Recorder,可以在图形界面上点鼠标,也可以通过命令行方式操作,其官网文档的命令行demo较少,目前比较实用的就是CPU监控部署

我命令行调用WPR写了个for循环,1分钟写一个监控文件,到60次结束后计数器重置为0,$times继续++,目前已经循环了一个小时,完全符合我的预期,如果不通过循环覆盖,1小时就得写10TB左右的量,内存和硬盘肯定存不下。

for($times=1;$times -le 60;$times++)

{

wpr -start cpu -instancename CpuSession;

Start-Sleep -seconds 60;

wpr -stop c:\cpu$times.etl -instancename CpuSession;

if($times -eq 60) {$times=0}

}

核心代码就上面几行,后来我搞了几版完善健壮性,V3版是比较OK的版本。

使用说明:脚本运行起来不要关窗口直到你收到告警(比如用户自建数据库集群发生高可用切换时他会收到告警),这个时候就可以上机关掉脚本运行的窗口结束循环了,但是结束之前的最后一个循环节只执行了wpr -start,还没执行stop,需要你手动执行wpr -stop cpu.etl -instancename CpuSession把WPR彻底关停后再做分析。

如果执行过程中的屏显日志需要采集,可以重定向到一个txt文件。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云服务器
云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档