Apps

OS X の動作が遅くなる原因となる systemstats CPU 使用率の問題を解決する

OS X の動作が遅くなる原因となる systemstats CPU 使用率の問題を解決する

Macでsystemstatsプロセスが暴走する

systemstats プロセスは、システム統計と電力使用状況に関する情報を取得するために使用されます。通常はバックグラウンドで気付かれずに実行されますが、systemstatsd プロセスと systemstats プロセスは OS X でランダムに狂い、CPU を 100%~300% 以上消費して Mac の速度を低下させることが知られています。

通常、アクティビティモニタや top で systemstats が短時間急上昇しても心配する必要はありません。多くの標準的な Mac 機能によって、systemstats が一時的に表示されることがあります。たとえば、systemstats プロセスは、OS X のバッテリーメニューからエネルギー使用状況オプションを確認することで MacBook シリーズでトリガーされ、他のユーザーが他のエネルギー設定を調整しているときに簡単に表示されることがあります。問題は、プロセスが明らかな理由もなく非常に高い CPU 使用率で常時実行されている場合に発生します。ここではそれを解決します。

誤った systemstats プロセスを強制終了する

systemstats プロセスを強制終了するだけで、OS X で発生するほぼすべての CPU 使用率と速度低下の問題を解決できます。

ターミナル: スピードを優先してターミナルを使いたい人にとって、暴走した systemstats プロセスを制圧するのは、killall コマンドを実行するだけです。

sudo killall systemstats

systemstats プロセスは root として実行されるため、sudo が必要です。

アクティビティ モニタ: 多くのユーザーは OS X GUI 内で作業を続けることを好むため、アクティビティ モニタではプロセスを強制的に終了する機能も提供されています。

  1. アクティビティモニターを開き、「検索」機能を使って「systemstats」を検索します。
  2. 問題のあるsystemstatsプロセスを選択し、(x)ボタンを選択して強制終了します。
  3. 複数のプロセスがCPUを過度に消費している場合は、これを繰り返します。

これで問題はすぐに解決されるはずですが、バッテリーやシステムの使用状況に継続的にアクセスしようとすると、プロセスが再び表示されます。

問題が引き続き発生する場合は、SMC をリセットすると問題が解決される可能性があります。

さらに、App Nap を無効にすると、システムの起動時または起動時にのみ発生するシステム統計の残存問題や突発的な問題も解決される可能性があります。

システム統計を無効にする

これは推奨されません。App Nap機能を含むバッテリーと電源管理の監視を無効にするだけでなく、意図しない結果をもたらす可能性があります。ただし、systemstatsを無効にしてデーモンをlaunchdからアンロードすることは可能です。これは上級ユーザーのみに限定してください。

sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.systemstatsd.plist

sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.systemstats.daily.plist

sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.systemstats.analysis.plist

なお、これにより、コンソール システム診断レポートにすべての「powerstats」レポートが表示されなくなることにも注意してください。

繰り返しますが、systemstats を無効にすることは推奨されません。これらの変更は、以下の3つのコマンドでデーモンを launchd にリロードすることで元に戻すことができます。

sudo launchctl load -F /System/Library/LaunchDaemons/com.apple.systemstatsd.plist

sudo launchctl load -F /System/Library/LaunchDaemons/com.apple.systemstats.daily.plist

sudo launchctl load -F /System/Library/LaunchDaemons/com.apple.systemstats.analysis.plist

どちらの場合でも、変更を完全に有効にするには Mac を再起動する必要があります。