ニュース
Ryzen 5000、まだ本気を出していなかった。新しい最適化機能で性能をさらに引き上げ
2020年11月25日 11:19
AMDは、Ryzen 5000シリーズに対応したAMD 500/400シリーズマザーボード向けに、自動クロック/電圧調整技術「Precision Boost Overdrive 2」(PBO2)に対応したアップデート「AGESA 1.1.8.0」を配信開始した。12月よりマザーボードメーカーがBIOS更新を順次配信される見込み。
Precision Boost Overdrive(PBO)は、これまでのRyzenにも搭載してきた技術。プロセッサの温度やVRM電流、パッケージ全体の電力に応じて、VRMが供給できる容量限界を引き上げ、電圧とクロックを高め、プロセッサの性能を最大限に引き出すものとなっている。
ただ、PBOでは軽負荷状態時の電圧はそのままである。1つのコアに高負荷が集中している場合、そのコアの電圧とクロックを高めても、ほかの軽負荷状態のコアの消費電力は変わりない。Ryzenでは複数のコアが1つのパッケージ電力と温度キャパシティを共有しているため、軽負荷状態のコアもある程度のパッケージ電力と温度キャパシティを消費していて、高負荷コアと食い合う事態となっていた。
そこでPBO2では、この軽負荷状態になっているコアの電圧を下げる「アンダーボルテージ」をサポート。軽負荷状態のコア消費電力を削減するとともに、高負荷が集中しているコアに余った電力と温度のキャパシティを回すことができ、性能をさらに高められるようになった。
一般的にCPUは、ある程度動作電圧に余裕をもって出荷される。プリセットされた電圧に対し、若干余裕があり、一般的に負荷が低ければ低いほど--つまりクロックが低ければ低いほど--さらに電圧を下げられる場合が多い。
ところが、一般的なアンダーボルテージでは“最悪なケース”を想定してまとめて設定されていて、軽負荷時には無駄になっていた。さらに、コアごとの耐性のばらつきや、ユーザーが実際に装着するCPUクーラーの違いによる温度の違いもあって、CPU出荷時に決めるのは難しい。
そこでPBO2では「Curve Optimizer」という機能を実装し、高負荷と軽負荷の両方に耐えられるようにし自動的に電圧を調整するようになった。つまり高負荷時(高クロック)の電圧低下を抑えつつ、低負荷時(低クロック)はアグレッシブに電圧を落とす、というわけだ。
PBO2におけるこのCurve Optimizerの設定はBIOSで行なう。アンダーボルテージの設定はmV(ミリボルト)単位ではなく、「counts」単位で行なう。1countは3~5mVのあいだで可変となっており、ユーザーは±30countsの範囲(一例として-30countsは90~150mV相当になる)で設定が行なえる。Curve Optimizerはコアごとに対しても、全コア一括に対しても設定でき、実際に電圧を落とす必要かあるかどうかの判断を行なうアルゴリズムも実装される。
ちなみにRyzenでは、高クロックを低電圧で駆動できるコアを自動的にRyzen Master上で2つ選別する「Best Cores」を実装しているが、このCurve Optimizerを利用することで決定されるBest Coresのランクが変わる可能性があるという。
同社の計測によれば、Ryzen 9 5900Xにおいて、+200MHzのBoostクロック上書き設定と、PBO2をオンに設定した場合、なにも設定しない状態と比較し、Cinebench R20のシングルスレッドCPU計測スコアで2%、同マルチスレッド計測で10%ほど向上が見られたとしている。マルチスレッドでも性能が改善しているのは、低電圧による最適化により温度と電力のヘッドルームが生まれ、さらなるクロック向上が可能になったからだとみられる。