やじうまPC Watch
ノートPCのバッテリを過剰消費しているChrome長年のバグが解決へ?
(2014/7/19 06:00)
米Forbes誌に寄稿するIan Morris氏の記事が引き金となり、Chromeが抱える長年のバグが解決されるかもしれない。
Morris氏が7月14日(米国時間)付けで投稿した記事によると、Windows版Chromeにはシステムをアイドル状態にさせないバグがあるという。具体的には、Windowsではシステムクロックティックレートと呼ばれるシステムをアクティブ状態に復帰させるタイマーがあり、アイドル時ではこれが15.625msにセットされる。つまり、システムはアイドル時には15.625msに1度しかアクティブにならず、その間は消費電力を落としている。
これに対し、Chromeは、起動するやいなや、システムがアイドルであってもこのレートを常時1msにセットするのだという。つまり、Chromeが起動すると、通常の約15倍頻繁にシステムがアクティブになるのだ。Microsoftの試算によると、システムクロックティックレートが1msになると、通常の15.626msの場合より電力を25%も多く消費する。実際Morris氏が試したところ、アイドル時の消費電力が通常12~15Wのシステムが、Chromeを起動すると、何も操作していなくても15~20Wに跳ね上がったという。
このバグを回避する方法は2つで、Chromeを使わないときはChromeをシャットダウンするか、Chrome以外のブラウザを使うかだ。Morris氏によると、IEとFirefoxではこの問題は発生しない。だが、Googleのサービスを使うにあたって、Chromeは相性がいいため、そのユーザーは多く、また、そのユーザーの多くはメールの待ち受けなどで、常時Chromeを起動しているだろうから、その回避方法は受け入れがたいだろう。ちなみに、MacおよびLinuxではティックレス・タイマーと呼ばれる別のシステムを採用しているため、この問題は発生しない。
実はこのバグは、2010年にはGoogleに対して報告されているものの、現時点まで全く修正されていないのだという。業を煮やしたMorris氏は、Googleに解決させるため、みなでChromeのバグ・トラッカーでこの問題にスターをつけ、Googleの注意を引きつけようと呼びかけた。そして、それが功を奏したのか、数日後、Googleがこの問題を正式に認め、対策を始めたという。
かくいう記者も、Chrome利用時のシステム負荷の高さには頭を悩ませていたのだが、これを機に解消されることを願っている。