BIOS でプロセッサーの電圧を下げる方法。 Intel プロセッサの電圧調整

30.10.2019 ゲーム

導入

愛好家は、オーバークロック プロセッサーの機能を注意深く監視しています。 彼らは次の質問に対する答えを見つけるのに多くの時間を費やしています: 特定のプロセッサはどれくらいの速度でオーバークロックできますか? どのような電圧レベルが必要ですか? どの冷却ソリューションが良いでしょうか?

オーバークロックにより、CPU パフォーマンスをより高価なプロセッサ モデルのレベルまで向上させることができますが、その逆のことも可能です。 通常、プロセッサの電圧を下げると、パフォーマンスに影響を与えることなく効率を向上させることができます。

電圧、クロック速度、消費電力

クロック速度はパフォーマンスに影響を与える最も重要なパラメータの 1 つであり、高いクロック速度を達成するには通常、電圧を高める必要があります。 ダウンロードされたすべてを考慮すると、最終的な電力消費において最も重要な役割を果たすのは電圧であり、クロック周波数の役割は依然として二次的なものです。 クロック周波数の増減は、ほぼ正比例して消費電力に影響し、電圧への依存性は二次関数になります。 このため、電圧を上げることは、常にクロック周波数を高めることよりも消費電力に大きな影響を与えます。

もちろん、動作電圧を下げることは消費電力にも大きな影響を与えるため、この問題をさらに深く調査することにしました。

プロセッサの電圧が不足している

多くのモバイル プロセッサは、通常の CPU をわずかに変更した低電圧バージョンです。 たとえば インテル Core 2 モバイル プロセッサー。 これらは最適化された電力消費を特徴としていますが、同等の条件下では、デスクトップ対応製品と同様のパフォーマンスを発揮し、同じ量の電力を消費します。 Core 2 Duo T ラインの最大消費電力は 35 W、P ラインのサーマル パッケージは 25 W に制限されるなどと記載されています。

しかし、デスクトップ コンピュータ用の経済的なプロセッサがあります。 AMDが提供するもの 電力が最適化されたプロセッサー接尾辞「e」が付きます (Phenom II X4 900e、905e、および フェノム X4 9350e)。 インテルが一連のプロセッサをリリース コア2クアッド「S」、標準モデルのレベルのパフォーマンスを提供しますが、熱パッケージは 95 W ではなく 65 W 以内に収まります。 プロセッサのエネルギー効率の高いバージョンはより高価ですが、アイドル時および負荷時の消費電力が低いため、非常に感銘を受けました。

自分でやれ?

自分の手でプロセッサを経済的なバージョンに変換することは可能ですか? オーバークロックと過電圧は非常に人気がありますが、不足電圧についてはどうなのでしょうか? 私たちは、自由に使える 2 つの MSI マザーボードを使用しました。P45D3 Neo で、これを使用しました。 最適なオーバークロックを模索する Core 2 Duo、しかし今回は、AMD Phenom II X4 955をテストするためにCore 2 Extreme QX9650プロセッサと790FX-GD70モデルと組み合わせました。

プラットフォーム: AMD 790FX および Intel P45

Phenom II X4 955 プロセッサの電圧不足を調査するために、MSI 790FX-GD70 マザーボードを使用しました。 このボードは MSI の Socket AM3 の最上位モデルであり、AMD 790FX チップセットを使用し、最新の AMD プロセッサをすべてサポートします。 このボードには、ATI CrossFireX テクノロジ (4 つの x16 PCI Express 2.0 スロットによる) と、愛好家にとって役立つ多数の機能が装備されています。 メーカーは、ハードウェア オーバークロック機能、ダイナミック スイッチングを備えた 4+1 フェーズの電圧スタビライザー、およびチップセットと電圧スタビライザー用のヒート パイプ上の大型 (ただし過剰ではない) 冷却システムをボードに装備することを決定しました。 BIOS では、DDR3 メモリ周波数を最大 2133 MT/s に設定できます。 RAID は、SB750 サウスブリッジを介して 6 つの SATA 3Gb/s ポートすべてでサポートされます。 192 kHz HD オーディオ コーデックは言うまでもなく、追加の SATA ポート、FireWire 400、2 つの 1 Gbps イーサネット ジャックがあります。

ただし、プロジェクトの目的はエネルギーの節約であるため、今回はそのような一連の機能は必要ないと思われます。 5 相電圧レギュレータは効率的である必要があり、愛好家レベルのボード自体には、私たちの野心を満たす高品質のコンポーネントが満載されています。 しかし、チップセットとメモリの電圧を公称電圧以下に下げることができないことに、若干がっかりしました。 おそらく MSI は将来の BIOS バージョンにそのような機能を追加する必要があります。



Socket 775 の Core 2 Quad プロセッサ (Core 2 Extreme QX9650 を使用) には、P45D3 Neo マザーボードを使用しました。 Core 2 Duo の最適なオーバークロック テスト。 このボードは P45 チップセット上に構築されていますが、これは愛好家向けの製品ではありません。三相電圧レギュレータで満足する必要があり、複雑なヒートパイプ冷却システムはなく、チップセットの標準機能は次のものによってのみ補完されます。いくつかのオプション。 ボードの詳細については、記事「 Intel Core 2 Duo: オーバークロック、パフォーマンス、効率の分析「しかし、他の製品 (Gigabyte X48T-DQ6 や Asus P5Q Deluxe など) にもプロセッサー以外のコンポーネントの電圧を下げるオプションが用意されていなかったため、私たちは依然としてこのボードを電圧低下プロジェクトに使用しました。


緊張を適切に軽減するにはどうすればよいですか?

経験豊富なオーバークロッカーはこのセクションをスキップできますが、それ以外の場合は、低電圧プロセッサに関連するいくつかの機能を理解しておくことをお勧めします。

垂れ下がる

まず知っておく必要があるのは、BIOS で (自動的にまたはユーザーによって) 設定されたプロセッサー電圧が、プロセッサーが動作する Vcor​​e 電圧に対応していない可能性があるということです。 実際、BIOS はプロセッサの最大電圧を決定し、通常は実効電圧はこれより低くなります。 さらに、プロセッサの動作条件 (温度など) によっても変化する可能性があり、CPU がアイドル モードからロード モードに移行するとき、またはその逆に移行するときに変化します。

CPU が負荷を受けて加熱されるとクリスタルの伝導率が向上するため、この動作は非常に正当です。 電圧が変わらなければ電流は増加します。つまり、電流と温度は互いに上昇します。 特別な垂下メカニズムにより、負荷がかかった状態でプロセッサの電圧がわずかに低下し、CPU が電気的仕様内に維持されます。

CPU-Z などのツールを使用して CPU の実効電圧を読み取る場合は、CoreTemp でターゲット電圧をチェックしてみてください。すると、2 つの値が異なることに気づくでしょう。 設定電圧と実効アイドル電圧の差は「オフセット」(Voffset) と呼ばれ、アイドル モードとピーク負荷の間の電圧差は「ドループ」(Vdroop) と呼ばれます。

検査

プロセッサは、負荷状態からアイドル状態に移行するときにピーク電圧に達します。これは、電圧があるレベルから別のレベルに正確に移動することはなく、レベルを「ジャンプ」してから横ばいになるためです。 プロセッサがピーク目標電圧に到達するのは、この「ジャンプ」です。

同じ理由で、電圧不足のプロセッサがピーク負荷下で確実に動作するかどうかをテストするのは非常に簡単です。つまり、Vdroop が発生し、動作電圧が指定された電圧以下に低下します。 優れた CPU 使用率ユーティリティである Prime95 を使用しました。 クラッシュすることなくピーク負荷下で 30 分間動作させた後、減電圧システムは負荷下でも安定して動作するという結論に達しました。 これは通常、アイドル モードではわずかに高い電圧が印加されるため、動作が安定することを意味します。 ただし、これは、周波数 (乗数) と電圧をさらに下げる Intel SpeedStep のような省電力モードには適用されません。 SpeedStep テクノロジーをアクティブにしてすべての不足電圧テストを実行しましたが、AMD の Cool"n"Quiet テクノロジーではアイドル時に純正の電圧と周波数を使用するため、これは必要ありませんでした。

いつものように、オーバークロックや電圧低下の結果を究極の真実として受け止めるべきではありません。 それはすべてあなた次第です。一連の拡張テストを実行する必要があるか、システムが常に安定しているとは限らないリスクを受け入れる必要があります。 また、結果が完全に異なる場合もあります。安全のために、より保守的な設定に戻す (つまり、電圧を少し上げる) 方が良い場合があります。 いずれにせよ、エネルギー節約の可能性は依然として非常に大きいでしょう。


CPU AMD フェノム II X4 955は、2009 年 4 月の発表以来、同社の主力モデルであり続けています。DDR3 メモリと 3.2 GHz のクロック速度のサポートのおかげで、AMD はいくつかのテストで Intel Core 2 Quad と競合することができましたが、プロセッサとプラットフォームの両方のコストが低くなります。 。 しかし、それでもCore i7の性能には程遠いです。

Phenom II X4 モデルは、2.5 ~ 3.2 GHz の周波数で利用できます (下記を参照)。 AMD Web サイトのページ)。 800 ラインのプロセッサには、コアあたり 4 つの 512 KB L2 キャッシュと 4 MB の共有 L3 キャッシュが搭載されており、900 ラインには 50% 多い L3 キャッシュが搭載されています。 すべての Phenom II プロセッサは、低消費電力と優れたオーバークロック機能を提供する 45nm DSL SOI プロセス テクノロジーを使用して Globalfoundries で製造されています。 どこまでテンションを下げられるかが楽しみです。

自動 BIOS 設定により、Phenom II X4 955 は CPU-Z に従って 1.32 V で動作するようになりました。 同時に、システムのピーク消費電力は、CPU の全負荷時に 216 W でした。 この結果には改善の余地があることは明らかです。

アクティブな Cool"n"Quiet テクノロジを備えたすべての AMD プロセッサは、アイドル モードで 800 MHz に切り替えることができますが、標準コア電圧は 0.96 V に低下します。以下の概要表からわかるように、Phenom II プロセッサは 0.96 V Cool に切り替わります。 "n" BIOS で設定されている CPU 電圧に関係なく、静音モード。 したがって、アイドル モードでのシステムの消費電力は常に同じ 99 W でした。 この場合、BIOS がアイドル モードでの電圧変更を許可しない限り、改善することは何もありません。

いくつかの電圧レベル (以下の表を参照) を設定し、Prime95 テストを使用して少なくとも 30 分間それらの電圧レベルに対する負荷をテストしてみました。 標準電圧 1.32 V を 12% 削減して 1.1175 V にできることがわかりました。同時に、システムの消費電力も 216 W から 179 W に削減され、これは 17.2% の減少です。 悪くない。

ファイナルテーブル

AMD フェノム II X4 955
BIOS 電圧 刺す。
自動 0.96V* 99W 1.32V 216W はい
1,3125 0.96V* 99W 1.288V 205W はい
1,2875 0.96V* 99W 1.264V 199W はい
1,2625 0.96V* 99W 1.24V 196W はい
1,2375 0.96V* 99W 1.216V 192W はい
1,2125 0.96V* 99W 1.192V 186W はい
1,1875 0.96V* 99W 1.168V 181W はい
1,175 0.96V* 99W 1.152V 179W はい
1,1625 0.96V* 99W 1.136V 177W いいえ

* Cool「n」Quiet に設定します。


次は、Intel Core 2 Quad を見てみましょう。 自由に使える通常の Core 2 Quad モデルがなかったため、Core 2 Extreme QX9650 プロセッサを使用しました。

Core 2 Quad シリーズは、許容可能な消費電力レベルで安定したパフォーマンスを提供し続けます。 Q8000 および Q9000 ラインは、45nm ヨークフィールド設計に基づいて構築されています。 Q8000 は 4 MB の L2 キャッシュを使用しますが、Q9000 には 6 MB、さらには 12 MB の L2 キャッシュがあります。

すべてのクアッドコア Core 2 Quad プロセッサは、2 つの 45 nm デュアルコア Wolfdale クリスタルから組み立てられています。

BIOS で電圧を「自動」に設定すると、Core 2 Extreme QX9650 から 1.256 V が得られ、システムは全負荷時に 185 W を消費します。

アイドル電圧は直接変更できません。指定した CPU 電圧に応じて常に決定されます。 デフォルトの BIOS 設定の場合、SpeedStep テクノロジーを有効にした後、電圧は 1.192 V になり、乗数が 6 倍に減少し、コア クロック速度は 2.0 GHz になりました。 その結果、94 W というアイドル消費電力 (以下の表を参照) は、わずか 0.96 V および 800 MHz の CPU 周波数での AMD システムの消費電力よりもまだ低く、これは非常に奇妙です。

最低安定電圧は 1.072V で、全負荷時に BIOS 設定の 1.0785V を使用して達成した結果、システムの合計消費電力はわずか 148W となり、消費電力が 16.3% 削減されて 20% 削減されました。コア電圧プロセッサー内。 次のステップは 1.0655 V の電圧であるはずですが、この電圧ではすでに安定性が失われています。 幸いなことに、負荷時とアイドル時に同じ不具合の結果が発生し、これ以上電圧を下げるのは無意味でした。

プロセッサの 1.0785V 電圧から生じるアイドル電圧は 0.1008V で、システムのアイドル消費電力は 87W となりました。 改善は 11% 未満ですが、無料でしたし、テストではシステムは安定して動作しました。

インテル コア 2 エクストリーム QX9650
BIOS 電圧 実効電圧(標準値) 効率的なエネルギー消費 (深淵。) 実効電圧(負荷) 効率的なエネルギー消費 (熱) 刺す。
自動 1.192V 94W 1.25V 185W はい
1.1955V 1.128V 93W 1.184V 172W はい
1.1695V 1.104V 92W 1.16V 166W はい
1.1435V 1.008V 91W 1.136V 162W はい
1.175V 1.048V 90W 1.104V 158W はい
1.0915V 1.016V 88W 1.08V 151W はい
1.0785V 1.008V 87W 1.072V 148W はい
1.0655V 0.992V 87W 1.056V 148W いいえ


