CPUの温度、ファンスピードなど現状の値を知りたい場合に使えるmacOS標準コマンドがわかります。
管理者限定コマンド powermetricsです。
powermetrics gathers and display CPU usage statistics (divided into time spent in user mode and supervisor mode), timer and interrupt wakeup frequency (total and, for near-idle workloads, those that resulted
in package idle exits), and on supported platforms, interrupt frequencies (categorized by CPU number), package C-state statistics (an indication of the time the core complex + integrated graphics, if any, were
in low-power idle states), as well as the average execution frequency for each CPU when not idle.
macのマニュアル
powermetrics は、CPU 使用率の統計 (ユーザー モードとスーパーバイザー モードで費やされた時間に分けられます)、タイマーと割り込みのウェイクアップ頻度 (合計、およびアイドルに近いワークロードの場合は、結果として発生したものの合計) を収集して表示します。
サポートされているプラットフォームでは、割り込み頻度 (CPU 番号で分類)、パッケージ C ステート統計 (コア コンプレックス + 統合グラフィックス (存在する場合) が実行された時間の指標)
低電力アイドル状態)、およびアイドル状態でないときの各 CPU の平均実行頻度。
Googleの翻訳結果
macOS Big Sur以前で利用できます。macOS Monterey以降ではコマンドがアップデートされ、こちらに記載の方法で温度を取得することができません。
macOS Monterey「 sudo powermetrics -n 1 -s thermal」。結果「Current pressure level: Nominal」←このように温度管理の状態のみ取得できます。温度自体は取得できなくなっています。
【macOS標準コマンド】CPUの温度、ファンスピードをチェックする方法
ターミナルを利用し、以下コマンドを打ち込みます。標準コマンドなのでダウンロード等しなくても、存在するコマンドです(フルパスは/usr/bin/powermetrics)。ターミナルアプリは、Launchpad > その他フォルダの中にあります。
sudo powermetrics --samplers smc -n 1
Password:
powermetrics管理者限定コマンドです。sudo powermetricsとすることで管理者権限で実行することができます。ご利用には、管理者のパスワードが必要になります(自分のアカウント=管理者ならいつものパスワードで実行できます)。
powermetricsはCPU温度、ファンスピード以外にも情報がわんさか出力されます。そのため情報を絞り込むために「–samplers smc」を付けています。
また、powermetricsは通常ループして何度も出力する監視系コマンドとなっています。1回だけの出力にするため、「-n 1」を付けています。
実行結果はこのような感じになります。
Machine model: MacBookPro11,4
SMC version: 2.29f24
EFI version: 427.0.0
OS version: 20F71
Boot arguments:
Boot time: Thu Jun 3 08:27:43 2021
*** Sampled system activity (Thu Jun 3 10:10:27 2021 +0900) (5004.18ms elapsed) ***
**** SMC sensors ****
CPU Thermal level: 50
IO Thermal level: 0
Fan: 2189 rpm ←ファンスピード
CPU die temperature: 69.02 C← CPUの温度
CPU Plimit: 0.00
GPU Plimit (Int): 0.00
Number of prochots: 0
このようにファンスピードとCPUの温度がわかります。複数FANが内蔵されていても、CPUコア数が複数あっても、上記のように1つの結果にまとめられます。
powermetricsは上記以外にも様々な情報がわかります。「man powermetrics」(ターミナル)で詳しい使い方がわかります。
標準コマンドにこだわらない、smcコマンドです。
smcコマンドがあれば、以下のように内蔵されたファン毎の速度、CPUコア毎の温度(CPU[1-4]C packageと表記があるやつ)がチェックできます。
smc -f
Total fans in system: 2
Fan #0:
Fan ID : Left side
Maximum speed: 6156
Minimum speed: 2160
Safe speed : 0
Target speed : 2160
Actual speed : 2161
Mode : auto
Fan #1:
Fan ID : Right side
Maximum speed: 5700
Minimum speed: 2000
Safe speed : 0
Target speed : 2000
Actual speed : 2002
Mode : auto
smc -p
CPU key TC0E 62.473 [priority 2] CPU
CPU key TC0F 65.297 [priority 2] CPU
CPU key TC1C 60.000 [priority 2] CPU Package
CPU key TC1F 60.246 [priority 2] CPU
CPU key TC2C 57.000 [priority 2] CPU Package
CPU key TC3C 52.000 [priority 2] CPU Package
CPU key TC4C 56.000 [priority 2] CPU Package
CPU key TCXC 58.438 [priority 2] CPU Package
CPU key TCSA 56.000 [priority 3] PECI SA
CPU key TC0P 50.875 [priority 5] CPU Proximity
GPU key TCGC 59.000 [priority 3] PECI GPU
GPU key TPCD 56.000 [priority 6] Platform Controller Die
GPU key TP0P 49.625 [priority 7] Platform Controller Proximity
GPU key Th1H 47.000 [priority 7] Heatpipe
GPU key Th2H 45.375 [priority 7] Heatpipe
smcコマンドはサードパーティ製で無料でダウンロードできます。brewをご利用中なら「brew cask install smcfancontrol」とかでもsmcコマンドを入手できるかと思います。
より細くみたい場合に使えます。powermetricsでも十分わかるのでおすすめしているわけではありません。
mac野郎なのかは、https://github.com/beltex/SMCKit からソースコードを入手し、コンパイルしたものを使っています。(2016年12月2日の日付になっていました)
macOS Big Surでも動いています。上記smcの実行結果は、macOS Big Sur 11.4で実行した結果です。
M2 Mac+macOS Venturaの環境にて、https://github.com/beltex/SMCKit はコンパイルできませんでした。最新のコンパイル環境に対応できていません。コマンドが欲しい方はsmcFanControlのsmc-commandです。https://github.com/hholtmann/smcFanControl/tree/master/smc-commandはコンパイル可能でした。
アプリならオープンソースの「Hot」がいい感じでした。
「https://github.com/macmade/Hot/」はオープンソースの温度・ファンスピードを確認できるアプリです。Intel Mac、Apple M1/M2で動作します。MacBook Air M2で動作させると、メニューバーに温度が表示されます。温度をクリックすることでこのような表示になります。
Temperature Senserをクリックすると大量のセンサーとその温度の一覧が確認できます。
コンパイル済みのバイナリもダウンロード可能です。野良アプリをそのまま使うのは不安な方はコンパイルこともできます(ソースコードもダウンロード可能)。
ダウンロードの流れ
- https://github.com/macmade/Hot/にアクセス
- ここをクリック
- クリック後、下にスクロールするとダウンロードできるリンク(Hot.app.zip、Source code.zip、Source Code.tar.gz)があります。
Preferencesで設定変更したもの
- Refresh Interval 2秒 → 10 秒(更新間隔を長めに設定しています)
- Automatically check for updates ON→OFF(無駄なアップデートを避けるためにOFFにしています)
まとめ
macOSに備わっている標準コマンドで確認できたコマンドはpowermetricsだけでした(mac野郎なのか調べ)。
powermetricsはこちらの記事(2016年12月5日)でご紹介したことがあります。便利なコマンドの割に認知度が低いようなのでピックアップしました。