Ryzen9 5950XでのPBOとCOの効果
これまでの記事
Ryzen9 5950Xの準備編
Ryzen9 5950Xで自作PC (組み立て)
Ryzen9 5950Xのメモリ設定
Ryzen9 5950XでのPBOとCOの効果
Ryzen9 5950Xでベンチマーク
Ryzen9 5950Xのメモリ・キャッシュ帯域
Ryzenシリーズには、熱などの環境の許す限り自動でオーバークロックしてパフォーマンスを引き上げるPBO(Precision Boost Overdrive)が搭載されている。
一方、今回の5000番台では従来のPBOに加えてCO(Curve Optimization)という新機能を追加したPBO2にバージョンアップされている。
そこで、5950XでPBO2の設定を行って性能がどう伸びていくのか、そのとき電圧やクロックはどう変化しているかを確認してみた。
CPUをオーバークロックするには、普通にクロックと電圧を指定していく方法もあるが、その場合にはシングルスレッド時のブーストが効かなくなってしまうので、シングルスレッド実行時の性能が犠牲になってしまう。PBOであれば、シングルスレッド実行時のブーストも問題なく効くので、シングルスレッド実行時の性能とマルチスレッド実行時の性能を両立できる。
PBOでは、CPUの温度や電流、消費電力の制限の中でブースト幅が決まっており、基本的にはCPUが冷えているほどクロックがあがるような仕組みになっている。基本的には、高クロック動作にはより高い電圧が必要となるので、より消費電力(≒発熱)が増加してCPU温度があがっていき、温度あるいは消費電力・電流によりどこかでブーストの限界に達する。
この時重要なのがどのくらいのクロックがどのくらいの電圧で回るかということだけど、PBOでは電圧の設定は基本的には自動でCPUが行う感じにとなっていた。
これに対して、PBO2のCO(Curve Optimization)では、電圧の引き下げ幅が設定可能となっていて、限界近くまで電圧を下げるようなことが可能になっている。電圧の引き下げに耐え切れず不安定になってしまうこともあるが、もし電圧を引き下げても問題なく動作可能であれば、低電圧化の効果で消費電力(≒発熱)が下がったぶん、より高いクロックで動作することが可能になって、性能が上がるという仕掛けになっている。
PBO2はUEFI中から設定することができ、[Settings] > [AMD Overclocking] > [Precision Boost Overdrive]で設定可能となっている。
[Precision Boost Overdrive]の中でPBOの細かい設定が可能。PBO Limitsを「Manual」とすると、PBOでの電力(PPT)と電流(EDC, TDC)の上限を指定できる。
PBO Limitsについては「Motherboard」という設定もあり、マザーボードの決めている上限値を読み込むことができるようになっている。うちのB550 AORUS Masterでは、PPT=1260W, TDC=700A, EDC=215Aと、EDC以外はなかなかぶっとんだ値が設定された。
[クリックで拡大]
Curve Optimization(CO)についてはこれを選択すると、全コアについて同じ値を設定したり、各コアそれぞれについて値を設定することも可能になっている。
Curve Optimization(CO)では、「Sign」で電圧を上げるか下げるか、「Magnitude(カウント)」という値で電圧の変更幅を設定可能となっている。電圧下げの場合には「Sign」を「Negative」に設定して「Magnitude」をいじっていく感じになる。「Magnitude」は1カウントあたり3~5mV程度らしい。
コアごとに設定する場合には、Ryzen Masterの☆や〇がついているコアには控えめな値を設定するのがよいらしい。
[クリックで拡大] (C04, C07が特性の良いコアらしい)
Ryzen CPUでは、CPUからCPPCで通知される特性の良いコア(= ☆や〇がついているコア)にOSが優先してタスクを振るようになっていているので、使用コア数が少ない時には特にこれらのコアが使われることになり、ブーストが強くかかる。このとき、COを強くしすぎると不安定になってしまうようで、実際試してみても☆や〇がついているコアのCOを強くしすぎると、確かにシステムが不安定になってしまうきらいがあった。
実際にPBO周りの設定を変えていろいろテストした結果がこちら。性能についてはCinbench R20を中心に時折、R23を回して性能が上がっているか下がっているかをチェックしている。
1. が 定格、
2. が PBOを有効にしたもの、
3. 以降が PBO+COのテスト
となっている。
定格ではCinebench R20 MTのスコアが10510 (テスト1)であるところ、PBOを有効にして電力枠を引き上げることで11375まで伸び (テスト2)、その後CO等を細かく調整したところ11747まで伸びた(テスト10)。
テスト10についてはOCCTで1時間負荷をかけても安定して動作していて、よさげな感じ。
一方、今のところ、☆のコアの下限は-10、その他のコアの下限は-25で、これ以上引き下げてしまうと不安定になってしまうようだ。(テスト8, テスト11)
Cinebench R23のMTテストを実行中のCPUのクロック(右軸:Average Effective Clock)と温度(左軸:CPU (Tctl/Tdie))をHWInfo64で確認したのがこちら。
・Default: 定格 (テスト1)
・PBO: PBOのみ有効 (テスト2)
・PBO+CO: PBO+COで一番良かったもの (テスト10)
定格では4000MHz程度で動作していて、この時の温度が55℃~60℃と280mmな簡易水冷なだけはあって非常によく冷えていた。この状態ならファンの回転数も控えめでよく非常に静かだった。いろいろ冷却に気を使っただけのことはあったみたい。このぐらいならよく言われているように空冷でも十分冷えそう。
PBOを有効にしてPPT等を引き上げることで、4375MHz程度での動作となり、CPU温度が80℃とそれなりに高くなった。80℃を超えてくるとブーストクロックが抑えられる印象。
PBO2でCOを有効にすると、動作クロックが4500MHz程度まで上がる一方で、CPU温度は少し下がって75℃~78℃前後になっていて、電圧引き下げの効果が確認できる。
Cinebench R23のMTテストを実行中のCPUのクロック(右軸:Average Effective Clock)と電圧(左軸:CPU Core Voltage)をHWInfo64で確認したのがこちら。
定格では[email protected]前後なのが、PBOでは[email protected]前後、PBO+COで[email protected]前後になっている。
COの設定で低電圧化しつつクロックが引き上げられていて、これが性能の向上とCPU温度の低下(=消費電力の低下)に貢献しているようだ。
COによる低電圧化により消費電力を抑制してCPU温度を抑えつつ、性能を向上させることができた。
CPU温度が低いほどブーストしやすい傾向にあるので、PBO2のCOを使った低電圧化によって消費電力が抑えられるとその分さらにブーストする余地が生まれ、より高い性能が引き出せるようになっている。
PBOはシングルスレッド性能とマルチスレッド性能を両立させながらオーバークロックできる素晴らしい機能だが、電圧周りの自由度が少なかったことが難点だったけど、PBO2ではCOという機能によって低電圧化を試せるようになっていて、どこまで安定して動作するか試行錯誤する手間はあるものの、非常に面白い機能だと思う。
Ryzen9 5950X 記事一覧
Ryzen9 5950Xの準備編
Ryzen9 5950Xで自作PC (組み立て)
Ryzen9 5950Xのメモリ設定
Ryzen9 5950XでのPBOとCOの効果
Ryzen9 5950Xでベンチマーク
Ryzen9 5950Xのメモリ・キャッシュ帯域
Ryzen9 5950Xの準備編
Ryzen9 5950Xで自作PC (組み立て)
Ryzen9 5950Xのメモリ設定
Ryzen9 5950XでのPBOとCOの効果
Ryzen9 5950Xでベンチマーク
Ryzen9 5950Xのメモリ・キャッシュ帯域
Ryzenシリーズには、熱などの環境の許す限り自動でオーバークロックしてパフォーマンスを引き上げるPBO(Precision Boost Overdrive)が搭載されている。
一方、今回の5000番台では従来のPBOに加えてCO(Curve Optimization)という新機能を追加したPBO2にバージョンアップされている。
そこで、5950XでPBO2の設定を行って性能がどう伸びていくのか、そのとき電圧やクロックはどう変化しているかを確認してみた。
CPUをオーバークロックするには、普通にクロックと電圧を指定していく方法もあるが、その場合にはシングルスレッド時のブーストが効かなくなってしまうので、シングルスレッド実行時の性能が犠牲になってしまう。PBOであれば、シングルスレッド実行時のブーストも問題なく効くので、シングルスレッド実行時の性能とマルチスレッド実行時の性能を両立できる。
PBOでは、CPUの温度や電流、消費電力の制限の中でブースト幅が決まっており、基本的にはCPUが冷えているほどクロックがあがるような仕組みになっている。基本的には、高クロック動作にはより高い電圧が必要となるので、より消費電力(≒発熱)が増加してCPU温度があがっていき、温度あるいは消費電力・電流によりどこかでブーストの限界に達する。
この時重要なのがどのくらいのクロックがどのくらいの電圧で回るかということだけど、PBOでは電圧の設定は基本的には自動でCPUが行う感じにとなっていた。
これに対して、PBO2のCO(Curve Optimization)では、電圧の引き下げ幅が設定可能となっていて、限界近くまで電圧を下げるようなことが可能になっている。電圧の引き下げに耐え切れず不安定になってしまうこともあるが、もし電圧を引き下げても問題なく動作可能であれば、低電圧化の効果で消費電力(≒発熱)が下がったぶん、より高いクロックで動作することが可能になって、性能が上がるという仕掛けになっている。
PBO2はUEFI中から設定することができ、[Settings] > [AMD Overclocking] > [Precision Boost Overdrive]で設定可能となっている。
[Precision Boost Overdrive]の中でPBOの細かい設定が可能。PBO Limitsを「Manual」とすると、PBOでの電力(PPT)と電流(EDC, TDC)の上限を指定できる。
PBO Limitsについては「Motherboard」という設定もあり、マザーボードの決めている上限値を読み込むことができるようになっている。うちのB550 AORUS Masterでは、PPT=1260W, TDC=700A, EDC=215Aと、EDC以外はなかなかぶっとんだ値が設定された。
[クリックで拡大]
Curve Optimization(CO)についてはこれを選択すると、全コアについて同じ値を設定したり、各コアそれぞれについて値を設定することも可能になっている。
Curve Optimization(CO)では、「Sign」で電圧を上げるか下げるか、「Magnitude(カウント)」という値で電圧の変更幅を設定可能となっている。電圧下げの場合には「Sign」を「Negative」に設定して「Magnitude」をいじっていく感じになる。「Magnitude」は1カウントあたり3~5mV程度らしい。
コアごとに設定する場合には、Ryzen Masterの☆や〇がついているコアには控えめな値を設定するのがよいらしい。
[クリックで拡大] (C04, C07が特性の良いコアらしい)
Ryzen CPUでは、CPUからCPPCで通知される特性の良いコア(= ☆や〇がついているコア)にOSが優先してタスクを振るようになっていているので、使用コア数が少ない時には特にこれらのコアが使われることになり、ブーストが強くかかる。このとき、COを強くしすぎると不安定になってしまうようで、実際試してみても☆や〇がついているコアのCOを強くしすぎると、確かにシステムが不安定になってしまうきらいがあった。
実際にPBO周りの設定を変えていろいろテストした結果がこちら。性能についてはCinbench R20を中心に時折、R23を回して性能が上がっているか下がっているかをチェックしている。
1. が 定格、
2. が PBOを有効にしたもの、
3. 以降が PBO+COのテスト
となっている。
テスト | CinebenchR20 | CinebenchR23 | PBO | CO | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
MT | ST | MT | ST | Offset | PPT | TDC | EDC | ☆ | 〇 | Other | ||
1 | 10510 | 644 | 26619 | 1650 | Disabled | - | - | - | - | - | - | - |
2 | 11375 | 636 | 29255 | Enabled | 0 | 220 | 180 | 215 | 0 | 0 | 0 | |
3 | 11646 | 641 | 0 | -5 | -10 | -20 | ||||||
4 | 11582 | 636 | 150 | |||||||||
5 | 11629 | 100 | -10 | -15 | -25 | |||||||
6 | 11655 | 150 | ||||||||||
7 | 11633 | 200 | ||||||||||
8 | 不安定 | -15 | -20 | -30 | ||||||||
9 | 11702 | 634 | 205 | 150 | 200 | -10 | -15 | -25 | ||||
10 | 11747 | 643 | 30186 | 1648 | 200 | 150 | 190 | |||||
11 | 不安定 | -15 | -18 | -25 |
定格ではCinebench R20 MTのスコアが10510 (テスト1)であるところ、PBOを有効にして電力枠を引き上げることで11375まで伸び (テスト2)、その後CO等を細かく調整したところ11747まで伸びた(テスト10)。
テスト10についてはOCCTで1時間負荷をかけても安定して動作していて、よさげな感じ。
一方、今のところ、☆のコアの下限は-10、その他のコアの下限は-25で、これ以上引き下げてしまうと不安定になってしまうようだ。(テスト8, テスト11)
Cinebench R23のMTテストを実行中のCPUのクロック(右軸:Average Effective Clock)と温度(左軸:CPU (Tctl/Tdie))をHWInfo64で確認したのがこちら。
・Default: 定格 (テスト1)
・PBO: PBOのみ有効 (テスト2)
・PBO+CO: PBO+COで一番良かったもの (テスト10)
定格では4000MHz程度で動作していて、この時の温度が55℃~60℃と280mmな簡易水冷なだけはあって非常によく冷えていた。この状態ならファンの回転数も控えめでよく非常に静かだった。いろいろ冷却に気を使っただけのことはあったみたい。このぐらいならよく言われているように空冷でも十分冷えそう。
PBOを有効にしてPPT等を引き上げることで、4375MHz程度での動作となり、CPU温度が80℃とそれなりに高くなった。80℃を超えてくるとブーストクロックが抑えられる印象。
PBO2でCOを有効にすると、動作クロックが4500MHz程度まで上がる一方で、CPU温度は少し下がって75℃~78℃前後になっていて、電圧引き下げの効果が確認できる。
Cinebench R23のMTテストを実行中のCPUのクロック(右軸:Average Effective Clock)と電圧(左軸:CPU Core Voltage)をHWInfo64で確認したのがこちら。
定格では[email protected]前後なのが、PBOでは[email protected]前後、PBO+COで[email protected]前後になっている。
COの設定で低電圧化しつつクロックが引き上げられていて、これが性能の向上とCPU温度の低下(=消費電力の低下)に貢献しているようだ。
COによる低電圧化により消費電力を抑制してCPU温度を抑えつつ、性能を向上させることができた。
CPU温度が低いほどブーストしやすい傾向にあるので、PBO2のCOを使った低電圧化によって消費電力が抑えられるとその分さらにブーストする余地が生まれ、より高い性能が引き出せるようになっている。
PBOはシングルスレッド性能とマルチスレッド性能を両立させながらオーバークロックできる素晴らしい機能だが、電圧周りの自由度が少なかったことが難点だったけど、PBO2ではCOという機能によって低電圧化を試せるようになっていて、どこまで安定して動作するか試行錯誤する手間はあるものの、非常に面白い機能だと思う。
Ryzen9 5950X 記事一覧
Ryzen9 5950Xの準備編
Ryzen9 5950Xで自作PC (組み立て)
Ryzen9 5950Xのメモリ設定
Ryzen9 5950XでのPBOとCOの効果
Ryzen9 5950Xでベンチマーク
Ryzen9 5950Xのメモリ・キャッシュ帯域