DownClockのすすめ

当記事には根拠に欠ける邪推や妄想が混入しています。
事実の確認は各自の自己責任においてお願いします。


現在のPCは性能過剰で電気大食らいの傾向にあります。1台のみ所有の場合はともかく、複数台所有で用途を限定している場合は過剰な性能を削ぎ落とすことで良いことが幾つかあります。ここではCPUに着目してDownClockの効用を考察してみたいと思います。

言うまでもなく、定格外の動作は保証範囲外の行為です。自己責任でお願いします。

CPUの特性について

CPUのクロック-電圧相関図

上の図はCPUのVcore電圧と動作可能周波数(Clock)の概念図です。禁無断転載です。一応。緑色の範囲が動作可能な設定範囲となります。

一般にCPUは高い電圧をかけると高いClockでも動作します。限界は当然ありまして、CPUの設計上の限界でそれ以上のClockを望めない場合とCPU破損の危険性からそれ以上の電圧をかけられない場合とがあります。この見極めは結構難しくて、OverClockをする人は「まだまだ行けるはず」と電圧を上げてCPUを破損した経験を持つ人も多いかと思います。

逆に電圧を低くすると動作可能周波数も下がってきますが、こちらも限界があります。CPUが0と1を識別する境目となる電圧を下回った場合とMotherBoardやCPUの設定が無い場合が相当します。破損の心配については勉強不足のため何とも言えません。低電圧だから大丈夫とは一概に言えません。

OverClock

OverClockについて軽くさらっておきます。

