ブログに戻る

MacでWindowServerのCPU使用率が高い:その正体と対処法

WindowServerがCPUを100%以上消費していますか?これは画面のすべてのピクセルを描画するmacOSのプロセスです。なぜ急上昇するのか、心配すべきはいつか、そして実際に負荷をかけているアプリの見つけ方を解説します。

· 最終更新日:
このページの目次

まず確認すること

WindowServer はmacOSのウィンドウや視覚効果を合成します。CPU負荷はアプリ、アニメーション、ディスプレイ設定、macOS自体によって変わります。高い使用率だけで特定アプリやメモリリークが原因だと断定できません。

数値を下げるために強制終了しないでください。画面のセッションが終了し、未保存の内容を失う可能性があります。アクティビティモニタ → CPU で変化を記録し、一つずつ条件を調べます。

症状から確認する

以下は調査手順であり、実測結果や効果の保証ではありません。

負荷が上がる場面最初の確認結果の読み方
外部ディスプレイ接続後同じ作業で一時的に取り外す繰り返し下がるなら構成の影響を疑う。故障とは限らない
特定アプリやページを開いた後保存してアプリを終了、またはページを一時停止再現すればその作業や設定を調べる
動画、アニメーション、画面共有中一つの活動を止めて比較作業中の負荷と停止後も続く負荷を区別する
長時間で徐々に増える推移を記録しアプリを個別に試す増加だけではリークと確定できない
更新後OSとアプリの版を記録して再現該当バージョンの情報を確認。時期だけでは原因は分からない

WindowServerとは?

macOSのグラフィックシステムの一部で、通常は /System/Library/PrivateFrameworks/SkyLight.framework/Resources/WindowServer にあります。アプリとシステムの描画を表示用に合成します。

すべてのMacに共通する正常なCPU使用率はありません。 同じ機種、画面構成、作業で比較します。CPUの百分率は1コアを基準とするため、複数コアでは100%を超えることがあります。

他アプリの描画が負荷になる場合もありますが、macOSやグラフィック処理自体の問題も除外できません。

CPU負荷を調べる手順

ステップ1:基準を記録する

CPUタブでWindowServerを探し、待機時と症状を再現した時を比べます。各条件で例えば1分間など、観察時間を揃えてください。

Macのモデル、OSとアプリのバージョン、接続画面、解像度、スケーリング、リフレッシュレート、操作を記録します。

ステップ2:条件を一つだけ変える

保存後に疑わしいアプリを終了する、外部画面を一台外す、重いページを止めるなど、一つずつ試します。可能なら元に戻し、増加が再現するか確認します。

同時刻のピークより再現する変化が参考になりますが、アプリ、画面設定、OSの組み合わせが関係する場合もあります。

ステップ3:GPUと履歴を確認する

ウインドウ → GPUの履歴 は全体のGPU活動を示し、特定アプリがWindowServerの負荷の原因だと証明するものではありません。

ProcXray ではプロセスの履歴を比較し、Window Spy Pickerでウィンドウの所有アプリを確認できます。次に調べる対象を絞り、作業を変えて検証します。同時のCPU・GPUピークだけでは因果関係は確定しません。

ProcXrayでプロセス履歴とウィンドウの所有アプリを調べる →

ステップ4:結果に合う設定を試す

ステップ5:再現記録を残す

変更、観察時間、負荷の推移、反応や発熱の改善を記録します。特定できない場合は、むやみに終了を繰り返さず開発元やAppleサポートへ記録を渡します。

Macの発熱とファン音やウィンドウの所有プロセスも確認できます。

FAQ

WindowServerを終了・無効化できますか?

画面のセッションに必要です。強制終了するとログアウトや未保存データの消失につながります。保存して通常のログアウトや再起動を使ってください。

メモリが多いのはなぜですか?

描画資源と作業によって変わります。固定のGB数ではなくメモリプレッシャー、応答、再現性を見ます。メモリプレッシャーとリークも参照してください。

外部画面で増えるのはなぜですか?

画面数、解像度、スケーリング、リフレッシュレートが影響し得ます。一つずつ試してください。4K画面追加時の固定CPU倍率はありません。

再起動で永久に直りますか?

状態はリセットされますが原因は分かりません。同じ条件で戻る場合はアプリ、画面構成、OSバージョンを調べます。

参考資料