macOS CatalinaでphotoanalysisdのCPU使用率が高い場合の対処法

従来からmacOSでは写真アプリのプロセス「photoanalysisd」のCPU使用率が高くなることがあったが、Catalinaになってからは更にCPUを占有するようになっており、個人的に処理の時間も従来より長くなっているように思う。

ここではmacOS Catalinaで「photoanalysisd」のCPU使用率が高い場合にターミナルの使用や再起動などの面倒な行程を経ずに済む対処法を紹介する。

そもそもphotoanalysisdとは?

photoanalysisdとはmacOS Sierraから追加された写真アプリのプロセスの一つで新たにライブラリに追加された写真が存在する場合「写真の中に連絡先に載っている人物が写っていないか?」「メモリーを作る必要がある写真がないか?」などの処理を行っている。

これらの処理は写真アプリの起動に関わらず常にバックグラウンドで実行されており、頻繁に利用するMacであればCPU使用率はあまり気にならないのだが、例えば「数日ぶりにサブのMacを起動した」「macOSを再インストールして写真ライブラリがリセットされた」といった場合には写真が膨大にあると前述した処理が長時間行われるためCPU使用率が極端に高くなる。

macOS Catalinaで簡単にphotoanalysisdの動作を止める方法

photoanalysisdの高CPU使用率状態を簡単に解消するには下記の操作を行う。

なお、下記方法はmacOS Catalina 10.15.2以降でのみ有効という点に注意。

写真環境設定からメモリー関連のチェックを外す

まず写真アプリを開きメニューバーの「写真」>「環境設定」をクリックして設定画面を開く。

「一般」タブの「メモリー」にある二つの項目(祝日イベントを表示・メモリーの通知を表示)のチェックを外し、写真アプリを完全に閉じる。

これだけでphotoanalysisdのバックグラウンド処理が停止する。

再度写真アプリを立ち上げた場合は再び処理が始まるが、バックグラウンドでの処理は行われなくなるため、写真アプリさえ起動しなければCPU使用率を長時間食うという問題は回避できる。

macOS Catalina 10.15.2以前のmacOSの場合

macOS MojaveなどのmacOS Catalina 10.15.2以前のmacOSの場合、前述の方法は環境設定に項目がなく通用しないのでターミナルを使用して下記の手順のいずれかを行う。

photoanalysisdプロセスの動作を止める

ターミナルで下記コマンドを実行すれば一時的にphotoanalysisdの動作が止まるが再起動した際に再び起動してしまうという問題がある。

launchctl stop com.apple.photoanalysisd

photoanalysisdを削除する

完全にphotoanalysisdの動作を止めるには下記コマンドでphotoanalysisdを削除する。

sudo launchctl remove com.apple.photoanalysisd。

ただし、この方法はmacOS内の重要なサービスのファイルを削除することになるためリスクが大きい点に注意。

トラブルが起きた際は下記のコマンドで復元可能だが写真ライブラリがおかしくなることがあるため、完全に元通りになるかは保証できない。

sudo launchctl load com.apple.photoanalysisd

なお、iCloudで写真の同期を止める方法もあるが、その場合全ての写真が削除されてしまう可能性があるのでこちらもあまりお勧めはしない。

まとめ

macOSの写真アプリはメジャーアップデートの度にiOSの機能を順次追加していっているため、場合によってはCPU使用率が高くなるといったようにユーザーによっては少々ストレスとなる動作をすることがある。

幸いmacOS Catalina 10.15.2では簡単にバックグラウンドでの処理を止める方法があるが、Appleには全てのmacOSでこれらの機能・処理を簡単にオフにできるオプションを用意してほしい。