システムハードウェア
CPU AMD AMD Phenom II X4 955 (45 nm、3.2 GHz、4x 512 KB L2 キャッシュおよび 6 MB L3 キャッシュ、125 W TDP、Rev. C2)
CPUインテル Intel Core 2 Extreme QX9650 (45 nm、3.0 GHz、12 MB L2 キャッシュ、TDP 130 W、Rev. D0)
マザーボード (ソケット 775) MSI P45D3 Neo-F (Rev. 1.0)、チップセット: Intel P45、ICH10R、BIOS: 4.2 (02/18/2009)
マザーボード (ソケット AM3) MSI 790FX-GD70 (Rev. 1.0)、チップセット: AMD 790FX、SB750、BIOS: 1.3 (04/01/2009)
DDR3メモリ 2 x 2 GB DDR3-1600 (コルセア TR3X6G-1600C8D 8-8-8-24)
ビデオカード Zotac Geforce GTX 260²、GPU: GeForce GTX 260 (576 MHz)、ビデオ メモリ: 896 MB DDR3 (1998 MHz)、216 ストリーム プロセッサ、シェーダ ユニット周波数 1242 MHz
HDD Western Digital VelociRaptor、300 GB (WD3000HLFS) 10,000 rpm、SATA/300、16 MB キャッシュ
ブルーレイドライブ LG GGW-H20L、SATA/150
パワーユニット PC 電源および冷却、サイレンサー 750EPS12V 750 W
システムソフトウェアとドライバー
オペレーティング·システム Windows Vista Enterprise バージョン 6.0 x64 Service Pack 2 (ビルド 6000)
AMD チップセット ドライバー カタリスト9.4
Nvidia GeForceドライバー GeForce 185.85
インテル チップセット ドライバー チップセットインストールユーティリティ Ver. 9.1.0.1012
インテルストレージドライバー マトリックスストレージドライバー Ver. 8.8.0.1009


テストと設定

テストと設定
PCMark Vantage バージョン: 1.00
PCMark ベンチマーク
プライム95 バージョン: 25.7
インプレース大規模 FFT

試験結果

AMD プロセッサの電圧は変わらないため、AMD Phenom II X4 955 のアイドル時の消費電力を示すグラフはありません。 Cool"n"Quiet 機能を有効にした後、負荷のないプロセッサーは常に 800 MHz、電圧 0.96 V で動作します (少なくとも MSI 790FX-GD70 マザーボードでは)。 したがって、AMD システムはアイドル時に常に 99 ワットを消費します。

グラフは、テストされたすべての電圧レベルでの Core 2 Extreme QX9650 システムのアイドル消費電力を示しています。 1.008V では 87W の消費電力が得られ、1.192V ではデフォルトの消費電力は 94W です。


AMD の主力プロセッサの場合、電圧を下げることによるエネルギーの節約は非常に重要であることが判明しました。 ストック電圧 1.32V で開始し、システムのピーク消費電力は 216W でしたが、1.175V の負荷時ではわずか 179W に達し、省電力は 37W または 17.2% でした。これは、節約されたエネルギーが十分であるため、非常に重要です。たとえば、20 インチの最新ディスプレイに電力を供給します。

Intel システムはピーク負荷時の 17.2% の省電力を達成できるでしょうか? おそらく: この場合、負荷時の最小安定電圧は 1.255 V ではなく 1.078 V で、システム全体の消費電力は 185 W ではなく 148 W で、20% 削減されました。

消費電力とPCMark効率

AMD および Intel システムのデフォルト設定および電圧最適化設定で PCMark Vantage のパフォーマンスと消費電力を測定しました。


Phenom II X4 955 システムの場合、平均消費電力は 157 W から 141 W に減少し、10.2% 改善されました。 Core 2 Extreme QX9650 システムは、消費電力を 135 W から 117 W に削減することができました。これは、使用したトップエンド AMD プロセッサよりも処理能力が優れていることを考えると、驚くべきことです。 Intel システムにより、平均消費電力が 13.1% 削減されました。


その結果、実行ごとに費やされる総エネルギー (ワット時) も減少し、AMD システムでは 11.4%、Intel システムでは 12.4% 減少しました。 悪くない!


最後に、PCMark Vantage の結果と 2 つのシステムの平均消費電力 (ワットあたりのパフォーマンス スコア) を相関させました。 電圧の最適化後、2 つのマシンは同じパフォーマンスを提供することに注意してください。 AMD Phenom II X4 955 システムは、PCMark Vantage テストで電力効率の 11.6% の向上を達成することができました。 Intel システムにより、効率の結果が 13.8% 向上しました。

結論

最新の MSI マザーボードで AMD と Intel の 2 つのハイエンド プロセッサをテストし、プロセッサの電圧を下げることで達成できる潜在的なエネルギー節約を分析できるようになりました。 もちろん、メモリやチップセットの電圧を下げてさらにコストを削減することも意図していましたが、レビューしたマザーボードではコンポーネントの電圧を変更できるものはありませんでした。 Asus P6T および Rampage II Gene、Gigabyte MA790FXT-UD5P および X48T-DQ6 ボードを検討しましたが、最終的には Socket AM3 用の MSI 790FX-GD70 と Socket LGA775 用の P45D3 Neo に落ち着きました。

AMD Phenom II X4: 消費電力が 17% 削減され、効率が 11.6% 向上

Phenom II X4 955 で確認された最低安定電圧に設定した場合、負荷時のピーク消費電力は 17% も低下しました。パフォーマンスが変わらないため、PCMark では効率 (ワットあたりのパフォーマンス) が 11.6% 向上しました。ヴァンテージテスト。 AMD Cool"n"Quiet テクノロジーは、設定電圧に関係なく、アイドル モードでは常に通常モードに切り替わるため、電圧を下げる取り組みを多少遅らせました。 また、アイドルモードでの消費電力は常に 99 ワットでした。

Intel Core 2 Extreme: 消費電力が 20% 削減され、効率が 13.8% 向上

Core 2 Extreme QX9650 テスト システムでは結果はさらに劇的で、パフォーマンスに影響を与えることなく、ピーク負荷時の消費電力が 20% も減少しました。 これにより、PCMark Vantage のワットあたりのパフォーマンスが 13.8% も向上しました。 SpeedStep 省電力モードでの Intel プロセッサの電圧は設定されたコア電圧に依存するため、アイドル モードでの消費電力もわずか 1.008 V まで大幅に低下しました。これにより、アイドル モードで 8% のエネルギーが節約されました。

エネルギーを節約する価値はありますか?

問題はもっと早くに始まると予想していたので、電圧降下の許容範囲が比較的広いことに感銘を受けました。 しかし、AMD と Intel のシステムは、最新のプロセッサが大幅に低い電圧でも動作できることを示しています。 AMD Phenom II X4 プロセッサには 16% 低い電圧で、Intel Core 2 Extreme プロセッサには 16.6% 低い電圧を供給することができました。 これらすべてにより、両方のシステムでピーク負荷時に 17 ~ 20% の節約を達成することができました。

ただし、低減された電圧設定で信頼性の高い動作が提供されることを確認する必要があるため、このプロセスには慎重に取り組むことをお勧めします。 ただし、16% の電圧削減を達成する必要はありません。10% の削減でも、パフォーマンスに影響を与えることなくシステムの消費電力を無料で削減できます。

最新のデスクトップおよび (特に) モバイル プロセッサでは、ODCM、CxE、EIST などの多くの省エネ技術が使用されています。今日は、おそらくそれらの最高レベルである、プロセッサ コアの周波数と電圧の柔軟な制御に興味を持ちます。操作 - Cool "n" Quiet、PowerNow! AMD の場合は Enhanced SpeedStep (EIST)、Intel の場合。

ほとんどの場合、コンピュータまたはラップトップのユーザーは、BIOS やオペレーティング システムで特定のテクノロジのサポートを有効にする (ボックスにチェックを入れる) だけで十分です。通常、微調整は提供されませんが、実際にやってみると非常に便利です。 。 この記事では、オペレーティング システムからプロセッサ コアの動作電圧を制御する方法 (Intel Pentium M と FreeBSD の例を使用)、およびこれが必要な理由について説明します。

多数のマニュアルがあるにもかかわらず、特にロシア語で (エンド ユーザーではなく) オペレーティング システムの観点から Enhanced SpeedStep テクノロジの詳細な説明を見つけることはめったにありません。そのため、記事のかなりの部分がこの説明に当てられています。実装の詳細は、本質的に理論的なものです。

この記事が FreeBSD ユーザーだけでなく役立つことを願っています。GNU/Linux、Windows、Mac OS X についても少し触れます。ただし、この場合、特定のオペレーティング システムは二次的に重要です。

序文

昨年、私は古いラップトップのプロセッサをアップグレードしました。標準の 735 の代わりに Pentium M 780 をインストールし、いわば最大まで押し上げました。 ラップトップは負荷がかかるとさらに発熱し始めました (熱放散が 10 W 増加したため)。 私はこれにあまり注意を払いませんでした(念のためクーラーを掃除して注油したことを除いて)。しかし、ある晴れた日、長いコンパイル中に、コンピューターの電源が切れてしまいました(温度は臨界の 100 度に達しました) )。 温度を監視し、何かが起こった場合は時間内に「重い」タスクを中断するために、システム変数 hw.acpi.thermal.tz0.temperature の値をトレイに表示しました。 しかし、しばらくすると警戒心がなくなり(気温は常に正常範囲内に保たれていました)、すべてが再び起こりました。 この時点で、私は、CPU 負荷が長い間クラッシュを常に恐れて Ctrl-C を押し続けることも、プロセッサを強制的に動作させることももうしたくないと決心しました。

通常、標準電圧を変更するということは、オーバークロック時 (つまり周波数の増加時) にプロセッサの安定した動作を確保するために電圧を上げることを意味します。 大まかに言えば、各電圧値は動作可能な周波数の特定の範囲に対応しており、オーバークロッカーのタスクは、プロセッサがまだ「グリッチ」しない最大周波数を見つけることです。 私たちの場合、タスクはある意味で対称的です。既知の周波数 (より正確には、すぐにわかりますが、一連の周波数) に対して、CPU の安定した動作を保証する最低電圧を見つけます。 パフォーマンスを落とさないように動作周波数を下げたくありません。ラップトップはすでにトップエンドからはほど遠いものです。 さらに電圧を下げる より収益性の高い.

ちょっとした理論

知られているように、プロセッサの熱放散は、その容量、周波数、およびプロセッサの熱放散に比例します。 四角(なぜそうなるのか興味がある人は、プロセッサを基本的な CMOS インバータ (論理否定) のセットとして考えて、自分で依存関係を導出してみるか、リンク 1、2、3 をたどってみてください)。

最新のモバイル プロセッサは最大 50 ~ 70 W を消費する可能性があり、最終的には熱として放散されます。 これは非常に多く(白熱灯を思い出してください)、特にラップトップの場合、負荷がかかったオフラインモードでは豚がオレンジを食べるようにバッテリーを「消耗」します。 密閉された空間では、熱を積極的に除去する必要がある可能性が高く、これは冷却ファン (おそらく複数) を回転させるために追加のエネルギー消費を意味します。

当然のことながら、この状況は誰にも適していませんでした。プロセッサメーカーは、電力消費(およびそれに応じて熱伝達)を最適化し、同時にプロセッサの過熱を防ぐ方法を考え始めました。 興味のある方は、ドミトリー・ベセディンによる数多くの素晴らしい記事を読むことをお勧めします。それまでの間、早速本題に入ります。

ちょっとした歴史

SpeedStep テクノロジー (バージョン 1.1) は、第 3 世代 Pentium (18 ミクロンの技術プロセスを使用して製造、ラップトップ用モバイル Coppermine、2000 年) の第 2 世代で初めて登場しました。これは、コンピューターの負荷または電源に応じて、ネットワークまたはバッテリー - 可変乗数により高周波と低周波が切り替わる可能性があります。 エコノミー モードでは、プロセッサは約半分のエネルギーを消費しました。

13 ミクロン技術プロセスへの移行により、この技術はバージョン番号 2.1 を受けて「強化」され、プロセッサーの周波数だけでなく電圧も下げることができるようになりました。 バージョン 2.2 は NetBurst アーキテクチャに適応したもので、3 番目のバージョン (Centrino プラットフォーム) までに、このテクノロジーは正式に Enhanced Intel SpeedStep (EIST) と呼ばれるようになります。

バージョン 3.1 (2003) は、Pentium M プロセッサの第 1 世代と第 2 世代 (Banias および Dothan コア) で初めて使用されました。 周波数は、ベースの 40% から 100% まで、100 MHz (Banias の場合) または 133 MHz (Dothan の場合、この場合) のステップで変化しました (最初は 2 つの値の間で切り替わるだけでした)。 同時に、インテルは 2 次キャッシュ (L2) の動的容量管理を導入しており、これにより消費電力をさらに最適化できます。 バージョン 3.2 (拡張 EIST) - 共有 L2 キャッシュを備えたマルチコア プロセッサーに適応。 (SpeedStep テクノロジーに関するインテルからの小さな FAQ。)

ここで、多数のハウツーやチュートリアルに盲目的に従うのではなく、PDF をダウンロードして EST の動作原理を理解してみましょう (この略語はより普遍的で短いため、引き続き使用します)。

ESTの仕組み

したがって、EST を使用すると、プロセッサのパフォーマンスと消費電力を制御できます。 動的に、動作中。 プロセッサの動作パラメータを変更するには (チップセット内の) ハードウェア サポートが必要だった以前の実装とは異なり、EST では プログラム的に、つまり BIOS またはオペレーティング システムを使用して、負荷、コンピュータ電源の種類、CPU 温度および/または OS 設定 (ポリシー) に応じて乗数 (プロセッサ周波数とバス周波数の比) とコア電圧 (V cc) を変更します。

動作中、プロセッサは、T (スロットル)、S (スリープ)、C (アイドル)、P (パフォーマンス) のいくつかの状態 (電源状態) のいずれかになり、特定のルールに従ってそれらの間で切り替わります (ACPI の 386 ページ) 5.0仕様)。

