ニュース

Google Chromeにバッテリ動作を2時間延ばす試験的機能

 Googleは3日(現地時間)、同社WebブラウザのChromeの検証において、JavaScriptのタイマー処理を変更し、バッテリの消費を約28%抑制可能にしたことを報告している。

 Googleは開発ツールを使用して、複数ある人気サイトのバックグラウンドの動作を調べ、JavaScriptのタイマーから多くの作業が行なわれていることを確認。加えて、JavaScriptのタイマーの動作は、おもにスクロール位置の変更確認やログの提出、広告の作用の分析などに使われており、そのタブがバックグラウンドで動作している場合においては、まったくユーザーの役に立っていないことがわかった。

 GoogleはこのJavaScriptの挙動がバッテリに影響を与えていると見立て、ページが固まるといった不便が出ない程度に、バックグラウンドタブのJavaScriptの動作を変更する検証を行なった。

 1つ目の実験では、前面にブランクページを表示させ、バックグラウンドにGmailやAmazonなどといった36個のWebサイトをタブで表示。JavaScriptタイマーからのウェイクアップを、1分あたり1回になるように制限し、MacBook Pro 15インチ(2018年モデル、Core i9、32GBメモリ、macOS 10.14.6)のバッテリがなくなるまでを3回計測した。比較のためにSafari(13.1)のデータも計測されている。

実験1の結果
【表1】バッテリ駆動時間の検証結果 前面にブランクページ
バッテリ切れ平均時間バッテリ切れ最小時間バッテリ切れ最大時間
変更前6.4時間6.3時間7時間
JSタイマーを1分あたり1回に変更8.2時間8.2時間8.8時間
Safari9.3時間9.1時間9.4時間

 この結果、JavaScriptタイマーの変更前と比べてほぼ2時間動作が延びており、バッテリ駆動時間を約28%改善できた。

 また2つ目の実験として、基本設定は最初の実験のままで、今度は前面のタブにYouTubeで動画をフルスクリーン表示させつつ、ディスプレイの明るさ自動調節機能をオフにして行なった。

実験2の結果
【表2】バッテリ駆動時間の検証結果 前面にYouTube表示
バッテリ切れ平均時間バッテリ切れ最小時間バッテリ切れ最大時間
変更前4.7時間4.6時間4.6時間
JSタイマーを1分あたり1回に変更5.3時間5.3時間5.4時間

 動画を表示させたままでのこの結果では、変更前と比べてバッテリ駆動時間がたいだい36分(13%)延びる結果となった。

 Googleは今回の結果について、メッセージやアップデートを受信するためのWebSocketやロングポーリングを利用するアプリケーションに影響を与えずに、JavaScriptのタイマーからのウェイクアップを減らすことが可能という見解を示している。

 なお、この機能は試験版の「Chrome Canary」において、「chrome://flags」から設定可能なようだが、正式版のChromeに実際にいつ実装されるかは現時点では不明。