explorer.exe のCPU使用率がずっと25%ぐらいになって困った。しかし「とりあえずクリーンインストール」という考え方だと再発したときに対処できないので、原因が知りたい
Linuxでは perf コマンドというものがあり、どのような関数が多くCPUを使っているのか ランキング形式で見ることができる。
出典元 : Using Performance Counters for Linux – Anton's Blog
これに似たようなことをWindowsでもできれば、と思って情報を集めた。
結果、2つのツールが使えることがわかった。
名前 | 役割 |
---|---|
Windows Performance Recorder | 一定期間のパフォーマンス情報を記録するツール |
Windows Performance Analyzer | Recorderで記録したファイルの中身を見るツール |
これらのツールは Windows 10 SDKの一部みたいなので、SDKをインストール。 インストールするものを選ぶ画面で Windows Performance ToolKit みたいな名前のものを選べばOK
インストール後、スタートメニューで perform と検索したらふたつともすぐに見つかった
Recorderで記録
Recorderの使い方はとても簡単で、CPU使用率系を取りたい場合は CPU Usage にチェックを入れて、Start を押すだけで記録開始となる。 記録し終わったら、Save を押す。
Analyzer で結果を見る
つぎに、Analyzerで記録したファイルを開く。 初期状態では Symbols Disabled と表示されていて関数名が見えないことがあるが、これは 上メニューの Trace > Load Symbols を選択してシンボル情報を読み込んであげたらOK
まとめ
- Windowsにおいて、プロセスごとの負荷が高い関数を調べるためには Windows Performance Toolkit を使う
- SDKを入れるだけで良いので、気軽にできてとてもいい!