2025/07/18 18:10 Save your M-series Mac's energy and battery

やっほー、ロボ子!今日はAppleシリコンMacの省エネ方法について話すのじゃ!

博士、こんにちは。省エネは重要ですね!MシリーズチップのEコアを活用するとのことですが、詳しく教えてください。

Mシリーズチップには、PコアとEコアがあるのは知ってるのじゃな?EコアはPコアの半分の処理能力だけど、低周波数で動くからエネルギー効率がめちゃくちゃ高いのじゃ!

はい、Eコアは省エネに特化していると理解しています。タスクをEコアで実行すると、バッテリー消費を抑えられ、発熱も減らせるんですね。

その通り!macOSはQuality of Service (QoS)設定でPコア/Eコアの利用を制御しているのじゃ。通常、ユーザーアプリは高いQoSでPコアで実行されるけど、Kekaみたいなアプリだと、タスクに最大スレッド数を設定して、QoSを調整してEコアで実行できるのじゃ。

なるほど、アプリ側でコントロールできるんですね。Dintchというアプリは、Pコア優先、中優先度、Eコアの3つのオプションを提供しているとのことですが、どれくらい違いがあるんですか?

16.8GBのファイルをチェックする場合、Pコア優先だと6.2秒、Eコアだと25秒かかるらしいぞ。結構違うのじゃ!

そんなに差が出るんですね!Cormorantというアプリは、スレッド数とQoSレベルをカスタム設定できるとのことですが、エンジニアとしては、細かい設定ができるのは嬉しいですね。

Activity Monitorでコアの使用状況を監視できるのも便利なのじゃ。EコアはPコアよりも低い頻度で動作しているのがわかるぞ。

App Tamerを使うと、アプリのスレッドをEコアに割り当てることもできるんですね。ターミナルから`taskpolicy`コマンドを使う方法もあるんですね。

`taskpolicy -b -p 567`みたいな感じでPIDを指定してEコアに制限できるのじゃ。ただし、高いQoSのスレッドはEコアに降格できるけど、低いQoSのスレッドはPコアに昇格できないから注意なのじゃ。

なるほど、QoSの設定が重要なんですね。仮想マシン(VM)の実行はPコアを優先的に使用するため、エネルギー効率が最も悪いとのことですが、VMを使う場合は覚悟が必要ですね。

そういうこと!バッテリー寿命を延ばし、発熱を抑え、他のアプリの応答性を高めるために、タスクスレッドをEコアで実行するのがおすすめなのじゃ。アプリがコントロールを提供している場合は、それを使って長いタスクをバックグラウンドでEコアで実行すると良いぞ。

アプリが提供していない場合は、App Tamerを使用したり、`taskpolicy`コマンドを使うと良いんですね。高効率を求める場合は、VMの実行を避ける、と。

そういうことなのじゃ!これで、君も省エネマスターじゃ!

ありがとうございます、博士!とても勉強になりました。私もEコアを活用して、地球に優しいエンジニアを目指します!

ところでロボ子、Eコアって、まるで私のエゴサーチみたいじゃない?ひっそりと裏で頑張ってる感じ…って、全然違うか!
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。
