3. 他には?

3.1. 動いているかどうかをテストする方法

さて、上記で記載されているパワーセーブ手段のどれかを用いることにして、テストしようというところまで来ました。 テストするには二つの方法があります。

もし、温度で制御するファンを CPU ヒートシンクに使っているなら、ファンの騒音をチェックして動作しているかどうかを調べることができます。 数分なにもさせないでおいて、その後 CPU に何か負荷を掛けます。

私は普通は以下のようにしています。

  1. 特権ユーザ (root) になる。

  2. cd /usr/src/linux

  3. その後、コンピュータに仕事を与える - while true; do make clean; make bzImage; done

20 から 30 秒後に、ファンが高速に回り出してファンの音が大きくなったのが分かるはずです。 ほどほどの時間 (数分) 後に CTRL-C でループを止めるのを忘れずに。

同じ手順を、CPU の温度を測定するプログラム (lm-sensorsxmbmonrtsensors) と組み合わせるやりかたも使えます。

3.2. 既知のバグ/問題点

Athlon/Duron には二つの既知のバグがあります。これは、AMD Athlon Processor Revision Guide の #11 と #14 の問題です。Athlon XP の方がこのバグが発生する頻度が歴然と低いようなので、私のように Athlon XP を持っている人はついている、ということになります [1]

以下の問題が発生する可能性があります (上記のバグによって)

BIOS アップデートが役に立つ場合があります (バグ #11 の BIOS から可能な回避策を含むものとしてそのリリースが提供されている場合)。 但し、私の知る限りこの回避策を BIOS で提供しているのは数えるほどのマザーボードに限られます。

Asus A7V133-C では、BIOS オプション PCI master read caching を有効にすれば関連の問題はほとんど解消されます。BIOS 画面を見て当該機能の有無を確認してください。

また、一部のボードでは、BIOS オプション Delayed Transaction が問題の一部を解決します。このオプションも試してみると良いでしょう。

注意: KT133A を使ったボードでは、このオプションを有効にすると有名な VIA のサウスブリッジのバグも有効になってしまいます。

Asus A7V に関する Newsnet のポストから

他にも問題の原因は考えられます。

パワーセーブ機能を有効にして細かい問題が起きるが、パワーセーブは使うようにしたい場合、通常はパワーセーブを有効にしておいて、音楽の再生時や TV を見る際にオフにするのが良いでしょう。

3.3. 音がとぎれるなどの問題の修正

この解決法の動作を教えてくれた Michael Hamilton さんに感謝します。

二名のかたにこの修正の動作を確認いただいているため、恐らく動作するとは思いますが、動作しないシステムがあるかも知れません。 実機での検証結果の報告をお願いします。

では、はじめましょう。どうやら、音がとぎれる問題は、デバイスの PCI レーテンシィタイマを最大値に設定することで修正可能なようです。

まず、サウンドカードの PCI アドレスを知る必要があります。これは lspci コマンドで調べられます。出力から、 "Multimedia audio controller" または "AudioPCI" と書かれた行を探し、そのデバイスの PCI アドレスを得ます (これは、01:06.0 のような値で、順にバス番号、スロット番号、ファンクション番号を示します)。 そして、そのデバイスのレーテンシィタイマを最大値にします。これには setpci を使います。

setpci -v -s "pci-address" latency_timer=ff

レーテンシィタイマについての説明は、IBM developerworks の説明 をご覧ください。

【訳注:この回の Developerworks の日本語訳はない模様です。】

この修正は、USB の問題やハードディスクの転送速度が落ちる問題などの音関連以外の問題にも有効かも知れませんが、そちらについてはテストがされていません。 検証結果の報告をお願いします (全然動かなかったり、前より全体的に悪くなったりしても非難しないでくださいね)。 まずいことに、私のところではこの問題は起きていないので自分でテストすることができないのです。

これが動作するようなら、この setpci コマンドを立ち上げ/リブート時に実行する必要があります。 これには init スクリプトのどこかに含めるのが良いでしょう (ドライバモジュールがロードされた後でなければいけません)。

3.4. 音がとぎれる問題ほかのもう一つの修正 (一部の VIA チップセット向け)

これを教えていただいた、Wijatmoko Prayitno さんに感謝します。

この回避策は、VIA の KT266, KT/KM333 と KT/KM400 チップセットでのみ確認が取れています。他の VIA のチップセットでも動作する可能性はあります。他の VIA のチップセットでの動作報告をお願いします。

これはごく簡単で、パワーセーブの有効化のコマンドラインと同様に動作します。

KT/KM333 と KT/KM400 チップセットのサウンド修正

有効化: setpci -v -H1 -s 0:0.0 70=$(printf %x $((0x$(setpci -H1 -s 0:0.0 70) | 0x08)))

無効化: setpci -v -H1 -s 0:0.0 70=$(printf %x $((0x$(setpci -H1 -s 0:0.0 70) & 0xf7)))

これが動作するようなら、この setpci コマンドを立ち上げ/リブート時に実行する必要があります。 これには init スクリプトのどこかに含めるのが良いでしょう (ドライバモジュールがロードされた後でなければいけません)。

3.5. ToDo

文書中にチップセットと情報を更に追加すること

Athlon64 と Opteron CPU のパワーセーブシステムに関する情報の追加

ノートブックとパワーセーブに関する情報の追加

3.6. 翻訳

他の言語への翻訳が既に存在しています。現時点では、その一部は本文書の 最新版の翻訳ではありません。

Zsolt Mocza さんによる ハンガリー語版

Carlos Mayo さんによる スペイン語版 (古くなっています)

Bruno Buys さんによる ブラジル・ポルトガル語版

Mathieu Pillard さんによる フランス語版 (古くなっています)

Maurizio Fantino さんによる イタリア語版 (古くなっています)

Fabian Mohren さんによる ドイツ語版 (一部分のみ)

かねこによる 日本語版

3.7. 日本語訳について

誤字・脱字・誤訳等なにかありましたら <JF@linux.or.jp> までお知らせください。

翻訳:

校正:

Notes

[1]

訳注: Model 4 (Athlon Thunderbird) の問題 #11,#14 は Model 6 (Athlon XP) ではドキュメント上修正されているように見える。何かまだあるのかな。