哥伦布

博客园 首页 新随笔 联系 订阅 管理

慢故障排查

采集

故障发生后开始进行采集

  1. 以管理员模式打开cmd命令行。
    执行如下2个命名
    mkdir C:\Temp
    wpr -start GeneralProfile
  2. 等候一会,建议:30秒~1分钟。等待太久会导致采集的文件很大。
  3. 执行下列命名保存文件
    wpr -stop C:\Temp\mouse.etl
    这个命令会提出Ctrl+C取消。请不要取消。等候文件保存完成

分析工具安装

确保系统已经下载安装了Windows ADK
如果没有请在这个地址下载安装器
https://learn.microsoft.com/zh-cn/windows-hardware/get-started/adk-install
下载后,运行 adksetup.exe 进行安装。
只需要装“Windows Performance Toolkit”
执行下列命令打开采集到的文件
wpa C:\Temp\mouse.etl

分析etl报告

第一步:定位卡顿时间点

在底部时间轴(0-35秒)上,回忆你“鼠标变慢”发生在哪几秒。用鼠标框选那段区域(比如 15s-20s),所有图表会同步放大到该区间。

第二步:查 DPC/ISR(核心:揪出驱动)

鼠标卡顿 80% 是驱动中断延迟。

  1. 左侧Graph Explorer → 展开** Computation** → 找到** DPC/ISR**(或 DPC and ISR Usage)。
  2. 双击它(或拖到右侧 Analysis)。
  3. 在下方表格中,将黄色分组条拖到 Module(模块)和 Function 后。
  4. 按 Max Duration (ms) 或 Total Duration 降序排列。
  5. 判断:微软建议单次 DPC 不应超 1ms。若看到某个 .sys 文件(如 nvlddmkm.sys 显卡、ndis.sys 网卡、storport.sys 硬盘/rt640x64.sys 瑞昱网卡等)持续超 5~10ms,它就是罪魁祸首。

第三步:查 CPU 占用(核心:揪出进程)

  1. 左侧 Computation → CPU Usage (Sampled),双击打开。
  2. 表格按 Process 分组,看卡顿时间段内谁占 CPU 最高(若 System 或 Interrupts 占比异常高,也指向驱动问题)。
  3. 若 explorer.exe 或某个游戏/软件占满,则是应用层卡顿。

第四步:查 UI Delays(可选)

左侧 Other/System Activity →** UI Delays**。若有红色/长条延迟,对应进程(如 explorer.exe)的 UI 线程被阻塞(常被杀软 Hook 或磁盘卡顿引发)。

常见“凶手”与对策

  • 显卡驱动(如 nvlddmkm.sys):更新/回滚显卡驱动,关闭硬件加速。
  • 网卡/蓝牙(如 ndis.sys / btfilter.sys):更新驱动,尝试禁用节能模式(设备管理器→网卡属性→电源管理→取消“允许计算机关闭此设备”)。
  • 存储控制器(如 storport.sys / iaStorAC.sys):检查硬盘健康,更新芯片组/SSD固件,关闭 PCIe 链路状态电源管理(ASPM)。
  • 第三方软件(罗技 G-Hub、杀软、悬浮球):退出测试,常因 Hook 导致 UI 延迟。
posted on 2026-10-20 10:35  哥伦布  阅读(5)  评论(0)    收藏  举报