システム上に存在する各プロセッサは、DSDT テーブル (ほとんどの場合 \_PR 名前空間) に記述される必要があり、通常はオペレーティング システム (PM ドライバー) と対話し、プロセッサの機能を記述する多数のメソッドが提供されます ( _PDC、_PPC)、サポートされる状態 (_CST、_TSS、_PSS)、およびその管理 (_PTC、_PCT)。 各 CPU に必要な値 (いわゆる CPU サポート パッケージに含まれている場合) はマザーボードの BIOS によって決定され、マシンの起動時に対応する ACPI テーブルとメソッド (p. 11 pdf) が設定されます。 。

EST は P ステートでのプロセッサの動作を制御します。これは私たちにとって興味深いものです。 たとえば、Pentium M は、電圧と周波数が異なる 6 つの P ステートをサポートしています (図 1.1 および表 1.6 pdf を参照)。

一般に、プロセッサーが事前に不明な場合、それを操作するための多かれ少なかれ信頼できる (インテルが推奨する) 唯一の方法は ACPI です。 MSR レジスタ (モデル固有レジスタ) を介して、ACPI をバイパスして特定のプロセッサと直接対話することができます。これには、コマンド ラインからの直接の対話も含まれます。バージョン 7.2 以降、FreeBSD はこれに cpucontrol(8) ユーティリティを使用します。

プロセッサが EST をサポートしているかどうかを確認するには、IA_32_MISC_ENABLE レジスタ (0x1A0) の 16 番目のビットを確認します。次のように設定されている必要があります。

# kldload cpuctl # cpucontrol -m 0x1a0 /dev/cpuctl0 | (read _ msr hi lo ; echo $((lo >> 16 & 1))) 1
GNU/Linux の同様のコマンド (msr-tools パッケージが必要):

# modprobe msr # echo $((`rdmsr -c 0x1a0` >> 16 & 1)) 1
状態間の遷移は、IA32_PERF_CTL レジスタ (0x199) に書き込むときに発生します。 現在の動作モードは、動的に更新される IA32_PERF_STATUS レジスタ (0x198) を読み取ることで確認できます (表 1.4 pdf)。今後は、簡潔にするために IA32_ プレフィックスを省略します。

# cpucontrol -m 0x198 /dev/cpuctl0 MSR 0x198: 0x0612112b 0x06000c20
ドキュメントによると、現在の状態は下位 16 ビットでエンコードされていることがわかります (コマンドが数回実行されると、値が変わる可能性があります。これは EST が機能していることを意味します)。 残りのビットを詳しく見てみると、それらも明らかにゴミではありません。 グーグルで調べれば、それらの意味がわかります。

PERF_STATUS レジスタの構造

PERF_STATUS から読み取られたデータは、次の構造で表されます (データがリトル エンディアンとして格納されていると仮定します)。

Struct msr_perf_status ( unsigned curr_psv: 16; /* 現在の PSV */ unsigned status: 8; /* ステータス フラグ */ unsigned min_mult: 8; /* 最小乗数 */ unsigned max_psv: 16; /* 最大 PSV */ unsigned init_psv: 16; /* PSV の電源をオンにする */ );
3 つの 16 ビット フィールドはいわゆるパフォーマンス状態値 (PSV) であり、以下でそれらの構造を検討します: 現在の PSV 値、最大値 (プロセッサーに応じて)、およびシステム起動時の値 (オンになっているとき)。 。 現在の値 (curr_psv) は、動作モードが変更されると明らかに変化します。最大値 (max_psv) は通常一定のままで、開始値 (init_psv) は変化しません。原則として、デスクトップとサーバーの最大値と等しくなりますが、モバイル CPU の最小値。 Intel プロセッサの最小乗数 (min_mult) は、ほとんどの場合 6 です。 ステータス フィールドには、たとえば、EST イベントまたは THERM イベントが発生したとき (つまり、それぞれ P ステートが変化したとき、またはプロセッサが過熱したとき)、いくつかのフラグの値が含まれます。

PERF_STATUS レジスタの 64 ビットすべての目的がわかったので、上で読んだ単語を解読できます。 0x0612 112b 0x06 00 0c20⇒ 開始時の PSV は 0x0612、最大値は 0x112b、最小乗数は 6 (予想どおり)、フラグはクリアされ、現在の PSV 値 = 0x0c20。 この 16 ビットは一体何を意味するのでしょうか?

パフォーマンス状態値 (PSV) の構造

プロセッサーの動作モードはこの形式で設定されるため、PSV とは何かを知り、理解することが非常に重要です。

Struct psv ( unsigned vid: 6; /* 電圧識別子 */ unsigned _reserved1: 2; unsigned freq: 5; /* 周波数識別子 */ unsigned _reserved2: 1; unsigned nibr: 1; /* 非整数バス比 */ unsigned slfm: 1; /* 動的 FS​​B 周波数 (スーパー LFM) */ );
動的な FSB 周波数切り替えは、2 番目の FSB クロック サイクルごとにスキップするように指定します。 動作周波数を半分に下げます。 この機能は最初に Core 2 Duo プロセッサ (Merom コア) に実装されましたが、非整数バス比と同様に私たちには関係ありません。これは一部のプロセッサでサポートされている特別なモードであり、その名前が示すように、よりきめ細かい制御が可能です。彼らの周波数の。

2 つのフィールドが EST テクノロジー自体に関連しています。周波数識別子 (周波数識別子、Fid) は乗数と数値的に同じであり、電圧 (電圧識別子、Vid) は電圧レベルに対応します (通常、これは最も文書化されていません)。 )。

電圧識別子

Intel は、各プロセッサーの電圧 ID がどのようにエンコードされているかを正確に説明する情報 (通常は NDA が必要) を開示することに非常に消極的です。 しかし、幸いなことに、ほとんどの一般的な CPU では、この公式が知られています。 特に、Pentium M (およびその他の多く) の場合: V cc = Vid 0 + (Vid × V step)、ここで V cc は現在の (実際の) 電圧、Vid 0 はベース電圧 (Vid == 0 の場合) 、Vステップ - ステップ。 いくつかの人気のあるプロセッサの表 (​​すべての値はミリボルト単位):
CPU ビデオ 0 Vステップ Vブーツ Vmin Vmax
ペンティアムM 700,0 16,0 xxxx,x xxx,x xxxx,x
E6000、E4000 825,0 12,5 1100,0 850,0 1500,0
E8000、E7000 825,0 12,5 1100,0 850,0 1362,5
X9000 712,5 12,5 1200,0 800,0 1325,0
T9000 712,5 12,5 1200,0 750,0 1300,0
P9000、P8000 712,5 12,5 1200,0 750,0 1300,0
Q9000D、Q8000D 825,0 12,5 1100,0 850,0 1362,5
Q9000M 712,5 12,5 1200,0 850,0 1300,0
乗数 (つまり、Fid) は、8 ビット左にシフトされた PSV に書き込まれ、下位 6 ビットは Vid によって占有されます。 なぜなら この場合、残りのビットは無視でき、PSV、プロセッサ周波数、システム バス、物理電圧は簡単な式で関係付けられます (Pentium M の場合)。
次に、制御レジスタ (PERF_CTL) を見てみましょう。 書き込みは次のように行う必要があります。まず、現在の値 (64 ビット ワード全体) が読み取られ、その中で必要なビットが変更され、レジスタに書き戻されます (いわゆる読み取り-変更-書き込み)。 。

PERF_CTL レジスタ構造体

struct msr_perf_ctl ( unsigned psv: 16; /* 要求された PSV */ unsigned _reserved1: 16; unsigned ida_disengage: 1; /* IDA の解除 */ unsigned _reserved2: 31; );
IDA (Intel Dynamic Acceleration) 解除ビットを使用すると、Intel Core 2 Duo T7700 以降のプロセッサ上の便宜的な周波数制御を一時的に無効にすることができますが、これも私たちには関係ありません。 下位 16 ビット (PSV) は、プロセッサに切り替えるよう「要求」するモードです。

テーブル_PSS

_PSS テーブルは状態の配列です ( パッケージ ACPI 用語で)、またはそのような配列を返すメソッド。 各状態 (P 状態) は、次の構造によって定義されます (ACPI 仕様の p. 409)。

Struct Pstate ( unsigned CoreFrequency; /* コア CPU 動作周波数、MHz */ unsigned Power; /* 最大消費電力、mW */ unsigned Latency; /* 移行中に CPU が使用できない場合の最悪の場合のレイテンシ、μs */ unsigned BusMasterLatency; / * バス マスターがメモリにアクセスできない間の最悪の場合のレイテンシ、μs */ unsigned Control; /* この状態に切り替えるために PERF_CTL に書き込まれる値 */ unsigned ステータス (PERF_STATUS から読み取られたものと等しい必要があります) */ );
したがって、各 P ステートは、コアの動作周波数、最大消費電力、遷移遅延 (実際には、これは CPU とメモリが使用できない状態間の遷移時間です)、そして最後に最も興味深い PSV によって特徴付けられます。これはこの状態に対応しており、この状態 (コントロール) に移行するには PERF_CTL に書き込む必要があります。 プロセッサが新しい状態に正常に移行したことを確認するには、PERF_STATUS レジスタを読み取り、それを Status フィールドに記録された値と比較する必要があります。

オペレーティング システムの EST ドライバーは、一部のプロセッサについて「認識」できます。 ACPI サポートなしでも管理できるようになります。 しかし、これは特に最近ではまれです (ただし、バージョン 2.6.20 より前のどこかで Linux でアンダーボルティングを行うには、ドライバー内のテーブルにパッチを適用する必要があり、2011 年当時はこの方法が非常に一般的でした)。

_PSS テーブルがなく、不明なプロセッサーがある場合でも、EST ドライバーが機能することは注目に値します。 最大値と最小値は PERF_STATUS から見つけることができます (この場合、明らかに P ステートの数は 2 に縮退します)。

理論は十分だ。 これをどうすればいいでしょうか?

1) 必要な MSR ワードのすべてのビットの目的、2) PSV がプロセッサー用に正確にどのようにエンコードされるか、3) DSDT で必要な設定を探す場所がわかったので、次は周波数の表を作成します。と電圧 デフォルト。 DSDT をダンプし、そこで _PSS テーブルを探しましょう。 Pentium M 780 の場合、次のようになります。

Default_PSS 値

Name (_PSS, Package (0x06) ( // 合計 6 つの状態が定義されています (P ステート) Package (0x06) ( 0x000008DB, // 2267 MHz (cf. Fid × FSB クロック) 0x00006978, // 27000 mW 0x0000000A, // 10 μs (仕様を満たす) 0x0000000A、// 10 μs 0x0000112B、// 0x11 = 17 (乗算器、Fid)、0x2b = 43 (Vid) 0x0000112B )、パッケージ (0x06) ( 0x0000074B、// 1867 MHz (8) 2%最大値の) 0x000059D8、// 23000 mW 0x0000000A、0x0000000A、0x00000E25、// Fid = 14、Vid = 37 0x00000E25 )、パッケージ (0x06) ( 0x00000640、// 1600 MHz (71%)最大値 0x0) 0005208, // 21000 mW 0x0000000A, 0x0000000A , 0x00000C20, // Fid = 12, Vid = 32 0x00000C20 ), パッケージ (0x06) ( 0x00000535, // 1333 MHz (最大の 59%) 0x00004650, // 1800 0mW 0x0000000A、0x0000000A、x00000A1C、// Fid = 10、Vid = 28 0x00000A1C )、パッケージ (0x06) ( 0x0000042B、// 1067 MHz (最大の 47%) 0x00003E80、// 16000 mW 0x0000000A、0x0000000A、0x00000817、 Fid = 8、Vid = 2 3 0x00000817 ), パッケージ (0x06 ) ( 0x00000320, // 800 MHz (最大の 35%) 0x000032C8, // 13000 mW 0x0000000A, 0x0000000A, 0x00000612, // Fid = 6, Vid = 18 0x00000612 )))


したがって、各 P レベルのデフォルト Vid は 43、37、32、28、23、18 であることがわかります。これは 1388 mV ~ 988 mV の電圧に対応します。 電圧不足の本質は、これらの電圧がプロセッサの安定した動作に実際に必要な電圧よりも若干高い可能性があるということです。「許容される限界」を判断してみましょう。

このために、Vid を徐々に下げて単純なループを実行する単純なシェル スクリプトを作成しました (もちろん、この前に powerd(8) デーモンを強制終了する必要があります)。 したがって、少なくともプロセッサがフリーズしない電圧を決定し、Super Pi テストを数回実行してカーネルを再構築しました。 その後、2 つの最大周波数の Vid 値をさらに 1 ポイント上げました。そうしないと、不正な命令エラーが原因で gcc がクラッシュすることがありました。 数日間にわたるすべての実験の結果、次の一連の「安定した」Vid が得られました: 30、18、12、7、2、0。

結果の分析

最小安全電圧を経験的に決定したので、それらを元の電圧と比較するのは興味深いことです。
最大電圧を 15% でも下げると、非常に顕著な結果が得られました。長期的な負荷によってプロセッサーの過熱や緊急シャットダウンが発生しなくなっただけでなく、温度が 80°C を超えることもほとんどなくなりました。 acpiconf -i 0 で判断すると、「オフィス」モードでの予測バッテリー寿命は 1 時間 40 分から 2 時間 25 分に増加しました (それほど大きくはありませんが、リチウムイオン電池は時間の経過とともに疲労します。私は変更していません)。 7年前にラップトップを購入して以来、バッテリーが消耗しています。)

次に、設定が自動的に適用されることを確認する必要があります。 たとえば、PSV 値が ACPI 経由ではなく独自のテーブルから取得されるように cpufreq(4) ドライバーを変更できます。 しかし、これは、システムを更新するときにドライバーにパッチを当てることを忘れないようにする必要があるというだけの理由で不便であり、一般的に、これは解決策というよりも汚いハックのように見えます。 おそらく powerd(8) に何らかの方法でパッチを適用することができますが、これはほぼ同じ理由で良くありません。 単純にスクリプトを実行して、MSR に直接書き込むことで電圧を下げることもできますが (実際、これは「安定した」電圧を決定するために私が行ったことです)、その場合は状態間の遷移を覚えて個別に処理する必要があります (そうではありません)。 P ステートのみですが、ラップトップがスリープから復帰するときなど、まったくありません)。 それも重要ではありません。

