ブログトップ 記事一覧 ログイン 無料ブログ開設

おびなたん☆

1981 | 11 |
2004 | 08 | 09 | 10 | 11 | 12 |
2005 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2006 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2007 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2008 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2009 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 11 | 12 |
2010 | 01 | 02 | 03 | 05 | 12 |
2011 | 02 | 03 | 05 | 07 |
2012 | 02 |

May 22, 2010. Sat

[]初代MacBook Airの熱問題との戦い

初代MacBook Airを買って2年ちょっとになります。最近、ようやく熱問題の封じ込めに成功したようなので、そこに至る過程をまとめてみます。

MacBook Airを買った

2008年1月、当初このモデルが登場したときに心配したのが、筐体の薄さに伴う機械強度(特に剛性)の弱さと、排熱能力の貧弱さ。しかし、登場から1ヶ月以上経ってもそれらに関する致命的な報告がなかったので、安心してMacBook Airを買ったのが2008年3月。

片肺化問題

しかしやっぱり問題はあった。夏が近づくと排熱の問題が表面化。ファンが回りっぱなし。そしてある日突然、CPUの片方のコアが使用率0%になる事象が発生。いわゆる片肺化問題である。

CPU温度が上昇したらクロックを落として発熱を抑えるロジックファームウェアに組み込まれていたらしいが、そこにバグがあり、片方のコアを完全に眠らせてしまっていた。これに対してアップルは、その年の8月にファームウェアのアップデートパッチを配給。片肺化は再発しなくなった。

続くkernel_taskの暴走

これで熱関係について実用上の問題はなくなったかと思ったが、再び問題が表面化。やはり温度が上昇するとkernel_taskというプロセスが暴走し、CPUリソースを食い尽くしてしまう。いわゆるkernel_taskの熱暴走問題である。

本来は負荷が高い作業をすると、

  1. CPU温度が上昇
  2. kernel_taskがなんからの処理(クロックダウン?)をしてCPUの発熱を抑止
  3. はっぴー

のつもりだったのだろうが、実際には

  1. CPU温度が上昇
  2. kernel_taskがCPUリソースを食う
  3. 1.に戻る

である。

まあ、それでもはじめのうちはだましだましで使い続けることができたし、気温の低い冬期は排熱がスムーズなためあまり問題にならなかった。

ところが、最近はコンテンツのリッチ化の影響かCPUパワーの消費が激しくなり、kernel_taskの問題が慢性的になってきた。高画質動画ともなれば、とてもニコニコとかできない。ただでさえ、Mac版のFlash Playerは重いというのに・・・。しかも発熱もすさまじく、操作し続けるのもしんどくなる。特にバッテリをチャージしながらの使用はそれが顕著に表れる。さすがにこれはまずい。

Appleのサポート

このkernel_taskの問題はアップルも認識しているようで、Genus Barに持ち込んだりサポート窓口に連絡すれば対応してくれるらしい。根本原因はハードウェアにあるらしく、ソフトウェアによる対処では解決できないというのが、アップルの見解のようだ。

しかし、ハードの問題となれば工場送りは必須で、最低でも一週間はかかる。代替機なしにこの方法を選択することはできず、結局抜本的な修理は見送ってきていた。一週間以上手放すなら、(もう2年使ったことだし)新しいMacBookを買おうかと考え初めていた。

CoolBook!!

それでももう少しもがいてみようと情報を探っていたら、CPUの動作電圧を落とすという方法があった。

そもそも初代MacBook Airが積んでいるCore2Duoは、クロック周波数800MHzの時は電圧0.9Vで動作するのが仕様である。そして、クロック周波数があがると動作電圧も上昇する。ここがクセモノで、クロック周波数上昇時に必要とする電圧は、石の品質のバラツキにより個体差があり、その個体差をフラットにするためにMacBook Air標準の設定では、いくらか高めの電圧が設定されているのである。

そこで、CoolBookというツールを導入してみることにした。このツールは、CPUがとりうるクロック周波数、各クロック周波数時の動作電圧が設定できる。また、電源アダプタ使用時とバッテリ駆動時を分けて設定できるので、バッテリ駆動用に省エネな設定をすることも可能になる。

標準でこの設定状態から

http://gyazo.com/047581b030c57d9703370308afcca847.png

高クロック周波数時の電圧を2割ほど下げた

http://gyazo.com/21e9d795503b153ca871de116af7b8fc.png

これだけで、CPUのヒートアップは抑えられて、kernel_taskの暴走を封じ込めることができた。これで高画質動画も余裕でニコニコできるてるぞ!

また、バッテリ駆動時は800MHzのみで動作するように。クロック周波数が抑えられたこと、ファンの動作がなくなったことで、バッテリの持ち時間がいくらばかりか長くなる効果もあるのであった。

CoolBookは有償で10米ドルするが、熱問題に悩まされ続けたり、やすやすと一週間以上工場に預けることを考えれば、このくらいトライしてみてもいいと思える値段である。

ちなみに、この方法は完全にアップルのサポート対象外なので、トライしてみる方はご注意を。ご自身の責任で行ってください。また前述したように、動作可能な最低電圧は個体差があるので、試行錯誤が必須です。本来は、アップルの技術者が石の品質検査でバラツキを抑え、最適な動作条件をチューニングするところを、ユーザのほうで代行しようというものですから。

まとめ

まあMacBook Airの最初のモデル、人柱としての誇りを持って接していこうといったところでしょうか。

ちなみに筐体の強度に関しても、ヒンジ部分に深刻な問題があったのですが、それはまた別の機会に。おいらはまだ致命傷に至っていないので・・・。MacBook Air発表直後、国内のパソコンメーカーの技術者が実物を見て「うちではこの設計では出荷できない」と語っていたのも、あながち過剰反応ではなかったのかも。

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証

トラックバック - http://d.hatena.ne.jp/earth2001y/20100522/macbookair_thermal_problem