78
OS X MavericksがMacBookのバッテリーを節約する4つの方法

2010年にAppleがiPadを発表したとき、私はその素晴らしいバッテリー寿命にすぐに夢中になり、Macでも同様の長寿命が実現する日が待ち遠しくなりました。

OS X Mavericks の近々リリースされ、同社のラップトップ ハードウェアの最新の改訂版がリリースされることにより、Apple のデスクトップ オペレーティング システムの最新版に組み込まれたいくつかの巧妙なソフトウェア トリックのおかげで、私 (およびおそらく他の多くの Mac ユーザー) の願いがようやく叶いそうです。

ハードウェアとソフトウェア

ノートパソコンのバッテリー寿命を延ばす明白な方法は、バッテリー容量を増やし、マシンのハードウェア コンポーネントの電力消費を減らすことです。この 2 つの目標は、Apple がコンピューターの製造方法を変更することで、長らく熱心に追求してきたものです。

例えば、ユニボディデザインの導入により、同社は比較的コンパクトなスペースで優れた容量を提供するカスタム成形バッテリーをコンピューターに搭載できるようになりました。また、ソリッドステートドライブやインテルの最新CPUといった最新技術の採用を継続し、ハードウェアの消費電力を削減しています。

ユニボディ MacBook は、同じ内部スペースを使用しながらより多くの電力を引き出せるようにカスタム形状のバッテリーを備えています。

しかし、ハードウェアの改良には通常、抜本的な技術革新が必要であり、よりコンパクトで軽量、そして同時にパワフルなコンピューターを求めるユーザーとは相容れないことが多い。Appleは、背面に数ポンドのバッテリーを追加することで、MacBook Airの寿命を簡単に2倍に延ばすことができるだろう。しかし、そのような動きは、デザインにこだわるApple自身にも、消費者にも受け入れられる可能性は低いだろう。

静かにしてください

そのため、同社はハードウェアの継続的な改良に加え、製品のソフトウェア面にも投資してきました。今秋後半に発売予定のMavericksでは、コンピューターのバッテリー駆動時間を延ばすことを目的とした興味深い技術がいくつか導入される予定です。

1 つ目は、 App Nap と呼ばれアクティブに使用していないアプリがシステムからあまり注目されないようにし、その過程でアプリの電力需要を削減します。

アプリのウィンドウが表示されず、アプリがオーディオを再生していない場合、アプリは「ナップ モード」に入ります。この時点で、次の 3 つのことが起こります。まず、アプリの優先度が下げられ、CPU がアプリに割り当てるアクティブな実行時間が減少します。次に、ハード ディスクやネットワークなどのデバイスにアクセスする機能が調整され、入出力操作による電力消費が制限されます。最後に、アプリのタイマーの起動頻度が低下し、より長い間隔でのみアプリがアクティブになります。

これら3つの技術を組み合わせることで、非アクティブなアプリがシステムに与える負荷が大幅に軽減され、消費電力も大幅に削減されます。また、コンピューターの容量がアクティブなアプリに割り当てらるため、アプリの応答性も向上します。

当然のことながら、すべてのアプリがこのような状況で動作できるわけではありません。例えば、QuickTime Playerが省電力モードに入るのを防ぐためだけに、ビデオのエンコード中にフォアグラウンドで動作させ続けるよう強制するのは不合理です。そのため、Mavericksでは、必要に応じて個々のプログラムがApp Napを無効にできるようになっています。

Apple の上級副社長 Craig Federighi 氏が、今年の WWDC 基調講演で Mavericks の多くの電力管理の改善について語りました。

小さいことは美しい

RAMは常に貴重なリソースです。あらゆるアプリがRAMを必要とし、非常に高速に動作する必要があるため、十分なメモリ容量を確保することは、システムパフォーマンスを最適化する上で非常に重要です。

実際、RAMは非常に重要であるため、ほとんどのオペレーティングシステムは、必要に応じてハードドライブ上にRAMを保存することで、コンピューターのハードワイヤードメモリを拡張します。この仮想メモリは、ほぼ無制限のメモリ供給を保証しますが、ハードディスクのアクティビティが増加し、パフォーマンスが低下するという代償を伴います。

Mavericksは、圧縮メモリと呼ばれる新しい技術を導入することで、仮想メモリの概念を拡張しますその名前が示すように、このシステムは、名目上は使用されているものの、どのアプリにもアクティブに使用されていないRAMの部分を透過的に圧縮することで機能します。これにより、ディスクスワップを必要とせずに、システムで利用可能な空きメモリが増加します。