ACPI 経由で PSV 値を受信した場合、DSDT の _PSS テーブルを変更するのが最も論理的です。 幸いなことに、このために BIOS をいじる必要はありません。FreeBSD はファイルから DSDT をロードできます (Habré 上の ACPI テーブルの変更についてはすでに何度か書いたので、ここでは詳しく説明しません)。 。 DSDT の必須フィールドを置き換えます。

_PSS の低電圧パッチ

@@ -7385.8 +7385.8 @@ 0x0000000A, 0x0000000A, - 0x0000112B, - 0x0000112B + 0x0000111D, + 0x0000111D )、パッケージ (0x06) @@ -7395.8 + 7395.8 @@ 0x000059D8、0x0000000A、0x0000000A、-0x00000E25、-0x00000E25 + 0x00000E12, + 0x00000E12 )、パッケージ (0x06) @@ -7405.8 +7405.8 @@ 0x00005208, 0x0000000A, A, - 0x00000C20, - 0x00000C20 + 0x00000C0C, + 00C0C )、パッケージ ( 0x06) @@ -7415.8 +7415.8 @@ 0x00004650、 0x0000000A、0x0000000A、-0x00000A1C、-0x00000A1C + 0x00000A07、+ 0x00000A07 )、パッケージ (0x06) @@ -7 425.8 +7425.8 @@ 0x00003E80、 00A、0x0000000A、- 0x00000817、- 0x00000817 + 0x00000802、+ 0x00000802 )、パッケージ (0x06) ) @@ -7435.8 +7435.8 @@ 0x000032C8、A、0x0000000A、-0x00000612、-0x00000612 + 0x00000600、+ 0x00000600 ) ) )


新しい AML ファイル (ACPI バイトコード) をコンパイルし、FreeBSD がデフォルトの DSDT の代わりに変更された DSDT をロードするように /boot/loader.conf を変更します。

Acpi_dsdt_load="YES" acpi_dsdt_name="/root/undervolt.aml"
基本的にはこれですべてです。 唯一のことは、プロセッサを変更する場合は、/boot/loader.conf 内のこれら 2 行をコメントアウトすることを忘れないでください。

標準電圧を下げるつもりがない場合でも、プロセッサー状態 (P ステートだけでなく) の管理を構成できる機能は便利です。 結局のところ、「歪んだ」BIOS がテーブルに不正確、不完全に入力するか、まったく入力しないことがよくあります (たとえば、EST をサポートしていない Celerone があり、メーカーが正式に EST を提供していないため)その代替品)。 この場合、すべての作業を自分で行う必要があります。 _PSS テーブルを追加するだけでは不十分な場合があることに注意してください。 したがって、C ステートは _CST テーブルによって指定されますが、さらに制御手順自体 (Performance Control、_PCT) を記述する必要がある場合もあります。 幸いなことに、これは難しいことではなく、ACPI 仕様の第 8 章に例を示して詳しく説明されています。

GNU/Linux での過小評価

実を言うと、最初は Gentoo Undervolting Guide を読んで、それを FreeBSD に適応させることしかできないと思っていました。 このドキュメントは非常に愚かであることが判明したため、これはそれほど単純ではないことが判明しました (これは Gentoo Wiki にとって実際には奇妙です)。 残念ながら、新しいウェブサイトには同様のものは見つからなかったので、古いコピーで満足する必要がありました。 このガイドがその関連性の多くを失っていることは理解していますが、それでも少し批判します。 :-)

何らかの理由で、彼らは宣戦布告することなく、すぐに私にカーネルにパッチを適用するように提案しました (FreeBSD では、しばらくの間、私たちにはシステムがまったくありません) コード変更する必要はありませんでした)。 ドライバの内部に入力するか、いくつかの初期スクリプトに特定の「安全な」電圧の値を書き込みます。これは、未知の誰かが、どのようにして特別なテーブルから取得したものです(Pentium M 780 は、質問のみからなる行で嘲笑的に表されています)マーク)。 アドバイスに従ってください。中には、何のことを言っているのか明らかにわからない人が書いたものもあります。 そして最も重要なことは、いくつかの数字を他の数字に置き換える魔法のような動作がなぜ、そしてどのように正確に機能するのかが完全に不明であるということです。 何かにパッチを当ててカーネルを再構築する前に EST に「触れる」方法はありません。また、MSR レジスタとコマンド ラインからの操作についてはまったく言及されていません。 ACPI テーブルの変更は、代替オプションまたは推奨オプションとはみなされません。

Makos は ACPI と非常に密接に連携し (そして正しい動作を期待し)、テーブルの変更は特定のハードウェア向けに ACPI をカスタマイズする主な方法の 1 つです。 したがって、最初に思いつくのは、同じ方法で DSDT をダンプしてパッチを適用することです。 代替方法: google://IntelEnhancedSpeedStep.kext、たとえば、1、2、3。

別の「素晴らしい」ユーティリティ (幸いなことに、すでに時代遅れです) は、電圧と周波数を変更する機能を 10 ドルで購入できると提案しています。 :-)

最新のデスクトップおよび (特に) モバイル プロセッサでは、ODCM、CxE、EIST などの多くの省エネ技術が使用されています。今日は、おそらくそれらの最高レベルである、プロセッサ コアの周波数と電圧の柔軟な制御に興味を持ちます。操作 - Cool "n" Quiet、PowerNow! AMD の場合は Enhanced SpeedStep (EIST)、Intel の場合。

ほとんどの場合、コンピュータまたはラップトップのユーザーは、BIOS やオペレーティング システムで特定のテクノロジのサポートを有効にする (ボックスにチェックを入れる) だけで十分です。通常、微調整は提供されませんが、実際にやってみると非常に便利です。 。 この記事では、オペレーティング システムからプロセッサ コアの動作電圧を制御する方法 (Intel Pentium M と FreeBSD の例を使用)、およびこれが必要な理由について説明します。

多数のマニュアルがあるにもかかわらず、特にロシア語で (エンド ユーザーではなく) オペレーティング システムの観点から Enhanced SpeedStep テクノロジの詳細な説明を見つけることはめったにありません。そのため、記事のかなりの部分がこの説明に当てられています。実装の詳細は、本質的に理論的なものです。

この記事が FreeBSD ユーザーだけでなく役立つことを願っています。GNU/Linux、Windows、Mac OS X についても少し触れます。ただし、この場合、特定のオペレーティング システムは二次的に重要です。

序文

昨年、私は古いラップトップのプロセッサをアップグレードしました。標準の 735 の代わりに Pentium M 780 をインストールし、いわば最大まで押し上げました。 ラップトップは負荷がかかるとさらに発熱し始めました (熱放散が 10 W 増加したため)。 私はこれにあまり注意を払いませんでした(念のためクーラーを掃除して注油したことを除いて)。しかし、ある晴れた日、長いコンパイル中に、コンピューターの電源が切れてしまいました(温度は臨界の 100 度に達しました) )。 温度を監視し、何かが起こった場合は時間内に「重い」タスクを中断するために、システム変数 hw.acpi.thermal.tz0.temperature の値をトレイに表示しました。 しかし、しばらくすると警戒心がなくなり(気温は常に正常範囲内に保たれていました)、すべてが再び起こりました。 この時点で、私は、CPU 負荷が長い間クラッシュを常に恐れて Ctrl-C を押し続けることも、プロセッサを強制的に動作させることももうしたくないと決心しました。

通常、標準電圧を変更するということは、オーバークロック時 (つまり周波数の増加時) にプロセッサの安定した動作を確保するために電圧を上げることを意味します。 大まかに言えば、各電圧値は動作可能な周波数の特定の範囲に対応しており、オーバークロッカーのタスクは、プロセッサがまだ「グリッチ」しない最大周波数を見つけることです。 私たちの場合、タスクはある意味で対称的です。既知の周波数 (より正確には、すぐにわかりますが、一連の周波数) に対して、CPU の安定した動作を保証する最低電圧を見つけます。 パフォーマンスを落とさないように動作周波数を下げたくありません。ラップトップはすでにトップエンドからはほど遠いものです。 さらに電圧を下げる より収益性の高い.

ちょっとした理論

知られているように、プロセッサの熱放散は、その容量、周波数、およびプロセッサの熱放散に比例します。 四角(なぜそうなるのか興味がある人は、プロセッサを基本的な CMOS インバータ (論理否定) のセットとして考えて、自分で依存関係を導出してみるか、リンク 1、2、3 をたどってみてください)。

最新のモバイル プロセッサは最大 50 ~ 70 W を消費する可能性があり、最終的には熱として放散されます。 これは非常に多く(白熱灯を思い出してください)、特にラップトップの場合、負荷がかかったオフラインモードでは豚がオレンジを食べるようにバッテリーを「消耗」します。 密閉された空間では、熱を積極的に除去する必要がある可能性が高く、これは冷却ファン (おそらく複数) を回転させるために追加のエネルギー消費を意味します。

当然のことながら、この状況は誰にも適していませんでした。プロセッサメーカーは、電力消費(およびそれに応じて熱伝達)を最適化し、同時にプロセッサの過熱を防ぐ方法を考え始めました。 興味のある方は、ドミトリー・ベセディンによる数多くの素晴らしい記事を読むことをお勧めします。それまでの間、早速本題に入ります。

ちょっとした歴史

SpeedStep テクノロジー (バージョン 1.1) は、第 3 世代 Pentium (18 ミクロンの技術プロセスを使用して製造、ラップトップ用モバイル Coppermine、2000 年) の第 2 世代で初めて登場しました。これは、コンピューターの負荷または電源に応じて、ネットワークまたはバッテリー - 可変乗数により高周波と低周波が切り替わる可能性があります。 エコノミー モードでは、プロセッサは約半分のエネルギーを消費しました。

13 ミクロン技術プロセスへの移行により、この技術はバージョン番号 2.1 を受けて「強化」され、プロセッサーの周波数だけでなく電圧も下げることができるようになりました。 バージョン 2.2 は NetBurst アーキテクチャに適応したもので、3 番目のバージョン (Centrino プラットフォーム) までに、このテクノロジーは正式に Enhanced Intel SpeedStep (EIST) と呼ばれるようになります。

バージョン 3.1 (2003) は、Pentium M プロセッサの第 1 世代と第 2 世代 (Banias および Dothan コア) で初めて使用されました。 周波数は、ベースの 40% から 100% まで、100 MHz (Banias の場合) または 133 MHz (Dothan の場合、この場合) のステップで変化しました (最初は 2 つの値の間で切り替わるだけでした)。 同時に、インテルは 2 次キャッシュ (L2) の動的容量管理を導入しており、これにより消費電力をさらに最適化できます。 バージョン 3.2 (拡張 EIST) - 共有 L2 キャッシュを備えたマルチコア プロセッサーに適応。 (SpeedStep テクノロジーに関するインテルからの小さな FAQ。)

ここで、多数のハウツーやチュートリアルに盲目的に従うのではなく、PDF をダウンロードして EST の動作原理を理解してみましょう (この略語はより普遍的で短いため、引き続き使用します)。

ESTの仕組み

したがって、EST を使用すると、プロセッサのパフォーマンスと消費電力を制御できます。 動的に、動作中。 プロセッサの動作パラメータを変更するには (チップセット内の) ハードウェア サポートが必要だった以前の実装とは異なり、EST では プログラム的に、つまり BIOS またはオペレーティング システムを使用して、負荷、コンピュータ電源の種類、CPU 温度および/または OS 設定 (ポリシー) に応じて乗数 (プロセッサ周波数とバス周波数の比) とコア電圧 (V cc) を変更します。

動作中、プロセッサは、T (スロットル)、S (スリープ)、C (アイドル)、P (パフォーマンス) のいくつかの状態 (電源状態) のいずれかになり、特定のルールに従ってそれらの間で切り替わります (ACPI の 386 ページ) 5.0仕様)。

システム上に存在する各プロセッサは、DSDT テーブル (ほとんどの場合 \_PR 名前空間) に記述される必要があり、通常はオペレーティング システム (PM ドライバー) と対話し、プロセッサの機能を記述する多数のメソッドが提供されます ( _PDC、_PPC)、サポートされる状態 (_CST、_TSS、_PSS)、およびその管理 (_PTC、_PCT)。 各 CPU に必要な値 (いわゆる CPU サポート パッケージに含まれている場合) はマザーボードの BIOS によって決定され、マシンの起動時に対応する ACPI テーブルとメソッド (p. 11 pdf) が設定されます。 。

EST は P ステートでのプロセッサの動作を制御します。これは私たちにとって興味深いものです。 たとえば、Pentium M は、電圧と周波数が異なる 6 つの P ステートをサポートしています (図 1.1 および表 1.6 pdf を参照)。

一般に、プロセッサーが事前に不明な場合、それを操作するための多かれ少なかれ信頼できる (インテルが推奨する) 唯一の方法は ACPI です。 MSR レジスタ (モデル固有レジスタ) を介して、ACPI をバイパスして特定のプロセッサと直接対話することができます。これには、コマンド ラインからの直接の対話も含まれます。バージョン 7.2 以降、FreeBSD はこれに cpucontrol(8) ユーティリティを使用します。

プロセッサが EST をサポートしているかどうかを確認するには、IA_32_MISC_ENABLE レジスタ (0x1A0) の 16 番目のビットを確認します。次のように設定されている必要があります。

# kldload cpuctl # cpucontrol -m 0x1a0 /dev/cpuctl0 | (read _ msr hi lo ; echo $((lo >> 16 & 1))) 1
GNU/Linux の同様のコマンド (msr-tools パッケージが必要):

# modprobe msr # echo $((`rdmsr -c 0x1a0` >> 16 & 1)) 1
状態間の遷移は、IA32_PERF_CTL レジスタ (0x199) に書き込むときに発生します。 現在の動作モードは、動的に更新される IA32_PERF_STATUS レジスタ (0x198) を読み取ることで確認できます (表 1.4 pdf)。今後は、簡潔にするために IA32_ プレフィックスを省略します。

