Turboスイッチの動作

ATマシンに付いているTurboスイッチはどのような理屈で作用しているのですか。
 クロック切り替え?ウェイト切り替え?


一般論として,デスクトップマシンにおけるTurbo/DeTurboの切り替えは以下のように行います。
・CPUの内/外部キャッシュをOFFにする
・CPUクロックを落す
・メモリアクセスのウェイトを最大にする
 この切り替えは,マザーボードのチップセットが行います。通常BIOS Setup画面を開くと,これらの設定を個別に設定できるようになっていますが,DeTurboを利用することで,設定画面と無関係に「最も遅くなるような設定」にすることができます(逆に,Turboにした場合,単に設定画面どおりの動作となるだけであり,名前と裏腹に,より高速に動くわけではありません)。
 このTurboスイッチは,歴史的遺物の一つです。過去のAT用ソフトの場合,CPU Loop(プログラム内部のタイミング調整のときに,CPUを例えば80386/33MHzと勝手に仮定したうえで,必要な時間の間ループして待つ,といったプログラミング技法)を使っているものが多く,これらを高速なマシンで利用するとタイミングが合わないといった現象が発生するため,これの対処として「より低速で動かす」DeTurboモードが用意されました。が,Windows全盛の最近は,CPU速度に依存しないプログラムコーディングが普通になり,この結果,最近のマザーボードにはTurbo/DeTurboの切り替えスイッチを持たないものも珍しくありません。
 ちなみにこれによる効果は絶大で,例えば内/外部キャッシュをOFFにするだけで,Pentium/133MHzクラスマシンでも速度は60〜70%にまで遅くなります。これは内部周波数が高いほど効き目があり,Pentium/200MHzクラスなどでは,おそらく80%以上速度が低下します。
 ちなみに一部ノートPCにおいては,消費電力削減のために動作を遅くするモードをDeTurboモードと称していることがあるので,注意が必要です。
(大原雄介)