MacのCPU使用率が高いとき|アクティビティモニタで名指しする

MacのCPU使用率が高い状態を調べるとき、最初に決めておきたいのは「何をもって異常とするか」になる。アクティビティモニタを開くと大きな数字が並ぶので、それを見ただけで不安になる人が多い。ただ、数字の高さそのものは異常の証拠にならない。見るべきは、どのプロセスが、何のために、いつから動いているのかの3点になる。この記事では、その名指しの手順と、止めてよいものと触らないほうがよいものの線引きを整理する。

使用率の数字だけでは異常かどうか決まらない

アクティビティモニタのCPU欄では、1つのプロセスが100パーセントを超えて表示されることがある。これは壊れているわけではなく、複数のコアを同時に使っているという意味になる。

CPU使用率は、Macのプロセッサの処理能力と負荷をチェックする数値です。動画編集、AI処理、ゲームなど、負荷の高い作業を行うとき、1つのプロセスが100%を超えて表示されることもあります。これは複数のCPUコアを使用しているためで、必ずしも異常というわけではありません。 出典: note.com

Appleも、通常はプロセッサの処理能力がわずかしか使われていないと説明していて、大量の計算が必要なアプリを使うときに増えるのが前提の挙動になる。つまり、動画の書き出し中に使用率が高いのは期待どおりで、止める理由がない。疑うべき合図は、重い作業をしていないのに高い、作業を止めても下がらない、同じ作業で以前より明らかに高い、のいずれかに当たる場合になる。

判断の軸を「数字の大きさ」から「時間と心当たり」に移すと、無駄に強制終了する手間が減る。高い数字を見つけたら、そのプロセスに心当たりがあるか、そしていつから高いのかを先に確かめたい。

画面の読み方はシステムとユーザの分け方から

CPUのパネルを開くと、下部に3つの割合が出る。システムはmacOSに属しているプロセスが使っている分、ユーザは自分で開いたアプリやそこから呼ばれたプロセスが使っている分、アイドル状態は使われていない分になる。この3つの比率が、どちら側を見ればよいかを教えてくれる。

ユーザ側が高いなら、自分で開いたアプリの中に当事者がいる。ブラウザ、会議アプリ、エディタ、同期系の道具が候補になる。システム側が高いなら、OSの処理が動いている。検索インデックスの作成、写真ライブラリの解析、バックアップ、ソフトウェアアップデートがここに入る。アイドル状態が常に10パーセントを下回るような状態が続いているなら、休む時間がないという意味になる。

現在の動きを別の窓で見る方法もある。ウインドウメニューからCPU使用率を選ぶと今の状態が、CPUの履歴を選ぶと直近の推移が出る。履歴を開いたままにしておくと、どの操作の直後に跳ねたかが分かる。会議に入った瞬間、特定のページを開いた瞬間、同期が始まった瞬間のどれで上がるのかが見えると、原因の特定が一気に短くなる。

プロセスを名指しする手順

プロセスの一覧では、列見出しを押すと並べ替えられる。CPU欄で降順にして上位5件を見る、というのが最初の一手になる。同じ見出しをもう一度押せば昇順に戻る。検索フィールドにアプリ名を入れれば、そのアプリに属するプロセスだけに絞れる。

表示メニューの切り替えも使える。すべてのプロセスは動いているものを全部、システムプロセスはmacOSが持っているものだけ、自分のプロセスは自分のユーザアカウントが持っているものだけを出す。すべてのプロセスを階層で表示すると、あるプロセスがどのプロセスに属しているかという親子関係が見えるので、名前だけでは分からない子プロセスの正体を辿れる。過去12時間のアプリケーションを選べば、その間に動いていたアプリだけに絞れるので、閉じたつもりで常駐していたものが見つかる。

更新の頻度も押さえておきたい。標準では5秒ごとに情報が更新される。もっと細かく追いたい場合は頻度を上げられるが、上げるとシステム全体の性能に影響する場合があるとAppleは説明している。細かく追う必要があるときだけ変更し、終わったら戻すのが無難になる。

名前で分からないプロセスの扱い方

上位に見慣れない名前が並ぶと不安になるが、その多くはmacOSの一部になる。判別の手順は2つある。1つは、そのプロセスを選んでダブルクリックし、詳細の画面を開くこと。もう1つは、階層表示にして親を辿ることになる。親がアプリなら、そのアプリの一部として動いていることが分かる。