# cpucontrol -m 0x198 /dev/cpuctl0 MSR 0x198: 0x0612112b 0x06000c20
ドキュメントによると、現在の状態は下位 16 ビットでエンコードされていることがわかります (コマンドが数回実行されると、値が変わる可能性があります。これは EST が機能していることを意味します)。 残りのビットを詳しく見てみると、それらも明らかにゴミではありません。 グーグルで調べれば、それらの意味がわかります。

PERF_STATUS レジスタの構造

PERF_STATUS から読み取られたデータは、次の構造で表されます (データがリトル エンディアンとして格納されていると仮定します)。

Struct msr_perf_status ( unsigned curr_psv: 16; /* 現在の PSV */ unsigned status: 8; /* ステータス フラグ */ unsigned min_mult: 8; /* 最小乗数 */ unsigned max_psv: 16; /* 最大 PSV */ unsigned init_psv: 16; /* PSV の電源をオンにする */ );
3 つの 16 ビット フィールドはいわゆるパフォーマンス状態値 (PSV) であり、以下でそれらの構造を検討します: 現在の PSV 値、最大値 (プロセッサーに応じて)、およびシステム起動時の値 (オンになっているとき)。 。 現在の値 (curr_psv) は、動作モードが変更されると明らかに変化します。最大値 (max_psv) は通常一定のままで、開始値 (init_psv) は変化しません。原則として、デスクトップとサーバーの最大値と等しくなりますが、モバイル CPU の最小値。 Intel プロセッサの最小乗数 (min_mult) は、ほとんどの場合 6 です。 ステータス フィールドには、たとえば、EST イベントまたは THERM イベントが発生したとき (つまり、それぞれ P ステートが変化したとき、またはプロセッサが過熱したとき)、いくつかのフラグの値が含まれます。

PERF_STATUS レジスタの 64 ビットすべての目的がわかったので、上で読んだ単語を解読できます。 0x0612 112b 0x06 00 0c20⇒ 開始時の PSV は 0x0612、最大値は 0x112b、最小乗数は 6 (予想どおり)、フラグはクリアされ、現在の PSV 値 = 0x0c20。 この 16 ビットは一体何を意味するのでしょうか?

パフォーマンス状態値 (PSV) の構造

プロセッサーの動作モードはこの形式で設定されるため、PSV とは何かを知り、理解することが非常に重要です。

Struct psv ( unsigned vid: 6; /* 電圧識別子 */ unsigned _reserved1: 2; unsigned freq: 5; /* 周波数識別子 */ unsigned _reserved2: 1; unsigned nibr: 1; /* 非整数バス比 */ unsigned slfm: 1; /* 動的 FS​​B 周波数 (スーパー LFM) */ );
動的な FSB 周波数切り替えは、2 番目の FSB クロック サイクルごとにスキップするように指定します。 動作周波数を半分に下げます。 この機能は最初に Core 2 Duo プロセッサ (Merom コア) に実装されましたが、非整数バス比と同様に私たちには関係ありません。これは一部のプロセッサでサポートされている特別なモードであり、その名前が示すように、よりきめ細かい制御が可能です。彼らの周波数の。

2 つのフィールドが EST テクノロジー自体に関連しています。周波数識別子 (周波数識別子、Fid) は乗数と数値的に同じであり、電圧 (電圧識別子、Vid) は電圧レベルに対応します (通常、これは最も文書化されていません)。 )。

電圧識別子

Intel は、各プロセッサーの電圧 ID がどのようにエンコードされているかを正確に説明する情報 (通常は NDA が必要) を開示することに非常に消極的です。 しかし、幸いなことに、ほとんどの一般的な CPU では、この公式が知られています。 特に、Pentium M (およびその他の多く) の場合: V cc = Vid 0 + (Vid × V step)、ここで V cc は現在の (実際の) 電圧、Vid 0 はベース電圧 (Vid == 0 の場合) 、Vステップ - ステップ。 いくつかの人気のあるプロセッサの表 (​​すべての値はミリボルト単位):
CPU ビデオ 0 Vステップ Vブーツ Vmin Vmax
ペンティアムM 700,0 16,0 xxxx,x xxx,x xxxx,x
E6000、E4000 825,0 12,5 1100,0 850,0 1500,0
E8000、E7000 825,0 12,5 1100,0 850,0 1362,5
X9000 712,5 12,5 1200,0 800,0 1325,0
T9000 712,5 12,5 1200,0 750,0 1300,0
P9000、P8000 712,5 12,5 1200,0 750,0 1300,0
Q9000D、Q8000D 825,0 12,5 1100,0 850,0 1362,5
Q9000M 712,5 12,5 1200,0 850,0 1300,0
乗数 (つまり、Fid) は、8 ビット左にシフトされた PSV に書き込まれ、下位 6 ビットは Vid によって占有されます。 なぜなら この場合、残りのビットは無視でき、PSV、プロセッサ周波数、システム バス、物理電圧は簡単な式で関係付けられます (Pentium M の場合)。
次に、制御レジスタ (PERF_CTL) を見てみましょう。 書き込みは次のように行う必要があります。まず、現在の値 (64 ビット ワード全体) が読み取られ、その中で必要なビットが変更され、レジスタに書き戻されます (いわゆる読み取り-変更-書き込み)。 。

PERF_CTL レジスタ構造体

struct msr_perf_ctl ( unsigned psv: 16; /* 要求された PSV */ unsigned _reserved1: 16; unsigned ida_disengage: 1; /* IDA の解除 */ unsigned _reserved2: 31; );
IDA (Intel Dynamic Acceleration) 解除ビットを使用すると、Intel Core 2 Duo T7700 以降のプロセッサ上の便宜的な周波数制御を一時的に無効にすることができますが、これも私たちには関係ありません。 下位 16 ビット (PSV) は、プロセッサに切り替えるよう「要求」するモードです。

テーブル_PSS

_PSS テーブルは状態の配列です ( パッケージ ACPI 用語で)、またはそのような配列を返すメソッド。 各状態 (P 状態) は、次の構造によって定義されます (ACPI 仕様の p. 409)。

Struct Pstate ( unsigned CoreFrequency; /* コア CPU 動作周波数、MHz */ unsigned Power; /* 最大消費電力、mW */ unsigned Latency; /* 移行中に CPU が使用できない場合の最悪の場合のレイテンシ、μs */ unsigned BusMasterLatency; / * バス マスターがメモリにアクセスできない間の最悪の場合のレイテンシ、μs */ unsigned Control; /* この状態に切り替えるために PERF_CTL に書き込まれる値 */ unsigned ステータス (PERF_STATUS から読み取られたものと等しい必要があります) */ );
したがって、各 P ステートは、コアの動作周波数、最大消費電力、遷移遅延 (実際には、これは CPU とメモリが使用できない状態間の遷移時間です)、そして最後に最も興味深い PSV によって特徴付けられます。これはこの状態に対応しており、この状態 (コントロール) に移行するには PERF_CTL に書き込む必要があります。 プロセッサが新しい状態に正常に移行したことを確認するには、PERF_STATUS レジスタを読み取り、それを Status フィールドに記録された値と比較する必要があります。

オペレーティング システムの EST ドライバーは、一部のプロセッサについて「認識」できます。 ACPI サポートなしでも管理できるようになります。 しかし、これは特に最近ではまれです (ただし、バージョン 2.6.20 より前のどこかで Linux でアンダーボルティングを行うには、ドライバー内のテーブルにパッチを適用する必要があり、2011 年当時はこの方法が非常に一般的でした)。

_PSS テーブルがなく、不明なプロセッサーがある場合でも、EST ドライバーが機能することは注目に値します。 最大値と最小値は PERF_STATUS から見つけることができます (この場合、明らかに P ステートの数は 2 に縮退します)。

理論は十分だ。 これをどうすればいいでしょうか?

1) 必要な MSR ワードのすべてのビットの目的、2) PSV がプロセッサー用に正確にどのようにエンコードされるか、3) DSDT で必要な設定を探す場所がわかったので、次は周波数の表を作成します。と電圧 デフォルト。 DSDT をダンプし、そこで _PSS テーブルを探しましょう。 Pentium M 780 の場合、次のようになります。

Default_PSS 値

Name (_PSS, Package (0x06) ( // 合計 6 つの状態が定義されています (P ステート) Package (0x06) ( 0x000008DB, // 2267 MHz (cf. Fid × FSB クロック) 0x00006978, // 27000 mW 0x0000000A, // 10 μs (仕様を満たす) 0x0000000A、// 10 μs 0x0000112B、// 0x11 = 17 (乗算器、Fid)、0x2b = 43 (Vid) 0x0000112B )、パッケージ (0x06) ( 0x0000074B、// 1867 MHz (8) 2%最大値の) 0x000059D8、// 23000 mW 0x0000000A、0x0000000A、0x00000E25、// Fid = 14、Vid = 37 0x00000E25 )、パッケージ (0x06) ( 0x00000640、// 1600 MHz (71%)最大値 0x0) 0005208, // 21000 mW 0x0000000A, 0x0000000A , 0x00000C20, // Fid = 12, Vid = 32 0x00000C20 ), パッケージ (0x06) ( 0x00000535, // 1333 MHz (最大の 59%) 0x00004650, // 1800 0mW 0x0000000A、0x0000000A、x00000A1C、// Fid = 10、Vid = 28 0x00000A1C )、パッケージ (0x06) ( 0x0000042B、// 1067 MHz (最大の 47%) 0x00003E80、// 16000 mW 0x0000000A、0x0000000A、0x00000817、 Fid = 8、Vid = 2 3 0x00000817 ), パッケージ (0x06 ) ( 0x00000320, // 800 MHz (最大の 35%) 0x000032C8, // 13000 mW 0x0000000A, 0x0000000A, 0x00000612, // Fid = 6, Vid = 18 0x00000612 )))


したがって、各 P レベルのデフォルト Vid は 43、37、32、28、23、18 であることがわかります。これは 1388 mV ~ 988 mV の電圧に対応します。 電圧不足の本質は、これらの電圧がプロセッサの安定した動作に実際に必要な電圧よりも若干高い可能性があるということです。「許容される限界」を判断してみましょう。

このために、Vid を徐々に下げて単純なループを実行する単純なシェル スクリプトを作成しました (もちろん、この前に powerd(8) デーモンを強制終了する必要があります)。 したがって、少なくともプロセッサがフリーズしない電圧を決定し、Super Pi テストを数回実行してカーネルを再構築しました。 その後、2 つの最大周波数の Vid 値をさらに 1 ポイント上げました。そうしないと、不正な命令エラーが原因で gcc がクラッシュすることがありました。 数日間にわたるすべての実験の結果、次の一連の「安定した」Vid が得られました: 30、18、12、7、2、0。

結果の分析

最小安全電圧を経験的に決定したので、それらを元の電圧と比較するのは興味深いことです。
最大電圧を 15% でも下げると、非常に顕著な結果が得られました。長期的な負荷によってプロセッサーの過熱や緊急シャットダウンが発生しなくなっただけでなく、温度が 80°C を超えることもほとんどなくなりました。 acpiconf -i 0 で判断すると、「オフィス」モードでの予測バッテリー寿命は 1 時間 40 分から 2 時間 25 分に増加しました (それほど大きくはありませんが、リチウムイオン電池は時間の経過とともに疲労します。私は変更していません)。 7年前にラップトップを購入して以来、バッテリーが消耗しています。)

次に、設定が自動的に適用されることを確認する必要があります。 たとえば、PSV 値が ACPI 経由ではなく独自のテーブルから取得されるように cpufreq(4) ドライバーを変更できます。 しかし、これは、システムを更新するときにドライバーにパッチを当てることを忘れないようにする必要があるというだけの理由で不便であり、一般的に、これは解決策というよりも汚いハックのように見えます。 おそらく powerd(8) に何らかの方法でパッチを適用することができますが、これはほぼ同じ理由で良くありません。 単純にスクリプトを実行して、MSR に直接書き込むことで電圧を下げることもできますが (実際、これは「安定した」電圧を決定するために私が行ったことです)、その場合は状態間の遷移を覚えて個別に処理する必要があります (そうではありません)。 P ステートのみですが、ラップトップがスリープから復帰するときなど、まったくありません)。 それも重要ではありません。

ACPI 経由で PSV 値を受信した場合、DSDT の _PSS テーブルを変更するのが最も論理的です。 幸いなことに、このために BIOS をいじる必要はありません。FreeBSD はファイルから DSDT をロードできます (Habré での ACPI テーブルの変更についてはすでに説明したので、ここでは詳しく説明しません)。 DSDT の必須フィールドを置き換えます。

_PSS の低電圧パッチ

@@ -7385.8 +7385.8 @@ 0x0000000A, 0x0000000A, - 0x0000112B, - 0x0000112B + 0x0000111D, + 0x0000111D )、パッケージ (0x06) @@ -7395.8 + 7395.8 @@ 0x000059D8、0x0000000A、0x0000000A、-0x00000E25、-0x00000E25 + 0x00000E12, + 0x00000E12 )、パッケージ (0x06) @@ -7405.8 +7405.8 @@ 0x00005208, 0x0000000A, A, - 0x00000C20, - 0x00000C20 + 0x00000C0C, + 00C0C )、パッケージ ( 0x06) @@ -7415.8 +7415.8 @@ 0x00004650、 0x0000000A、0x0000000A、-0x00000A1C、-0x00000A1C + 0x00000A07、+ 0x00000A07 )、パッケージ (0x06) @@ -7 425.8 +7425.8 @@ 0x00003E80、 00A、0x0000000A、- 0x00000817、- 0x00000817 + 0x00000802、+ 0x00000802 )、パッケージ (0x06) ) @@ -7435.8 +7435.8 @@ 0x000032C8、A、0x0000000A、-0x00000612、-0x00000612 + 0x00000600、+ 0x00000600 ) ) )


新しい AML ファイル (ACPI バイトコード) をコンパイルし、FreeBSD がデフォルトの DSDT の代わりに変更された DSDT をロードするように /boot/loader.conf を変更します。

Acpi_dsdt_load="YES" acpi_dsdt_name="/root/undervolt.aml"
基本的にはこれですべてです。 唯一のことは、プロセッサを変更する場合は、/boot/loader.conf 内のこれら 2 行をコメントアウトすることを忘れないでください。

