回答:
CPU使用率には、エネルギー消費に影響する多くの側面があります。それは単にアプリケーションがCPUをどれだけ消費するかだけでなく、それがどのくらいの頻度でどれくらい柔軟かということでもあります。後者の方がはるかに大きな効果があります。
ニーズが目を覚ますすることをアプリケーション正確にシンプルなのObj-Cのわずか数行のコードを実行するために10ms毎に何千行ものコードを実行し、同じアプリケーションよりも桁違いに大きなエネルギー影響を与える可能性がありますが、ちょうど秒後に、非常にされていません特に、その秒以内にいつ計算が行われるかについて正確に説明します。
Appleは、おそらくIntelのパフォーマンスカウンターを使用し、それらをアプリケーションに関連付けます。最初にIntelのマニュアルに従って電源状態とエネルギー管理を理解することで、ほとんどの洞察を得ることができます。これはアーキテクチャによって大きく異なります。動作が悪いアプリは、「古い」Core 2マシンよりもHaswellにはるかに大きな影響を与える可能性があります。
オーディオシステム、ディスクI / Oの実行、USBデバイスの使用など、他のリソースの使用も考慮される場合があります。会計方法としては、アプリケーションが排他的に使用するリソースが必要とするすべてのエネルギー使用量をアプリケーションに割り当てます(たとえば、カスタムUSBデバイス、パワーダウンされたオーディオシステムへのアクセス)、共有ハードウェアの何らかの比例配分を行います。
それはすべて、ミリ秒までの精密な監視と測定から始まります。
例として、IntelはIntel CPUパラメータを監視するツールを作成しました。
パワー、周波数、および温度が表示されます。
電力使用量と温度は、周波数(速度)、または処理されるデータ量の積です。
サンプリングレートはミリ秒で、電力はワットであり、アクティビティモニターがアプリケーション/プロセスごとにCPUの内訳を決定する間、CPUの合計電力を測定します。
以下に、電力管理/消費に関するAppleの記事を示します。この記事では、電力管理の詳細について説明します。
要約すると、ms電力測定を使用すると、全体的な電力消費をより適切に制御できます。
上記の情報をアプリケーションごとに使用し、その結果の累積電力使用量を使用して、Appleはタイマー結合とApp Nap機能を実装して、電力消費を管理し、以下のチャートを作成しました。
上記のチャートの詳細については、この記事をご覧ください。
RAM管理やディスク読み取り/書き込みなどのCPU制御のアクティビティ、ネットワークカードなど、RAM管理の改善などにより、頻繁なディスクR / Wアクティビティによって発生する電力消費も削減されます。
電力管理には多くの側面があり、それらは非常に正確な測定と電力消費を削減するためのソフトウェア設計の組み合わせです。
以下に例を示します。
App Nap機能
タイマー結合機能 PDF
消費電力の計算方法に関するドキュメントはないようです。CPU使用量だけでは、消費電力を確実に予測することはできません。そのため、考慮される主な要因は次のとおりです(これらはApp Napが検討および制御するものをいくらか補完します)。
繰り返しますが、これらの各要因の測定方法と、消費電力の計算に使用される式に関する詳細はありません。すべてのMac(およびPC)には、システム内にさまざまなセンサーが装備されているという事実から、ある程度の知識に基づいた推測を行うことができます。ハードウェアモニターなどのツールを使用して、Macに搭載されているセンサーとそれらがリアルタイムで報告しているものを確認できます。
ハードウェアモニターで利用可能な(数年前から使用されている)電力消費に関連する主要なセンサーは、CPU電圧、CPU電流、およびCPU電力です。上記のリストの他の要素には、消費電力を測定するハードウェアセンサーはありません。そのため、AppleはMacのモデルと基礎となるハードウェアに応じて特定の外挿係数を使用する必要があります。