メモリ圧縮に使用されるアルゴリズムは非常に効率的であるため、このプロセスは従来のディスクスワップよりもはるかに高速です。また、ハードディスクへのデータ転送回数が少なくなるため、物理ディスクの継続的な回転停止を防ぐことができ、消費電力も削減されます。さらに、SSDを搭載したコンピューターは摩耗が少なく、ハードウェアコンポーネントの寿命も長くなります。

時間はどんどん過ぎていく

Appleの3つ目の省電力技術は、ほぼすべてのアプリがタイマーと呼ばれるソフトウェア構造を用いて、特定の間隔でバックグラウンドでタスクを実行するようにスケジュール設定しているという事実に基づいています。アプリ同士が連携する手段がないため、これらのタイマーはしばしば無秩序に起動し、CPUを省電力モードから強制的に解除し、数行のコードを実行してから再びスリープ状態に戻るという動作を繰り返します。

Mavericks のタイマー統合機能を使用すると、コンピューターがバッテリー電源で動作しているときに、オペレーティング システムが、互いに短時間内に起動するようにスケジュールされているタイマーを自動的に集約して同時に実行します。これにより、システムが強制的に省電力モードに入ったり終了したりする回数が減り、アイドル状態 (電力消費が最小限になる時間) に費やす時間が長くなります。

Appleは長年にわたり開発者に対し、タイマーの絶対的な精度に頼るべきではないと述べてきました。システム負荷など、多くの外部条件によってタイマーの発動が予測不能な形で遅れる(あるいは早まる)可能性があるからです。そのため、Timer Coalescingはプログラマーがコードを微調整することなく、すぐに使えるはずです。

Apple の Core Technology ドキュメントからのこの画像は、タイマー統合により、タイマーが無秩序にではなく同時に起動されるようにすることで、CPU のアイドル時間を増やす様子を示しています。

プラグを抜いて、音量を上げて

次期OS Xのこれらの大規模な内部変更に加え、Safari 7には、ユーザーが必要とするまでプラグインを無効に保つ新しい省電力機能が搭載されています。例えば、Flashムービーを含むウェブページを開くと、ブラウザは自動的にムービーを起動するのではなく、静的なプレビューを表示します。プレビューをクリックするとプラグインが起動しますが、クリックしない限り、プラグインは追加の電力を消費しません。

メディア再生にもいくつかの改良が加えられます。Appleによると、iTunesはMacのGPUが提供するハードウェアアクセラレーションをより有効に活用し、映画鑑賞や音楽再生に必要な電力を最大35%削減するとのことです。

最後に、次期バージョンの OS X では、個々のコアの起動とクロック速度の高速化をサポートする Haswell プロセッサの利点をさらに活用できるようになり、新しいコアがオンラインになってより多くの電力を消費する前に、各コアが十分に活用されるようになります。

最高のアップル

全体的に、Mavericks の電源管理機能は、ハードウェアとソフトウェアの両方からバッテリーのパフォーマンスを最大限に引き出すために細心の注意が払われたオペレーティング システムのイメージを描き出します。

しかし、変更の本質は、その効果と同じくらい興味深いものです。Mavericksの省電力技術の多くは、他のベンダーから借用したものです。例えば、Windowsは長らくタイマー統合をサポートしてきました(ただし、オプトイン技術として)。また、ClickToFlashのようなSafari拡張機能は、ユーザーが要求しない限り、プラグインによるCPUリソースとバッテリーの消耗を防ぐために既に利用可能です。

しかし、これらをオペレーティングシステムに体系的に組み込まれていることは、Apple が水平思考と反復的な改善を行う能力を浮き彫りにしています。その結果、ほぼすべてのユーザーが、内部で何が起こっているかを心配することなく、バッテリー寿命とシステム応答性の劇的な改善を体験できます。これはまさに、私たちが Mac に期待する (そして愛する) 種類の体験です。

さらに良いことに、Appleの省電力化への熱意はサードパーティ開発者にも波及し、ソフトウェアの消費電力を調整する新たな方法の発見を促すでしょう。こうして好循環が生まれ、バッテリー持ちの悪さは過去のものとなり、より薄型で高効率なコンピューターの開発が可能になるかもしれません。私たち全員が次の技術革新を待つ必要はありません。