標準電圧を下げるつもりがない場合でも、プロセッサー状態 (P ステートだけでなく) の管理を構成できる機能は便利です。 結局のところ、「歪んだ」BIOS がテーブルに不正確、不完全に入力するか、まったく入力しないことがよくあります (たとえば、EST をサポートしていない Celerone があり、メーカーが正式に EST を提供していないため)その代替品)。 この場合、すべての作業を自分で行う必要があります。 _PSS テーブルを追加するだけでは不十分な場合があることに注意してください。 したがって、C ステートは _CST テーブルによって指定されますが、さらに制御手順自体 (Performance Control、_PCT) を記述する必要がある場合もあります。 幸いなことに、これは難しいことではなく、ACPI 仕様の第 8 章に例を示して詳しく説明されています。

GNU/Linux での過小評価

実を言うと、最初は Gentoo Undervolting Guide を読んで、それを FreeBSD に適応させることしかできないと思っていました。 このドキュメントは非常に愚かであることが判明したため、これはそれほど単純ではないことが判明しました (これは Gentoo Wiki にとって実際には奇妙です)。 残念ながら、新しいウェブサイトには同様のものは見つからなかったので、古いコピーで満足する必要がありました。 このガイドがその関連性の多くを失っていることは理解していますが、それでも少し批判します。 :-)

何らかの理由で、彼らは宣戦布告することなく、すぐに私にカーネルにパッチを適用するように提案しました (FreeBSD では、しばらくの間、私たちにはシステムがまったくありません) コード変更する必要はありませんでした)。 ドライバの内部に入力するか、いくつかの初期スクリプトに特定の「安全な」電圧の値を書き込みます。これは、未知の誰かが、どのようにして特別なテーブルから取得したものです(Pentium M 780 は、質問のみからなる行で嘲笑的に表されています)マーク)。 アドバイスに従ってください。中には、何のことを言っているのか明らかにわからない人が書いたものもあります。 そして最も重要なことは、いくつかの数字を他の数字に置き換える魔法のような動作がなぜ、そしてどのように正確に機能するのかが完全に不明であるということです。 何かにパッチを当ててカーネルを再構築する前に EST に「触れる」方法はありません。また、MSR レジスタとコマンド ラインからの操作についてはまったく言及されていません。 ACPI テーブルの変更は、代替オプションまたは推奨オプションとはみなされません。

Makos は ACPI と非常に密接に連携し (そして正しい動作を期待し)、テーブルの変更は特定のハードウェア向けに ACPI をカスタマイズする主な方法の 1 つです。 したがって、最初に思いつくのは、同じ方法で DSDT をダンプしてパッチを適用することです。 代替方法: google://IntelEnhancedSpeedStep.kext、たとえば、1、2、3。

別の「素晴らしい」ユーティリティ (幸いなことに、すでに時代遅れです) は、電圧と周波数を変更する機能を 10 ドルで購入できると提案しています。 :-)

Intel プロセッサの電圧調整

注意! ここに記載されている操作を行った結果、コンピュータに生じた損害について、記事の著者は一切の責任を負いません。

より幸運なユーザーもいれば、そうでないユーザーもいます。 次の「標準」FSB 周波数に簡単にオーバークロックできるプロセッサーを入手できる幸運な人もいます。Celeron では最大 100 MHz、Pentium III「E」モディファイドでは最大 133 MHz です。 ただし、そのようなプロセッサーは入手がそれほど簡単ではありません。これらは市場で入手できますが、販売者は多くの場合、「保証された」オーバークロック可能な石を欲しがるあまり、ほぼ同じで「ネイティブ」周波数で保証されたプロセッサーを購入できます。メーカーによる。 ただし、より高い周波数で動作しても不安定なプロセッサーに遭遇することはよくあります。 つまり、予期しない障害が発生し、プログラムが「許容できない操作を実行」して閉じられ、目が「ブルースクリーン」や同様の喜びで満足します。

多くの場合、プロセッサの電源電圧を上げることでこの問題を解決できます。 古典的な Celeron (Mendocino コアをベース、つまりモデル 300A-533) の場合、標準コア電圧は 2 V です。原則として、大きなリスクなしで 5 ~ 10% (最大 2.1 ~ 2.2 V) 増やすことができます。 Coppermine コア (Celeron 533A-766 および Pentium III) を搭載したプロセッサーにもまったく同じことが当てはまります。絶対的な数値のみが変わります。

ただし、BIOS またはマザーボード上のジャンパを使用して希望の電圧レベルを設定できれば良いのですが、そのようなオプションがない場合はどうすればよいでしょうか (安価なマザーボードについては通常これが当てはまります)。 実際、安価なハードウェアでより優れたパフォーマンスを得るというオーバークロックの主な概念は消えてしまいます。 スロット 1 コネクタを備えたボードでは、特殊なアダプタを使用できますが、ソケット ボードのユーザーにとってはそれほど簡単ではありません (さらに、電圧調整付きのアダプタとシンプルなモデルの価格に 5 ~ 7 ドルの違いがある場合があります)それがないと重要です)。 オーバークロック用に設計されたボードと安価なソケット モデルの価格差は最大 30 ドルです (さらに、これらのボードのほとんどは ATX フォーマットを備えているため、コンピューターをアップグレードする場合はケースを交換する必要があります)。その金額を節約するには、場合によってはいくつかの非標準的な方法を使用する価値があります。

最近、供給電圧の変更というトピックは、オーバークロッカーだけに関連するものではなくなりました。 実際のところ、古いチップセット (LX、EX、BX、ZX、Apollo Pro) で利用可能なマザーボードは、多くの場合、少なくとも新しい Celeron (場合によってはすぐに、場合によっては変更後)、および場合によっては Pentium III で動作することができますが、これが唯一の障害です。はボード上の電圧コンバータであり、1.8 V 未満を供給できません。この問題に対する完全に論理的な解決策は、プロセッサを強制的にこの電圧に切り替えることです。

警告。 電圧が増加すると、プロセッサによって消費される電力も増加することを忘れないでください。 これはオーバークロックの場合に特に当てはまります。プロセッサ周波数の増加により、追加の発熱が観察されます。 したがって、プロセッサの適切な冷却について事前に検討する価値があります(ただし、電圧が増加するかどうかに関係なく、いずれの場合でもこれを行う価値があります)

Pentium II および Celeron クラスのプロセッサに電力を供給するには、かなり強力な電源が必要です。そのため、2 次キャッシュ電源 (図に Vccs で示されています) はコア電源 (Vccp) から分離されており、同じ定格の電圧値を使用します。 Vccs ラインの は使用されません。 つまり、プロセッサの種類 (対応するプロセッサレッグの電圧レベル) に応じて、マザーボード上のスタビライザーが必要な電圧を設定します。

表1。 電源電圧の識別
ビデオ 電圧、V ビデオ 電圧、V
01111 1.30 11111 プロセッサーなし
01110 1.35 11110 2.1
01101 1.40 11101 2.2
01100 1.45 11100 2.3
01011 1.50 11011 2.4
01010 1.55 11010 2.5
01001 1.60 11001 2.6
01000 1.65 11000 2.7
00111 1.70 10111 2.8
00110 1.75 10110 2.9
00101 1.80 10101 3.0
00100 1.85 10100 3.1
00011 1.90 10011 3.2
00010 1.95 10010 3.3
00001 2.00 10001 3.4
00000 2.05 10000 3.5

VID は SEPP/SECC バージョン (スロット 1) でのみ使用されるため、ソケット 370 のボード上の電圧は 2.05 V までしか増加できません。すべての Intel プロセッサーで動作するには、太字の値のサポートが必要です。 FCPGA プロセッサの供給電圧には下線が引かれています。

表2。 一部のプロセッサーの電源
CPU Vccp、コア、V Vcc、キャッシュ、V
Pentium II 233-300 (クラマス) 2.8 3.3
Pentium II 266-450 (デシュート) 2.0 2.0
Pentium III 450-550 (カトマイ) 2.0 3.3
Pentium III 600 (カトマイ) 2.05 3.3
Celeron 266-533 (コビントン、メンドシノ) 2.0 -
セレロン533A-600
1.5
1.7
-
セレロン 633-766
1.65
1.7
-

(Celeron 533A -766 には、異なる電圧向けに設計された 2 つの変更があります)

物理的に (0) はピンがグランド (GND または Vss) に接続されていることを意味し、(1) はピンがフリー、つまり何にも接続されていないことを意味します (ピンは論理 1 の電位を持つ必要があります)。

したがって、スタビライザーが Celeron の標準の 2 V (後で説明します) ではなく、多かれ少なかれ電圧を生成するようにすることができます (興味深いことに、場合によっては、電圧を下げたときに動作の安定性が向上しました)。

この図は、ソケット プロセッサのピンを示しています。 スロット 1 設計で製造されたプロセッサーの場合、次のピンが電源の識別を担当します。

VID0 VID1 VID2 VID3 VID4
B120 A120 A119 B119 A121

たとえば、VID、VID、VID を接着すると、2.2 V の電圧が得られます。これは、どのオーバークロッカーにとっても十分なはずであり、同時に、プロセッサーが良好な状態で長時間動作するのにもまったく問題ありません。冷却:) つまり、脚の一部を断熱するだけで、ある程度のストレスレベルを簡単に得ることができます。 たとえば、PPGA および SEPP (スロット 1) の場合:

プロセッサーの電源電圧の例
電圧、V どの足を接着する必要がありますか 推奨事項
1.80 ビデオ オーバークロックのファンではない場合は、この電圧を使用して動作中のプロセッサの温度を下げたり、エネルギーを節約したりできます :) (Celeron は標準周波数に応じて 10 ~ 20 W を消費し、これにより 10% の節約になります :) ))
1.90 ビデオ 一般に、1.8 V の電圧の場合と同じことが当てはまります。
2.00 標準電圧 例として挙げると
2.20 VID;VID;VID プロセッサーは発熱することを除けば、問題なく動作するはずです。
2.40 VID;VID;VID それはうまくいくかもしれないし、うまくいかないかもしれません:) (しかし、おそらく前者です)、そしてさらに熱くなります
2.60 ヴィッド;ヴィッド リスクは非常に大きいですが、愛好家は試してみることができます (プロセッサを可能な限りオーバークロックしたい場合)。
2.80 VID;VID;VID 試しないでください。これは単なる例です。

プロセッサへのより強い影響が必要であるため、残りの値を取得するのはより困難です。プロセッサまたはコネクタの対応する接点をグランド(GND)に接続する必要があります。 したがって、たとえば、マザーボード裏面のスロット (またはソケット) の VID と GND のピンを配線とはんだ付けで接続すると、2.05 V の電圧が得られます。ただし、これは危険な操作です。はんだ付けミスや不正確なはんだ付けが行われると、I/O 回路 (3.3B) の電圧が核に影響し、悲惨な結果を招く可能性があります。 ただし、この方法では、プロセッサ コアのテーブル No. 1 から任意の電圧を取得できます。

実際に足を密閉する方法について。 いくつかのオプションがあります。 まず、耐久性のあるワニスを塗布して絶縁することができます。 この方法は通常、非常に強力なワニスでのみ機能します。ソケットに取り付けるときにプロセッサの脚に大きな物理的な力が加わり、絶縁層の破壊につながる可能性があり、その結果、予定外の電圧レベルがコアに到達する可能性があります(たとえば、導体絶縁の場合は 2.2 V ではなく 2.6 V)。 第二に、ソケットプロセッサの場合は単純にそれらを噛みちぎることができ、スロットプロセッサの場合は対応する導体を切断できますが、この方法には後戻りの余地がありません(切断された導体がまだはんだ付けできる場合は、噛み切った脚をはんだ付けするのは困難です)かなり問題あり)。

最も現実的な選択肢は、明らかにプロセッサの脚を密閉することです。 SEPP/SECCタイプのケースの場合は、コンタクトパッドの形状に合わせて慎重にカットしたテープを使用できます。 プロセッサーボードには、各ピンの位置を見つけるのに役立つ刻印があります。 PPGA と FCPGA の場合は、この方法を使用できます。 フッ素樹脂やポリエチレンのフィルム(袋などに使われるフィルム)を直径5mm程度の円形に切り抜きます。 中心が絶縁する必要のある接点のちょうど上に来るように配置されます。 次に、縫い針を使用して、円の端をリードの間に下げます。

通常、取り付け中に問題は発生しませんが、プロセッサーをソケットから取り外すときに問題が発生する可能性があります。フィルムが内部に残り、それを取り除くのはそれほど簡単ではありません(極端な場合、ソケットが分解され、不要なものがすべて取り外される可能性があります)。そこから引き抜かれました:))

写真では、VID レッグが「準備完了」しています。

十分な注意と注意を払えば、必要な操作を非常に簡単に実行できます。

同じ方法は、スロット 1 および FCPGA バージョンの両方で、Pentium II および Pentium III の電源電圧を増減するのにも適しています (もちろん、電圧レベルに関しては適切な変更が必要です)。 Klamath コアと Coppermine コアを備えたプロセッサの場合、電源電圧を上げるには、はんだごてを使用する必要があることを実際に考慮する必要があります。この場合、一部をショートさせずに行うことはできません。接点を接地します (電圧 2.0 V 用に設計されたコアとは異なります)。

また、マザーボードにインストールされているすべての電圧レギュレータが完全にすべてのレベルをサポートしているわけではないことも忘れないでください。 対応するチップは通常、プロセッサ ソケットの近くにあります。 マーキングによってチップの製造元、ひいてはその特性を認識することができます。 電圧レギュレータを製造しているいくつかの会社の住所は次のとおりです。

この記事では、Peter 出版社から出版された Mikhail Guk 著『Pentium II、Pentium Pro、および Simply Pentium Processors』の資料と、Celeron プロセッサに関する Intel の公式ドキュメントを使用しました。

導入。
かなり前から、確実な削減の問題について詳しく議論したいと思っていました。 エネルギー消費現代のパーソナル コンピューターとラップトップ。 多くのユーザーは、当然のことながら、「なぜこれが必要なのでしょうか?」と尋ねます。メーカーは、システムの消費電力に関するすべての複雑な問題をすでに処理しています。ラップトップの場合、これはほとんどの場合当てはまりません。メーカーは依然として何らかの方法でデバイスの消費電力の削減を確実にしようとしていますが、パーソナルコンピュータの場合、原則としてすべてが荒廃した状態にあります。