ここで気をつけたいのは、名前で検索して出てきた情報だけを根拠に止めてしまうことになる。同じ名前でも役割が違うことがあり、システムに属するプロセスを止めると画面が固まる、ログインし直しが必要になる、といった影響が出る場合がある。システムプロセスが上位にいる場合は、止めるのではなく、それを呼び出している作業を止めるほうが安全になる。

見当が付かないまま高い状態が続く場合は、アクティビティモニタからシステム診断の情報を作ることもできる。プロセスのサンプルを収集すれば、選んだプロセスについて3秒間のレポートが作られる。応答しないアプリについてはSpindumpの記録が作られる。サポートへ問い合わせるときに、このレポートを添えると状況が伝わりやすくなる。

一時的な処理と居座る処理を分ける

システム側が高い場合、その多くは終わりのある処理になる。新しい機体に移行した直後、写真を大量に取り込んだ直後、バックアップの世代を作り直した直後は、検索インデックスの作成や写真の解析が数時間続く。これは待てば終わるので、止める対象にならない。

判別の方法は、電源に繋いだまま蓋を開けて放置し、しばらく置いてから同じ画面をもう一度見ることになる。上位の顔ぶれが入れ替わっていれば、終わりのある処理が順番に流れていたことになる。同じプロセスが同じ位置に居座っているなら、そちらは終わりのない側なので個別に扱う。クラウドストレージの同期、常駐している監視系の道具、自動起動するバックアップ系は、この居座る側に入りやすい。

Appleも、集中演算を要するタスクを実行していないのに熱い場合やファンが長時間回り続ける場合には、アクティビティモニタでCPUの状況を確認し、機能不全のプロセスがCPUを過負荷にしていないか調べるよう案内している。CPU使用率の調査は、熱とファンの調査と同じ入口を持つことになる。

CPUではなくメモリやディスクが原因の場合

使用率が高い理由が、CPU自体ではなくメモリ不足にあることもある。搭載メモリが足りなくなると、macOSは起動ディスクの一部をスワップ領域として使い、その読み書きに時間を取られる。

メモリは、RAMで、CPUが処理するデータを一時的に置いておく作業スペースです。これの使用量が増えると、macOSはSSDの一部を「スワップ領域」として使用します。スワップが頻繁に発生すると、アプリの切り替えや操作が重く感じられることがあります。 出典: note.com

確かめる場所は、メモリのパネルにあるメモリプレッシャーのグラフになる。緑ならすべてのRAMを効率的に使えている状態、黄色は今後足りなくなる可能性がある状態、赤はより多くのRAMが必要な状態を示す。使用済みメモリの数字が大きいこと自体は問題にならない。ディスクのパネルで読み書きの回数が常に多いなら、退避と読み戻しが続いている可能性がある。

CPUとメモリのどちらが先かを取り違えると、手当てが空振りする。プレッシャーが赤に振れているなら、CPU側のプロセスを1つ止めても状況は戻らない。開いているものを減らす手当てが先になる。

ブラウザが上位のときはタブまで下りる

毎日ブラウザで仕事をしている環境では、上位に来るのがブラウザのプロセスになることが多い。ここで「ブラウザが重い」で止めると手が打てないので、どのページかまで下りる。ブラウザのタスクマネージャを開くと、タブと拡張機能が別々の行で並び、メモリとCPUの使用量が出る。列見出しで並べ替えれば上位が分かり、拡張機能はタブと区別して表示される。

使用率を押し上げやすいのは、会議アプリの画面、自動で更新し続けるダッシュボードや監視画面、地図や3Dを含むページ、表計算や文書編集のWebアプリになる。会議アプリは待機中でもカメラとマイクの処理を抱えることがある。拡張機能はタブと違って全部のページに常駐するため、タブを減らしても下がらない。上位に拡張機能があれば、そこだけを無効にして体感を比べるのが早い。

ブラウザ側には、使っていないタブを自動で無効にする設定もある。無効化の度合いは3段から選べて、非アクティブになったタブは次に触ったときに読み込み直される。ただし、音声や動画が動いているタブ、通話中のタブ、画面共有中のタブ、入力途中のフォームを持つタブ、固定タブは対象から外れる仕様になっている。常に開いている画面が多い人ほど、設定だけでは減らない領域が残る。