CPUはその性能を保証するためにある程度のマージンを取ってあります。例えば、電圧はそのままで多少定格より高いClockでも動作します。(上の図のから右方向に行ったところ)そのClockで満足出来ない場合は、電圧を上げます。すると、動作可能周波数が上がります。このようにして満足の行く設定を見つけることがOverClockだと言えます。(上の図の

MobileCPUについて

MobileCPUはある種DownClockを保証した(?)CPUと言えます。同じコアのCPUであっても、定格とする電圧を低くして売られています。その分、動作可能周波数が下がりますから、ラインアップはどうしてもデスクトップ向けより低い周波数で展開されることになります。

性能的には見劣りするわけですが、発熱・消費電力の点では大きなアドバンテージがあります。以前Intelが発表した資料の中で興味深いものがありました。「一般的にClockを20%落とすと、20%低い電圧で動作できる。すると発熱・消費電力は約50%に削減できる。」と。MobileCPUに関しての資料で、Intelはマーケティング的にDesktop向けCPUの20%下でMobileは推移するよ、と言ってたわけですが、同じCPUのことですから、Desktopでも適用できるわけです。(上の図の

なんで、20%20%で50%やねん。って話ですが、CPUの発熱・消費電力はClockに比例し、電圧の2乗に比例するという法則があります。この法則を当てはめると0.8x0.8x0.8=0.512と約半分になることがわかります。

DownClock

さて、DownClockです。まず、希望のClockを設定します。定格電圧であれば故障を除いて間違いなく動作するはずです。今度は電圧を落として、起動できる最低の電圧からマージンを取ってちょっと高めに設定します。(上の図の

さらに、究極の低消費電力を目指す場合は設定できる最低のClockで電圧を落とせるところまで落とします。(上の図の)場合によってはCPUファンレスも望めます。

DownClockの制約

実は最近のCPUは設定に制約が多くておいしいDownClockはやりにくい状況にあります。

  • 倍率固定
    現在発売されている多くのCPUでは倍率固定になっているかと思います。これはFSBを変更することでしか、動作Clockを変更できないことを示します。しかし、ちょっと細工すれば倍率を変更できるCPUもあるようです。AMD製はこの類のようですね。MotherBoardとの組み合わせによっては細工しなくても倍率変更できる場合もあります。FSBの変更によるClock変更の嫌な点としては、パフォーマンスが大きく変わってしまうことにあります。例えば、Pentium4 3.2GHzとPentium4 2.4CGHzがあったとします。3.2GHzの方を2.4GHzで動作させればパフォーマンスは同じ・・・・・・ではないのです!FSBを800MHz(200MHzQDR)から600MHzに落とすことになり、FSB800MHzのまま2.4GHzで動作する2.4Cよりも性能は落ちてしまいます。CPUのClockは落としても元々が遅くて処理のネックになりやすいCPU外の部分はそのままにしたいものです。逆に2.4Cの方を3.2GHzで動作させようとするとFSBは1,066MHzにもなります。CPU外の部分が大幅なOverClockとなる可能性があるわけで、あらゆるパーツに動作不良あるいは破損の危険性が生じてしまいます。最近では他パーツとFSBが連動しないようなMotherBoardも増えてきましたね。(正常に動けば3.2GHzよりもパフォーマンスが高くておいしいです。)
  • BIOSによる電圧設定制限
    最近のMotherBoardは設定範囲を広く取っているものが多いですが、例えば、電圧が手動で設定できなかったりすると、消費電力に2乗で効く電圧が変更できないのはDownClockの醍醐味のほとんどを失ったようなものです。
    また、未だにOverClock側の設定しか用意していないMotherBoardも数多くあります。設定自体は1.1V~1.85Vまで出来るはずなのに、CPUの定格電圧以下は選択肢として出さないとかいうのも多いですよね。
  • CPUの電圧設定制限
    例えば、VIAのC3(Ezraコアまで)はかなりの低電圧で動作するCPUですが、Socket370互換を謳っているがために1.3V未満の電圧設定がありません。定格でも1.35Vですから殆ど電圧低下が出来ないことになります。Tualatin対応となるEzra-Tコアから、あるいはCPU直付けのMotherBoardには1.05V駆動なんていうものもあるのでCPU自体はClockによっては1V程度で動作するものと思うのですが。
  • MotherBoard
    MotherBoardが出力できる電圧に制限がある場合があります。特殊例ですが、440BXのSlot1マザーにSocket変換基盤を挿してCoppermineを動作させようとしたら、1.3Vの設定をしたのにもかかわらず、1.5Vが出力されていました。これは、基板上のジャンパもBIOSも1.3VとなっているのにMotherBoard自体が1.5V未満を出力できる設計になっていなかったことを示します。こんな制約もあるんですね。

DownClockの未来

現在CPUの殆どがファンを必要とし、処理によっては余剰な性能を持つようになってきています。例えば、Pentium4 Extreme Edition 3.2GHz(Northwood)でTDPmaxは92.1Wです。常に92.1W消費しているわけではありませんが、最大で92.1Wを消費し得るということです。性能を必要としないときには電圧やClockを自動的に落として消費電力をセーブする機能を組み込んでいるものもあります。必要な時に必要なだけのパフォーマンスというのは大変良いことですが、最大で92.1Wである限り92.1Wに対応する冷却装置が必要になるのです。性能競争のためだけにどんどんとClockと消費電力が上がっている現状では筐体を小型にしたりCPUファンレスにしたい場合の選択肢が非常に限られています。

今後は、低消費電力にフォーカスしたCPUのラインアップを充実させる必要が出てきます。

IntelはPentium4系列では性能最優先、Pentium-M系列ではバランスということになっていますが、Pentium-M系列でも性能の方がPriorityが高いようです(Mobileであっても可能ならTDPを上げたいと思っている)。

AMDは複数のベクトルのコアを開発できるだけの企業体力を持ち合わせていませんので常に最適バランスを探ってはいますが、基本的には性能でIntelに劣ると駆逐されてしまう危険性があるために性能でIntelに劣らない範囲でのバランス追求となっています。

VIAは低消費電力CPUというイメージを確立したかのように見えます。が、絶対量的にはまだ採算ラインに乗らないようです。CPU事業が主体でないからこそ赤字続きでもここまで生き残ってこれたという感じです。勿論、近い将来の黒字転換を目論んでいる事は間違いないのですが。性能という点で普及ラインに到達していないのが痛いところです。

Transmetaは低消費電力CPUの先駆者です。が、いかんせん流通量が少ない状態です。VIAと同様性能的に不足がある状況でしたが、最近新設計のCPUを発表しました。Intelとは違いまずは消費電力で縛りを設けた上で性能向上を目指した製品ということで、期待が掛かります。

悪口を言ってはいけませんが、個人的にIntelにはちょっと痛い目を見て欲しいですね。そのためにはIntelより優れた製品が是非とも欲しいのですが、なかなかトータル性能で上回れないために結局Intel好き勝手になってしまっていますので。

あっ、論点がずれました。何が嫌かってDesktopでは無尽蔵に電力を消費するCPUしか提供してくれないこと。低消費電力で効率の良いTuningをする手段の多くを出来ないようにしていること。折角バランス最強で歓迎したPentium-Mもライバルが弱いのをいいことにTDPを吊り上げることによる性能向上で儲けようとしていること。です。要は消費電力を軽く見過ぎているから嫌いなんです。Pentium3の時はAthlonより低消費電力でかつ性能的にも頑張っていたので好きだったんですけど。

CPU別Tuning

では、それぞれのCPUでおいしい設定とはどのようなものでしょうか?基本線を考えてみたいと思います。

  • AMD Athlon64 Series
    MotherBoardによっては結構柔軟な設定が出来るようです。基本的にはFSBを落とさずに倍率を落とす方向です。FSBを上げるのも良いのですが、ChipsetやMemoryの電圧を上げてまでFSBを上げることはトータルでの消費電力低減に繋がりません。できればChipset、Memoryとも設定し得る最低の電圧で安定して動く最高のFSBとしたいところです。ただし、Athlon64の場合Memoryの高効率なAccessを実現するために設定するFSBによってはMemoryの持つポテンシャルをフルに生かせない場合があります。
    実際のところまだハイエンドのCPUですので性能を落とす旨みは考えにくいので定格運用から電圧だけを落とせるところまで落とすのが現実的かもしれません。
    また、DesktopであってもMotherBoard及びOSの選択によっては負荷に応じて自動で3段階のClock&電圧を切り替えてくれる機能がありますので、ことさら性能上限を落とす必要はないでしょう。
  • Intel Pentium4 Series
    こちらは倍率を変えられないので、FSBを落とさない=Clockを落とさないということになります。ただし、SingleChannelAccessのMotherBoardの場合FSB200MHzQDRというのは過剰な性能となりますので、Memoryタイミングと同じ周波数まで落とすことは考えても良いかも知れません。
    例としてNorthwood2.4CGHz(200x12v1.5w66.2)程度ならば1.2GHz駆動(100x12v1.1w17.8)もありかもしれません。1.1V近辺での駆動が狙えそうです。3.2GHzは値段が高いので態々1.6GHzに落としたいとは考えにくいですね。
  • AMD AthlonXP・Duron Series
    MotherBoardによっては結構柔軟な設定が出来るようです。ただし、最近倍率変更が効かないものも出回っているようです。OverClockでAthlon64と大差ない性能を叩き出されてはAthlon64への需要の移行が進まないと判断しているのかも知れません。まあ、\4,000程度のDulonでも2GHzで動いてしまったりしますので。
    やはり電圧を上げない範疇でFSBを高く。Memoryの周波数とFSBは合わせるのが一番効率的です。PC2700時代の人は無理してFSB200MHz(DDR)を狙わない方が無難です。Chipset・Memoryの発熱もバカになりません。倍率もそこそこにしてCPU電圧をガツンと落としましょう。あっという間に低消費電力CPUに早変わりです。
    例えばBarton2500+(166x11.0v1.65w68.3)を1.4GHz駆動(200x7.0v1.1w23.2)或いは1.33GHz駆動(166x8.0v1.1w22.1)なんて如何でしょう。モデルナンバーに換算すると200x7.0では2000+(1900+か?)、166x8.0では1800+(1700+か?)辺りでしょうか。最適化すればするほどPentium4よりおいしさが増しますね。
  • Intel Celeron(P4系) Series
    FSBが元々100MHzQDRということでこれ以上FSBを落とすのはどうか。と言う以前に設定があるんですかね?ま、落とす意味も上げる意味も余り無いなら定格Clockで電圧を落としましょう。
    例えば2.0GHz(100x20v1.5w52.8)ってもう製造中止なんですよね。まあ、いいか。これを定格Clockでどこまで電圧を落とせるかです。勝手な予想で1.3Vまで落とせるとするならば(100x20v1.3w39.7)微妙な線です。TualatinのOverClockと性能、消費電力共に拮抗してきますね。
  • Intel Celeron(P3系) Series
    やはりFSBが元々100MHzということでこれ以上FSBを落とすのはどうかというところです。が極端に性能を削っても良いのならFSB66MHzまで落とす手があります。
    例えば1.2GHz(100x12.0v1.5w32.1)が1.3Vで駆動する場合(100x12.0v1.3w22.4)です。FSB66MHzとなる800MHzならば1.05Vでの駆動も期待できて(66x12.0v1.05w12.1)です。工夫すればCPUファンレスも圏内に入ってきます。
  • VIA C3(Nehemiah) Series
    特にCPU側で柔軟な設定を妨げるような機能は設けていないようです。Ezra-Tコアも含めて低消費電力版をEdenとして販売していますのでDownClock時の参考になるかと思います。
    さて例ではNehemiahの1GHz(133x7.5v1.4w18.5)を挙げてみます。とりあえず同じコアのノート用Antaurが1.25Vで動作しますので、1.25Vとすると(133x7.5v1.25w12.0)ん~Nehemiahは当初15Wと言われていてそこから計算するとぴったり12Wになるのですが、今のDataSheetでは18.5Wなんですよね。含めている範疇が変わったのかな?気にせず12Wということにします。さらに同じコアのEden-Nで1GHzで7Wとあります。ん~0.95Vになるのかしら?C3では1.05Vが下限ですよね。1.05Vで駆動できるのであれば(133x7.5v1.05w8.4)ばっちりCPUファンレス圏内です。これなら選択肢として有りですねぇ。でも動くのかな?もう少し確実な線で800MHzの落としましょうか。(133x6.0v1.05w6.8)。うまく折り合いを付ければ結構高バランスで行けそうな予感。

筆者のCPUは

で、筆者の現在のCPUの設定ですが、望んでいる性能に合わせてカスタマイズしているので定格動作がひとつも無いんですね。これが。

  • Throughbred AthlonXP 2100+ 1733MHz(定格133x13.0v1.60w62.1)
    実は買い間違って倍率変更機能無しのMotherBoardを入手してしまったので、倍率変更はしていません。また、電圧設定も1.1V~1.85Vまで設定できるはずなのに1.45V以下の設定ではうんともすんとも言いません。どうやら保護?機能が働いているようです。こちらは定格電圧をベースに機能しているようなので、そのうち気が向いたら定格電圧を変更する手段に出ようかとも考えています。とりあえず現状では動作し得る最低電圧となる1.475Vで駆動しています。本当は上記のようにしたかったのですが、制約だらけで通常は1300MHz(100x13.0v1.47w39.3)です。あ~20W弱損してるぅ。でも定格電圧加工に失敗したら勉強料約\10,000だしなぁ。
    エンコードをする時はOverClockにします。1.475Vそのままの設定で2GHz近くまで伸びます。1950MHz(150x13.0v1.47w59.0)これでも定格以下の消費電力。
    定格電圧まで上げれば2700+として動きます。2167MHz(166x13.0v1.60w77.6)熱いっすね。
  • Tualatin Celeron 1AGHz (定格100x10v1.475w27.8)
    2種類の設定を場合によって使い分けています。パフォーマンス設定では1280MHz(128x10v1.6w35.9)で駆動。これはOverClockです。倍率固定ですのでFSBを上げるしかないのですが、FSB133MHzでCPU以外は定格動作になりますので、元々それを目論んでCPUを選択しています。FSB128MHzなのでPCI・AGPについてはDownClockになってしまっていますね。複数の処理を平行して行うことが多く、エンコード処理等の重い処理もやりたいためにOverClockにしています。定格のCeleron 1.3GHzよりもパフォーマンスは良いと思います。
    一方、通常設定では(100x10v1.26w20.3)で駆動。ちょっと電源投入時にCPUが認識できないことがありますが、認識してしまえば至って安定しています。ここまで、電圧落とせると感動的ですね。夏場にやさしい設定です。
  • Coppermine Pentium3 533EBMHz (定格133x4.0v1.65w14.0)
    音楽や映像の再生を行うAV専用マシンです。複数の処理を平行することはまずないですし、一番重いMPEG2画像再生処理ができれば十分と考えます。さらに、騒音やノイズの関係からファンレスにできればなお良しです。そこで、400MHz(100x4.0v1.31w6.6)で駆動しています。CPUファンレスでの運用です。
  • K6-2+ 500MHz (定格100x5.0v2.0w16.0)
    サーバ候補マシンです。300MHz(100x3.0v1.3w4.8)で駆動しています。K6-2E+のDataSheetを見ると350MHz(100x3.5v1.5w7.5)の設定は書いてあるのでそこから計算しました。CPUファンレス運用です。
  • M2 400GP 285MHz(定格95x3.0v2.2w12.5)
    サーバ候補でしたが現在は使用しておりません。350MHz(100x3.5v1.8w10.3)、300MHz(100x3.0v1.6w7.0)、250MHz(100x2.5v1.5w5.1)等で駆動できます。実はDownClockになっていなかったりしています。が、消費電力はきっちり低減。素晴らしいですね。ただ、絶対値で見ると上のK6-2+に勝てないのが悔しいところ。
  • mP6 266PR 200MHz(定格100x2.0v2.8w8.5)
    同じくサーバ候補でしたが現在は使用しておりません。133MHz(66x2.0v1.7w2.1)、167MHz(83x2.0v1.9w3.3)、190MHz(95x2.0v2.3w5.4)等で駆動できます。絶対的な性能が不足しているのが残念なところ。

!この文字が見える場合、コピペされています(ブラウザ非対応でも見えます)! from Gradual Improvement (dodoit.info)

当記事には根拠に欠ける邪推や妄想が混入しています。
事実の確認は各自の自己責任においてお願いします。

[記事作成日: 2002-05-10] ※誤記訂正のみの更新等は含みません

この記事のタグ

PC

トゥベタ