パソコンの消費電力次の理由により、削減する必要があります。
- ラップトップの電力消費を削減することで、バッテリー寿命を延ばします。
- ラップトップのバッテリー寿命を延ばすことで、バッテリーの充電/放電サイクルを短縮し、耐用年数を延ばします。
- エネルギー消費とともに、ラップトップまたはパーソナル コンピュータのコンポーネントの熱放散が減少するため、一方ではシステムの安定性が向上し、他方では電気製品の耐用年数が延長されます。コンポーネント、
- パソコンやラップトップのエネルギー消費を削減すると、電気代が削減されます。 多くの人にとって、これはまだ重要ではありませんが、電気料金は日に日に上昇しており、政府の政策により国民に電力メーターの設置が義務付けられており、家族内のコンピューターの数は年々増加しており、労働時間は長期化しています。比例した規模で、誰もがエネルギー消費を削減する技術に興味を持っています。

システムのエネルギー消費の主要な要素を特定します。

現代であるにもかかわらず、 パソコンそして ラップトップ互いに大きく異なりますが、原則として、構造は完全に同一です。 メーカーは、最終的な寸法をできるだけ小さくするようにラップトップ内のすべてを配置しようとします。 パーソナル コンピュータはモジュール式システムですが、そのコンポーネントは問題なく交換できます。

画像はクリック可能です --


次の図はコンポーネントを示しています 標準システムユニット。 これらのシステム コンポーネントについての知識があれば、コンピュータの組み立てやアップグレードの段階でも、システムの消費電力を削減できるパラメータを決定できます。 したがって、最新のシステムユニットには次のものが含まれます。
- フレーム、
- パワーユニット、
- マザーボード、

ラム、
- ビデオ カード/ビデオ カード、
- ハードドライブ/ディスク、
- CDドライブ、
- ディスクドライブ、
- カードリーダー、
- プロセッサーとケースの冷却システム。
最近のコンピュータでは、サウンド カードと TV チューナーが別々のバージョンで搭載されていることはほとんどありません。 まず、既存のすべてのマザーボードには、安価なミッドレンジのサウンド カードと比べても音質が劣らないサウンド コントローラーが組み込まれています。 第二に、同軸テレビと同じように、TV チューナーも時代を迎えました。 FulHD、IP-TV、DVB の時代では、TV チューナーについて話す必要はありません。

省エネ: ケースと電源。

多くの人にとって、電源と電源について議論するのは奇妙に思えるかもしれません。 フレーム省エネ技術の文脈で。 ただし、実際には、ユーザーは外観と価格パラメーターに基づいてケースを選択することがよくあります。 小型で通気性の悪いケースは、供給電圧が低下したときにシステムコンポーネントの過熱を引き起こし、同じプロセッサ、RAM、マザーボードの安定性を低下させる可能性があることを理解しておく必要がありますが、これは将来的に行う予定です。

パワーユニットそもそも非効率なエネルギー消費の原因となる可能性があります。 最新の電源は、高電圧電流を 12、5、および 3.3 ボルトに変換する際に高い効率を提供する必要があります。

最新の電源はいずれかのシリーズ規格に準拠しています。 80プラス。 80 Plus 規格は、Energy Star 省エネ規格の 4 回目の改定の一環として 2007 年に採用されました。 この規格は、電源メーカーに対し、さまざまな負荷 (定格電力の 20%、50%、100%) でデバイスの効率 80% を保証することを要求しています。

これは、電源の最大効率を確保するには、定格電力の少なくとも 20% を負荷する必要があることを意味します。 ユーザーが 900 ワットや 1200 ワットの「予備」電源を購入するのは絶対に間違っています。 電源を選択するときは、システムに負荷がかかっていない状態でその負荷が 20% を下回ってはならず、80 Plus 適合証明書が必要であるという事実に基づいてください。

画像はクリック可能です --


公平を期すために、今日の標準は 80プラス次のカテゴリに分類されます。
- 80プラス
- 80 プラス ブロンズ
- 80 プラス シルバー
- 80 プラス ゴールド
- 80 プラス プラチナ。

規格間の違いは、80 Plus 標準ファミリー内でより高い効率が提供されることです。 50% の負荷で 80 Pus 規格の電源が 80% の効率を提供する場合、80 Plus Platinum 規格を満たす高価な電源は 94% 以上の効率を提供します。

省エネ: マザーボード。


現在、マザーボードはプロセッサーの開発に追いつくためにできるだけ早く開発されています。 マザーボードはさまざまなコントローラーのセットで構成されており、その調整された動作を保証することがマザーボードの主なタスクであることを理解する必要があります。 ほとんどの場合、マザーボードの消費電力は、使用されるノース ブリッジとサウス ブリッジのタイプによって異なります。 最新のノースブリッジはエネルギー消費を大幅に削減し、その結果、冷却システムのサイズも縮小しました。 多くのユーザーは、ノースブリッジ冷却システムが冷却ラジエーターに接続された複数のヒート パイプで構成されていた時代を覚えています。 Intel の最新世代のシステム ロジックの登場により、従来のラジエーターのレベルに戻ることができました。

一般的な傾向により、多くの有名なマザーボード メーカー、 ギガバイト, ASUS, MSI展示会で新しい「環境に優しい」製品をデモンストレーションします。 一般に、これらのソリューションの環境への配慮は、システム ユニットの主な消費者であるプロセッサとビデオ カードの電源回路を最適化することによって実現されます。 原則として、これはプロセッサ用の多相電圧安定化装置の使用によって行われます。

モダンな マザーボード、6 ~ 12 個の電圧安定器の電源回路で使用されます。 これらの回路は供給電圧の安定性を大幅に高めますが、消費電力は増加します。 したがって、「環境に優しい」マザーボードのメーカーは、電源システムの負荷が低いときにフェーズの一部をオフにし、プロセッサが 1 フェーズまたは 2 フェーズの電圧安定器によって電力供給されるテクノロジーを搭載しています。

マザーボードを購入するときは、さらに注意する必要があります。 「洗練されたもの」を購入する マザーボード常にエネルギー消費量が増加します。 FireWire ポートがまったく必要ない場合は、追加料金を支払わずに、マザーボード上のコントローラーが使用する電力を毎月支払います。

省エネ: プロセッサー。

大手プロセッサーメーカー AMDそして インテル過去数十年にわたり、同社は製品のエネルギー消費量を削減してきました。 その名誉のために言っておきますが、このリレー全体は AMD によって開始され、AMD は 2 ~ 3 年間強力なリーダーシップを維持しました。 Cool"n"Quiet テクノロジを搭載した AMD プロセッサの消費電力が、Pentium 4 および Pentium D ラインの Intel プロセッサよりも大幅に低かった時期がありました。

インテルはすぐに追いつき、テクノロジーを導入しました EIST- 最新世代のプロセッサーで優れていることが証明されている、強化された Intel SpeedStep テクノロジー。 Intel の新しいプロセッサは、ますます多くの省エネルギー技術を取得し、パフォーマンスが向上していますが、AMD からは大きな進歩は見られません。

ご存知のとおり、パーソナル コンピューターやラップトップの主なエネルギー消費源はプロセッサーであるため、私たちはプロセッサーのエネルギー消費量の削減に重点を置きます。

エネルギー消費を削減する方法を理解するには、それが何に依存しているのかを自分自身で明確に理解する必要があります。 最新のプロセッサのエネルギー消費量は次の要素によって異なります。
- トランジスタに供給される電源電圧から、
- プロセッサの動作周波数。 プロセッサの動作周波数は、その乗数とバス周波数の積から形成されます。

本質的に、テクノロジー クールで静かなそして EISTこれら 2 つのパラメータを正確に活用して、エネルギー消費量の削減に取り組んでいます。 残念ながら、ほとんどの場合、プロセッサの電源電圧ではなく、その周波数で作業する必要があります。 プロセッサーの負荷が減少すると、省エネ技術によりプロセッサー乗数が減少し、それによってプロセッサーの消費電力が削減されます。 プロセッサに負荷がかかると、乗数は以前の値に戻り、プロセッサは何事もなかったかのように動作します。 残念ながら、エネルギー消費を削減するためのこの技術は、常に高いエネルギー効率を達成するとは限りません。 例を挙げて説明しましょう。
例として、公称動作周波数 2.0 GHz の Core 2 Duo プロセッサが選択されました。

画像はクリック可能です --


提示された図から、省電力モードをオンにしないプロセッサの動作温度、公称乗数 x12、電源電圧 1.25 ボルトの場合、アイドル時の動作温度は約 55 ~ 56 度であることがわかります。 。

画像はクリック可能です --


プロセッサに負荷をかけた後、同様の動作条件下で、平均動作温度は約 71 ~ 72 度となり、これが図に記録されました。
中心温度は内部センサーを使用して測定されるため、誤差は最小限に抑えられます。 プロセッサの消費電力と動作温度の間には正比例の関係があるという事実を考慮して、エネルギー効率を評価する際にはこのパラメータに焦点を当てます。
次のステップは、乗数を可能な限り最小値の 6 に下げることでした。同時にプロセッサ周波数は 997 MHz で、これはおおよそ 1 GHz に四捨五入できます。 供給電圧は変わらず、約 1.25 ボルトでした。

画像はクリック可能です --


提示されたデータから、アイドル モードでは、プロセッサの動作温度はほとんど変化せず、以前と同様に 55 ~ 56 度の範囲内に留まっていたことが明らかです。 これは、単にプロセッサ周波数を下げるだけでは得られるものはほとんどないという結論を示唆しています。

画像はクリック可能です --


その後、 に負荷を加えましたが、プロセッサの乗算器と動作電圧は同じレベルのままにしました。 当然のことながら、このようなテストは実用的な観点からのみ重要です。実際に実装することはお勧めしません。 これは、そのパフォーマンスがプロセッサの周波数に依存しており、その後の低周波数での動作のために高周波数プロセッサを購入する人はいないという事実によるものです。 温度値を安定させた後、平均動作温度は 65 ~ 66 度になりました。これは、プロセッサが公称周波数 2 GHz で動作していたときよりも 6 度低くなりました。
これらすべてから、乗数の値を変更することでプロセッサの動作周波数を下げることで確かにエネルギーが節約されることがわかりますが、それはそれぞれの特定のケースで確認したいレベルではありません。 したがって、プロセッサーの電圧を扱い始めます。


当社のプロセッサーとマザーボードを使用すると、プロセッサーの供給電圧を 0.95 ~ 1.25 ボルトの範囲で変更できます。 ステップは 0.0125 ボルトです。 これは、プロセッサがラップトップに搭載されており、そのマザーボードがコンポーネントの動作電圧を広範囲に変更する機会をほとんど提供しないという事実によるものです。
消費電力と熱放散の削減という点でプロセッサの動作電圧を下げる効果を証明するために、プロセッサの動作周波数は 1 GHz のままにしますが、同時に動作電圧を可能な限り低く抑えます。値 - 0.95 ボルト。

画像はクリック可能です --


この操作により、図に示すように、プロセッサのアイドル温度を 45 ~ 46 度に下げることができました。 このモードでは、プロセッサの消費電力を可能な限り低く抑えます。 動作電圧を 0.95 ボルトに下げることで、アイドル動作温度を 10 度下げることができました。

画像はクリック可能です --


プロセッサの動作電圧を下げる方法の有効性を評価するために、プロセッサに負荷を加えました。 その結果、負荷時の動作温度は 50 ~ 51 度でしたが、周波数 1 GHz での電圧および同様のシステム性能を変更しない場合、以前は 65 ~ 66 度でした。 得られたデータは図に記録されます。

プロセッサーの消費電力: 結論

- 上記のすべてから、高い品質を確保するには次のことがわかります。 プロセッサーのエネルギー効率 Intel や AMD の省エネ技術の一環として多くのラップトップやパーソナル コンピュータで行われているように、プロセッサの動作周波数を下げるべきではありません。 プロセッサの周波数を下げると、必ず動作電圧も下がります。

どのプロセッサも次の速度で動作できるという事実を考慮すると、 低電圧動作周波数が低い場合は、動作周波数ごとに最小安定電圧を選択する必要があります。

おおよその労働時間を決定するには ストレスプロセッサの周波数(乗数)ごとに、最大値と最小値をプロットすることによって、周波数に対する最小電圧の直接依存性をプロットするだけで十分です。 これにより、初心者ユーザーにとって作業がはるかに簡単になります。


- プロセッサーに必要なエネルギー効率を確保するには、既存のテクノロジーを正しく構成するか、プロセッサーの周波数と電圧を低負荷時には下げ、負荷が高くなると上げることができるサードパーティ製ソフトウェア製品を使用する必要があります。

CPU 省電力: RightMark CPU クロック ユーティリティ (RMClock)

ユーティリティは軽量です。 250キロバイト。 インストールは必要ありません。選択したフォルダーに解凍して、RMClock.exe ファイルを実行するだけです。 わかりやすくするために、プログラムを含むアーカイブへのリンクを記事の最後に記載します。

この記事を書いている時点での最新の プログラムバージョン2.35には、無料使用の一部として次の機能があります。
- プロセッサのクロック速度制御、
- スロットル制御、
- プロセッサ、プロセッサ コア、
- プロセッサーの動作電圧の制御、
- プロセッサ/プロセッサ コアの温度制御、
- これらのパラメータを継続的に監視し、
- オペレーティング システムからプロセッサの電圧を変更する機能、
- オペレーティング システムからプロセッサの乗数 (周波数) を変更する機能、
- 自動周波数制御と プロセッサ電圧加えられる負荷に応じて。 この概念は「パフォーマンス オン デマンド」または「パフォーマンス オン デマンド」と呼ばれます。

画像はクリック可能です --


ソフトウェア製品を起動すると、そのメニューのいずれかのセクションが表示されます。 RightMark CPU Clock Utility のすべての機能を順番にリストします。 「About」セクションには、開発者、その Web サイト、および使用許諾契約へのリンクに関する情報が表示されます。 製品の基本バージョンは非営利目的の場合は無料で、登録は必要ありません。 システム設定のためのより幅広い機能を提供するプロフェッショナル バージョンがあり、価格は象徴的な 15 ドルです。 初心者ユーザーにとっては、基本バージョンの機能で十分です。