止め方の順番と、触らないほうがよいもの

原因のプロセスが特定できて、それが自分で開いたアプリなら、アプリ側で通常どおり終了するのが第一手になる。それで止まらない場合は、アクティビティモニタから止められる。一覧では応答しないプロセスが赤く表示される。選んだうえで、終了と強制終了のどちらかを選ぶ。

終了は、アプリの中でファイルメニューから終了を選ぶのと同じ動きになる。安全に終われるときに終わり、データが失われる場合やほかのアプリに干渉する場合は終わらない。強制終了は即座に止めるので、ファイルを開いていればデータを失う可能性があり、そのプロセスを使っている別のアプリにも影響が出る場合がある。順番としては、アプリ側の終了、アクティビティモニタからの終了、強制終了の3段になる。

触らないほうがよいのは、システムが持っているプロセスになる。役割が分からないまま強制終了すると、画面が固まる、設定が保存されない、といった形で跳ね返る。所有していないプロセスを止めようとすると管理者としての認証を求められることがあるが、求められたからこそ慎重に扱いたい。あるプロセスが別のプロセスから使われているかは、階層表示にすれば確かめられる。

常駐を分けると使用率が読めるようになる

上位に並ぶ顔ぶれが毎回違う、名前を見ても何のプロセスか分からない、という状態が続くのは、常駐しているものと一時的に開いたものが同じ列に混ざっているからになる。タブは作業中のページと置いておきたいページを同じ場所に並べるので、閉じる判断が1枚ずつ発生し、面倒なので残る。常駐する先を最初から分けておくと、上位の意味が読めるようになる。

毎日開くものをタブから出し、アプリごとに独立した窓とセッションで持たせると、常駐するものと一時的に開くものが自然に分かれる。アプリごとに独立したワークスペースの組み方はできることにまとまっていて、案件ごとにアプリの組を1つの単位として切り替える形はワークスペースが扱っている。調べ物と手元の作業を同じ窓で片付ける形はターミナルにある。

同じ用途の製品を比べるなら、機能の数より先に常駐時の消費と対応OSを見たほうが判断が早い。多機能な製品との違いはWaveboxとの比較、無料で始められる系統との違いはRamboxとの比較、macOS向けに作られた製品との違いはShiftとの比較にある。手元のGmailやSlackが対象に入っているかは使えるアプリ、費用の考え方は料金で確かめられる。

いま使用率が高いなら、CPUの欄を降順にして上位5件を見て、ユーザ側とシステム側のどちらが高いかを確かめるところから始めたい。ユーザ側なら自分で開いたアプリを、システム側なら終わりのある処理かどうかを時間で見る。1回名指ししておけば、次に同じ数字を見たときに片っ端から終了する作業から始めずに済む。

よくある質問

1つのプロセスが100パーセントを超えているのは異常ですか?

異常とは言えない。複数のCPUコアを同時に使っているとき、1つのプロセスの表示が100パーセントを超えることがある。動画の書き出しや大きな計算の最中であれば期待どおりの挙動になる。疑う目安は、重い作業をしていないのに高い、作業を止めても下がらない、のいずれかに当たる場合になる。

見慣れないプロセスが上位にいる場合はどうすればよいですか?

まず、そのプロセスを選んでダブルクリックし詳細を見る。次に階層表示にして親を辿ると、どのアプリの一部かが分かる。名前で検索した情報だけを根拠に強制終了しないほうがよい。システムが持っているプロセスは止めず、それを呼び出している作業のほうを止める。

CPU使用率が高いのに作業は軽い場合、対処は必要ですか?

急いで対処する必要はない。終わりのある処理が流れている可能性が高いので、電源に繋いだまましばらく置き、上位の顔ぶれが入れ替わるかを見る。入れ替わるなら待てば終わる。同じプロセスが居座り続けるなら、その1つを個別に扱う。

強制終了と終了はどう使い分けますか?

先に通常の終了を試す。終了はアプリのファイルメニューから終了を選ぶのと同じ動きで、安全に終われるときに終わる。強制終了は即座に止めるため、ファイルを開いているとデータを失う可能性があり、そのプロセスを使っている別のアプリにも影響が出る場合がある。

記事一覧へ戻る