-
概述
- 記錄一次 cpu 占用的定位與診斷
-
背景
- 前段時間卸載了 wise system monitor, 系統不再崩潰
- 不過卸載的時候, 顯卡驅動掉了, 所以我重裝了一次顯卡驅動
- 感覺又恢復了祥和
- 誰知道電腦時不時又抽風
1. 症狀
-
概述
- 電腦的並發症
-
症狀
-
忽然變遲鈍
-
cpu 占用率打到 100%
- i7-8700k, 12 個假核心都滿了
- 雖然現在只是 i5 水平了, 但是 12 個核心都沾滿, 一般的游戲, 應用也不會這樣
-
機箱風扇大作
- cpu 占用率上來, 原因就是 cpu 在工作
- 6 個物理核滿負載工作, 必然就會有比較大的功率消耗
- 結果就是 風扇呼呼大作, 感覺就像要起飛了...
-
感覺普通的任務管理器, 已經滿足不了我定位問題的需求了
-
2. 工具
-
概述
- procexp64
-
procexp64
3. 思路
-
概述
- 處理問題的基本思路
-
cpu 占用率
- 關注 cpu 占用
- procexp64 肯定會給出一個 進程
- 找到那個進程, 后續再想怎么處理
4. 處理過程
- 概述
- 問題的過程
1. 定位
- 結果
- Interrupt - 系統中斷
- 沒有對應的進程...
- 卧槽這是什么鬼
- Interrupt - 系統中斷
2. 換了個思路
-
系統中斷
- 原因
- 系統 IO
- 原因
-
我去看了看 IO
- 果然有個文件, 一直占用着 IO
- 0.dat
- 果然有個文件, 一直占用着 IO
-
繼續關注文件
- 發現文件是 Nv 開頭的進程一直在寫入
- Nv...難道是那個 皮衣男?
- 發現文件是 Nv 開頭的進程一直在寫入
3. 后續
-
關閉服務
NVDisplay.ContainerLocalSystem NvContainerLocalSystem NvContainerNetworkService
-
結果
- 關閉之后沒多久, cpu 的高占用就沒有發生了
- 而且操作后一天之內, 再沒有出現過 cpu 高占用的情況
- 差不多是我粗略驗證了一天, 再寫下來的吧...
-
問題
- 這三個 顯卡相關 的服務, 關了顯卡不會受影響嗎?
- 我查閱了下, 初步感覺影響不大
- NVIDIA Display Container LS 和 NVIDIA 控制面板 有關
- 如果真的要用了, 可以先手動開啟服務, 再使用控制面板
- 其他的服務, 暫時沒什么影響
- 退一步, 實在不行最后再來打開
- 我查閱了下, 初步感覺影響不大
- 這三個 顯卡相關 的服務, 關了顯卡不會受影響嗎?
ps
-
ref
- 大神出來看看NVIDIA這幾個服務到底做什么的
- 這算是一個簡單的說明, 官方的內容, 我懶得找了...
- NVIDIA驅動程序導致Windows 10的CPU使用率高
- 2019 年的新聞
- 新聞里說, 修正了NVDisplay.Container.exe在430.39驅動程序中引入的CPU使用率過高的問題
- 我目前的版本, 是 445.75, 所以...
- 2019 年的新聞
- 大神出來看看NVIDIA這幾個服務到底做什么的
-
后續
-
莫名其妙的瞎折騰一陣后, 對 win10 的一些問題定位, 已經稍微有了些眉目
- procexp
- 查看資源占用, 查看 io
- 定位 資源消耗 進程
- wdk 下的 windbg
- 查看內存崩潰的 dmp 文件
- 定位崩潰進程
- procexp
-
進一步確認
- 目前能做的東西, 只能定位到 進程
- 處理的辦法, 除了 關閉, 卸載 之外, 暫時沒有
- 但是來自 堆棧, 內存 的具體 信息
- 如果可以准確給開發者反饋, 應該能幫上他們不少吧
- 目前能做的東西, 只能定位到 進程
-
后續還碰到了沒有 io 的系統中斷...
- 當然是后話了, 不過這...
-