画像はクリック可能です --


「ブックマーク」に 設定「使いやすいようにプログラム設定が表示されます。残念ながら、製品の以前にリリースされたバージョンに含まれていたロシア語言語パックは、今回の場合は利用できませんでしたが、心配する必要はありません。このタブでは、デザインの色と、自動実行モードにご注意ください。

「autorun」サブセクションは自動実行モードを担当します。 起動オプションオペレーティング システムのロード時に RightMark CPU クロック ユーティリティが自動起動されるため、コンピュータの BIOS に干渉することなく、省エネの問題をできるだけ簡単に解決できます。これは、BIOS に動作電圧とプロセッサを変更するためのオプションが提供されていない場合に特に便利です。これは最新の BIOS ラップトップに搭載されています。

チェックボックスをオンにすると、 システムトレイに最小化して起動します「次回起動するときにプログラム ウィンドウを常に閉じる必要がなくなります。自動的に起動した後、事前に最小化してタスクを実行します。

段落「 Windows 起動時に実行:" を使用すると、ソフトウェア製品の自動起動を設定し、その方法を選択できます。この場合、レジストリを介して自動起動を実行しますが、スタートアップ フォルダーを介して自動起動するオプションもあります。どちらのオプションも機能します。 Windows XP から Windows 7 まで、素晴らしいです。

必要なプロセッサ動作パラメータを記録することができます。 ログファイル。 このパラメータは、システム動作が不安定な原因を特定するために必要になる場合があります。

画像はクリック可能です --


「ブックマーク」に CPU情報「」では、プロセッサーとその現在の特性に関する情報が提供されます。サポートされている省エネテクノロジーがリストされています。プロセッサーが最新のものであるほど、サポートされるテクノロジーが増えます。

画像はクリック可能です --


「ブックマーク」に 監視「」は、プロセッサ コアの動作周波数、スロットリング、負荷、乗数、動作電圧、温度の変化を示す図です。タブの数はプロセッサ コアの数に対応しています。

画像はクリック可能です --


「タブ」で 管理「ユーザーには、乗算器を切り替える方法、プロセッサの実際の負荷を決定する方法、およびソフトウェア製品とオペレーティング システムの省エネ技術を統合する方法を選択する機会が与えられます。

段落「 P ステート遷移メソッド「」を使用すると、指定された乗算器と電圧の組み合わせを別の組み合わせに変更する方法を選択できます。次の選択オプションが利用可能です。
- シングルステップ: 乗数は 1 に等しいステップで切り替わります。 つまり、係数 10 から係数 12 に移行する場合、常に 11 の中間リンクが存在します。
- マルチステップ: トランジションは可変ステップで実行されます。 この例の場合、10 からすぐに 12 になります。

段落「 マルチCPU負荷計算"を使用すると、プロセッサの負荷を決定する方法を決定できます。このパラメータは、プロセッサ上の乗算器と電圧の組み合わせを切り替える速度に影響します。いずれの場合も、ユーザーの個々の特性に基づいて選択されます。通常は選択しません。このパラメータを変更し、画面に表示された値のままにします。これは、いずれかのプロセッサ コアの最大負荷に基づいて評価が実行されることを意味します。

段落「 スタンバイ/休止状態アクション" を使用すると、休止状態またはスリープ モードに入るときにプログラムが行う動作を選択できます。原則として、現在の動作プロファイルをそのままにするだけで十分です。

「」の章では、 CPUのデフォルト設定」には次の項目が表示されます。
- 管理がオフになったときに CPU をデフォルトに戻すと、「電源管理なし」モードを選択した後にプロセッサーの元のパラメータに戻すことができます。
- アプリケーション終了時に CPU のデフォルトを復元します。これにより、RightMark CPU クロック ユーティリティをオフにした後、プロセッサーの元のパラメータに戻すことができます。

「CPU デフォルトの選択」セクションでは、プロセッサーの乗数と電圧の組み合わせを決定する方法を選択します。
- CPU 定義のデフォルト P ステート、プロセッサーによって決定される組み合わせ、
- P ステートは起動時に検出され、組み合わせはプログラムのロード時に決定されます。
- カスタム P ステート、組み合わせは手動で設定されます。

段落「 OS の電源管理統合を有効にする「」を使用すると、「RMClock Power Management」と呼ばれるシステム電源図にプロファイルを作成できます。

画像はクリック可能です --


「」の章では、 プロフィール「ユーザーは、同じ乗算器と電圧の組み合わせ、つまり P ステートを設定するように求められます。まず、ネットワークまたはバッテリー/UPS などの電力消費モードに応じてプロファイルを選択することが提案されます。

以下から選択できます CPU乗数そして、それぞれの特定のケースにおける彼らのストレス。 通常、次の 3 つの値を選択します。
- 最小乗算器とその最小電圧、
- 最大乗算器とその最小動作電圧、
- 乗算器の平均値とその電圧は、最大値と最小値に基づいてプログラム自体によって設定されます。

原則として、このアプローチはほとんどのラップトップおよびパーソナル コンピュータに適しています。 もちろん例外もあり、ユーザーは各乗算器の最小電圧を選択するのに長い時間を費やす必要があります。

画像はクリック可能です --


次に、次のボックスにチェックを入れます 選択されたプロファイル対応するタイプのプログラム操作では、次のようになります。
- 管理不要 - 管理不要、設定不要
- 「省電力」、「最大パフォーマンス」、「パフォーマンス オンデマンド」タブは基本的に同等であり、プロセッサ電圧乗数を変更する範囲を設定できます。

たとえば、タブの場合は「 省エネ「可能な限り最小の乗数と電圧を選択しました。[最大パフォーマンス] タブでは、特定のプロセッサ周波数での最大乗数と最小動作電圧です。

「オンデマンドのパフォーマンス」セクション オンデマンドのパフォーマンス「私たちは 3 つの乗算器と電圧の組み合わせを選択しました。
- x4-0.95ボルト
- x9-1.1ボルト
- x12-1.25ボルト。

画像はクリック可能です --


次に、プログラムデスクトップの通知領域にあるアイコンの上にマウスを置きます。 RightMark CPU クロック ユーティリティ常に表示される必要なプロセッサ パラメータを選択し、現在の動作プロファイルを選択します。 私は常にプロセッサの周波数とその動作温度を監視するように設定していますが、これは常に便利であり、少し興味深いものです。

画像はクリック可能です --


図は次のことを示しています 3つのピクトグラムデスクトップ通知領域:
- RightMark CPU Clock Utility プログラムのアイコン、
- 現在のプロセッサ周波数、
- 現在の温度。

画像はクリック可能です --


スクリーンショットは、「」で動作するプロセッサの図を示しています。 オンデマンドのパフォーマンス「プロセッサの負荷が増加すると、ソフトウェア製品がその乗数と電圧を段階的に、最初は 9 ~ 1.1 ボルトまで、必要に応じて最大で 12 ~ 1.25 ボルトまで増加させる様子がわかります。負荷が低下するとすぐに、 、すべてが段階的に戻ります。
このような調整は、システムの最終的なパフォーマンスには実質的に影響を与えません。

画像はクリック可能です --


「タブ」で バッテリー情報「ラップトップのバッテリーの状態に関する通知方法を選択することが提案されています。

「タブ」で 高度な CPU 設定「ポーリングするプロセッサ温度センサーと有効にする省エネ技術を選択することが提案されています。
これらの省エネ技術はすべてウェブサイトで説明されています インテル。 原則として、これらをオンにしてもシステムの安定性に影響はない、ということを言いたいだけなので、なぜそれらをオンにしてもよいのでしょうか?

当社のプロセッサは初期のプロセッサ ファミリに属します コア2デュオ。 最新のプロセッサは、我が国では普及していないテクノロジーをサポートしています。
- インテル ダイナミック アクセラレーション (IDA) を利用する
- 動的 FS​​B 周波数切り替え (DFFS) を有効にする

初のテクノロジーこれにより、プロセッサは、2 番目のコアに負荷がかかっていないときに、1 つのコアの乗数を増やすことができます。 たとえば、2 つのプロセッサ コアは 2.2 GHz の周波数で動作します。 プロセッサーは、負荷が 1 つのコアのみに適用されると推定し、その場合は乗数が増加し、2.4 GHz の周波数で動作を開始します。 このテクノロジーは興味深いものですが、オーバークロックされたプロセッサーでは危険です。

第二の技術アイドル モードでのプロセッサの動作周波数をさらに大幅に下げることができます。 前に、最終的なプロセッサ周波数は常に乗数とシステム バス周波数の積であると述べました。 DFFS テクノロジーを使用する最新の Intel プロセッサーでは、乗数の値だけでなくバス周波数も下げることができるため、さらに低い周波数を実現できます。 このテクノロジは、RAM が不安定になる可能性があるため、オーバークロックされたプロセッサにとっても危険です。

画像はクリック可能です --


おそらくこれが、このソフトウェア製品について伝えたかったすべてです RightMark CPU クロック ユーティリティ。 今後もその更新情報に従うことをお勧めします。 同時に、何ヶ月もの間、すべてが安定して動作しているときに更新するのは意味がありません。 プロセッサを変更したり、より最新のオペレーティング システムにアップグレードしたりする場合は、新しいバージョンを探すのが合理的です。
プログラムの使用 RightMark CPU クロック ユーティリティこれにより、プロセッサーだけでなく、マザーボードの電源システムの寿命も最大限に延ばすことができ、また、プロセッサー冷却システムからのノイズも大幅に低減できるため、入力、映画鑑賞、スクロール時に冷却に負担がかかりません。インターネット上のページを通じて。

プロセッサーの消費電力: 最小動作電圧の決定

私の記事の中で、最低限の金額を決めることが重要であると繰り返し指摘しました。 動作電圧プロセッサ周波数ごとに。 これは試行錯誤を通じて行われます。 通常、次のタスクのサイクルが順番に実行されます。
- 電圧を 1 ポイント下げる、
- ストレステストソフトウェア製品でのプロセッサの安定性のチェック、
- ストレステストの結果に応じて、電圧を 1 ポイントずつ増減します。

プロセッサーのストレス テストに使用できるソフトウェア製品が多数あります。 これらについては、私たちの記事の 1 つで説明しました。 その中で最も価値があるのは Prime95 プログラムだと私は信じています。 記事の最後にリンクを記載します。 完全に無料で、オンラインでダウンロードできます。

画像はクリック可能です --


その最新バージョンは 2008 年にリリースされ、ちょうどマルチコア テストの導入が必要になったときにリリースされました。 さまざまなテスト方法を選択し、テスト期間、テスト頻度などを指定することができます。

画像はクリック可能です --


「」セクションでテスト方法を選択します。 オプション"=> "拷問テスト" そしてそれを実行します。テストの期間は完全にあなた次第です。原則として、おおよその最小電圧を決定するとき、私は最初のエラーを待つか、テストを 30 分間実行します。テストが 30 分の場合は、エラーなしで合格した場合は、電圧を 1 ポイント下げて再度続行します。
最低限のものを決めたら 電圧最後に、テストを一晩放置することは理にかなっています。 数時間の骨の折れる作業のうちに、ほとんどの場合、発生したエラーを特定することが可能です。
多くの場合、オペレーティング システムがフリーズするか、よくても「」と表示されます。 死のブルースクリーンこれは、電圧が低すぎてエラーが発生したことを示しています。この周波数ではプロセッサの動作電圧を上げる必要があります。

画像はクリック可能です --


私たちの場合、最小動作電圧を決定しました。 私たちのプロセッサー。 結局のところ、最大周波数が 2 GHz であるため、プロセッサは 1.25 ボルトをまったく必要としません。 1.00ボルトでも非常に安定して動作します。 オペレーティング システムの安定性は 0.975 ボルト モードでも検出されましたが、Prime95 は電圧を 1.00 ボルトに上げると消えたエラーを報告しました。

その結果、

:
- 一定レベルのパフォーマンスと 2 GHz の動作周波数を備えたプロセッサ、
- 負荷時の最大動作温度は、通常の 72 度ではなく、62 ~ 63 度です。
- 消費電力が低いため、Acer、Asus、Samsung、Gigabyte の電力消費方式を使用せずに、パフォーマンス レベルを損なうことなくラップトップのバッテリ寿命を最大化できます。
- 消費電力が低いと、特に上記の RightMark CPU クロック ユーティリティ ソフトウェアでこれらの値を指定した場合、電気代が削減されます。

実際には、オーバークロッカー向けのプロセッサーのこのような低い動作電圧は、常に 1 つのこと、つまりオーバークロックの可能性の高さを物語っています。 ただし、オーバークロックの微妙な違いについては別の記事で説明する予定です。プロセッサーのオーバークロックのトピックは、省エネルギーのトピックを超えています。 結論。
この記事を読んだ後、ユーザーは次のような疑問を抱くはずです。「メーカーは本当に無能で、プロセッサの動作電圧を、特にラップトップではこれが非常に重要であるにもかかわらず自ら下げないのだろうか?」 答えは簡単で、プロセッサは大量生産され、ラップトップも組み立てラインから出てくるという事実にあります。 製造プロセスを遅らせることはメーカーの利益にならないので、ある人は幸運で、そのプロセッサが奇跡のオーバークロックを見せますが、他の人はこれを拒否し、他の人にとってはプロセッサは1.175ボルトの電圧で動作しますが、他の人にとってはそれが可能です0.98ボルトでも安定しています。 電化製品を買うのはいつも宝くじです。 それぞれの具体的なケースにおいて、ラベルの下に何が隠されているかは、実践を通じてのみ学ぶことができます。
最後に、ソフトウェア開発者に感謝したいと思います。 RightMark CPU クロック ユーティリティそして プライム95、私たちのポータル MegaObzor は名誉の金メダルを授与しました。 ご質問をお待ちしております。また、電子機器を使用するすべての作業は、ご自身の危険とリスクのもとで行われることを忘れないでください。

RightMark CPU クロック ユーティリティで見つけることができます。
記事内で紹介されているプログラム プライム95で見つけることができます。