Airpods

PowerMetricsを使ってMacで個々のコアのCPU使用率を確認する方法

PowerMetricsを使ってMacで個々のコアのCPU使用率を確認する方法

PowerMetricsを使用するとMacのCPUコアアクティビティを確認できます

MacでCPU使用率を監視する方法はいくつかありますが、おそらく最も一般的なのは、グラフィカルインターフェースのアクティビティモニタと、コマンドラインのhtopまたはtopです。アクティビティモニタではオプションでコアグラフを表示でき、htopでもCPUコアのアクティビティが表示されますが、あまり知られていないpowermetricsというコマンドラインツールでも同様の情報を表示できます。

コマンドラインに精通していて、PowerMetricsについて聞いたことがない方は、ぜひご参加ください。私もeclecticlight.coの記事でCPUコアのアクティビティを確認する様々な方法が紹介されており、その中に「PowerMetrics」コマンドラインツールについて触れられていたので、自然と新しいツールを調べてみることに決めました。共有は思いやりですから、皆さんもこのコマンドの使い方を確認してみましょう。

powermetricsコマンドはARM MacとIntel Macの両方で役立ちますが、Apple Silicon Macに固有の追加機能があり、GPUアクティビティと効率コアに関する情報を確認できます。

PowerMetrics を使用して Mac 上の個々の CPU コアアクティビティを監視する

powermetrics は root ユーザーとして実行する必要があるため、すべてのコマンドの前に sudo が付きます。

最も基本的な powermetrics コマンドは次のとおりです。このコマンドは、個々のコアアクティビティを含む、Mac 上の CPU と GPU のすべての電力メトリックに関する情報を継続的に報告します。

sudo powermetrics

CPU パワーと GPU パワーの使用状況の概要も確認できます。
sudo powermetrics --samplers cpu_power,gpu_power --show-usage-summary

htop、top、アクティビティモニターといった他の人気ツールと比較したPowerMetricsのユニークな点は、CPUコアのアクティビティを1画面で更新するのではなく、新しい情報を新しい行に継続的に出力することです。そのため、PowerMetricsは一種のFirehose(火の勢い)のように、長時間放置すると大量のメモリを消費する可能性があります。この問題には様々な対処方法があり、EclectlicLightが推奨するように、データをテキストファイルに出力し、個別に解析・分析することも可能です。例として、以下のコマンドを挙げます。

sudo powermetrics -i 100 -o powermetrics.txt -n 10 -s cpu_power

これにより、100 ミリ秒ごとにサンプリングされた cpu_power (コア アクティビティを示す) に固有の最後の 10 エントリを含む「powermetrics」という名前のテキスト ファイルが提供されます。

興味深い新しいコマンドライン ツールを紹介してくれた eclecticlight.co に感謝します。

個人的には、htopとアクティビティモニタの両方、あるいはどちらかを常に使用しています。アクティビティモニタはDock CPUモニタをアクティブにした状態で常に開いておき、キーボードショートカットで簡単にアクセスして、使用していない時にすぐに起動できるようにしています。コマンドラインで作業している場合は、別のターミナルウィンドウでもhtopを実行しています。