Radeonをより効率良く使えるかどうか。
より安定して使う為に
先日、当Blogにコメントを戴いたので、取り上げてみた。
以前から話だけは知っていたのだが、AMDのビデオカードはサーマルスロットリングの管理があまりよろしくなく、設定した電圧をかけた時の発熱によって熱を帯び、その熱に反応して動作クロック上昇を抑制してしまったりする事があるらしい。
これは最近の、負荷がかけられる時はオーバークロック動作し性能を向上させる、という機能の行きすぎた結果なのだが、この制御が上手くいけば長時間に渡ってオーバークロック状態が続き、性能が向上する事になる。
しかし、通常動作の時の温度が高めだと、このオーバークロック動作が始まるタイミングを失ったり、或いはオーバークロックしてもすぐにクロックを抑制し始めたりしてしまい、性能が伸び悩んだりする。
その結果、Radeon系はこのサーマルスロットリングの制御が問題で、ワットパフォーマンスが悪い製品という位置付けになってしまっているというのである。
このあたり、NVIDIAは非常に上手くコントロール出来ていて、もともとワットパフォーマンスが良いところにちゃんとした制御が加わるので、性能の伸びが違うのである。
それに気付いた一部の人が、Radeonの通常動作電圧をわざと下げた結果、通常よりも性能が向上した、と言い出したのである。
つまり、通常電圧が下がることで、通常時の発熱量が抑えられ、オーバークロックを始めるタイミングが安定し、性能がちゃんと出たというのである。
通常、稼働電圧を下げて性能が上がるなんて事はあり得ない話なのだが、イマドキのCPUやGPUのこうしたオーバークロック動作の仕組みが、電圧を下げても最終的には性能が向上するという矛盾を成立させてしまったわけである。
個体差はある
なので、GPUの通常稼働電圧を下げれば、性能が向上する可能性がある。
但し、これは個体差がある話なので、全ての人が実践できるという話しではない。
シリコンウェアを切り出して製造する現在の半導体は、そのシリコンウェハの素性の良い部分に当たれば低電圧でも高い動作クロックで動作してくれるが、素性の悪い部分に当たると低電圧では動作クロックが伸び悩んだりする。
メーカーはその丁度良いところを見つけて、製品全体の安定動作する稼働電圧を設定するのだが、もしシリコンウェハの素性の良いところに当たっている人であれば、電圧を下げても高クロック動作する可能性があるので、前述のようなミラクルが起きる。もし運悪く素性の悪い部分に当たると、規定電圧以下では動作しなかったりするので、個体差が生まれるというワケである。
俗に言う「オーバークロック耐性がある」という言葉は、まさにこのシリコンウェハの素性の良いところに当たったという事を意味する。
なので、Radeon VIIでも前述のようなサーマルスロットリング問題があるのなら、良い個体に当たった人は稼働電圧を下げてみれば、場合によっては性能が向上する、というワケである。
まぁ…一番いいのは、今よりずっと冷える冷媒を使ってRadeon VIIを冷やしてやれば、そもそもサーマルスロットリング問題を発生させないという事になるのだが。
Whatmanで設定
Radeonシリーズは、AMDが配布しているRadeon Settingというドライバ&ユーティリティで結構細かい設定変更が出来るのだが、今回のこの電圧の変更もRadeon Settingで変更する。
このRadeon Settingの中のWhatmanと呼ばれる機能で電圧を手動に切り替えたり、或いは省電力型に自動設定にしたりと設定を変更できる。
今回のようなサーマルスロットリング問題に対応させる場合は、手動で電圧をちまちま下げていくしかない。
ここで、ゲームなどが稼働するギリギリの電圧まで下げてみて、具体的にどれだけ下げられるかで、その個体がオーバークロック耐性が高いのかが分かる。
デフォルトでは最大1078mVの電圧でクロックが1801~1802MHzに設定されていた。これを同じクロックで最大電圧をどこまで下げられるかが問題である。
とりあえず100mV下げて978mVにしてFF14ベンチマーク「紅蓮のリベレーター」を走らせてみた。
すると、あともう一歩というところで画面が暗転、そのままWindowsが落ちた。つまり、100mV下げる事はできないという事である。そこで今度は90mV下げて988mVにして試してみた。たかだか0.9Vである。
すると何とかベンチマークは完走し、結果としてはスコア11716を記録した。実はこの数値、先日どノーマル状態でベンチマークを採ったときの記録である11713とほぼ同じ。違いは誤差と言えるものである。
つまり、私の個体では0.9Vの降圧で同等の性能が出るという事である。もっとも、ベンチマークの稼働時間は数分なので、これで何時間も稼働させられるのかは疑問ではある。
それでも省エネか
ただ、今回の0.9Vの降圧設定でベンチマークを採った感じでは、空冷ファンの回転数が3000を超える事がなかった。
最大でも2912r.p.m.に留まっていたので、間違いなく発熱量は少なくなっていると言える。
なので、これで負荷をかけた状態で30分ほど安定動作するならば、0.9V降圧状態の方が全体のパフォーマンスが向上する可能性はありうる話である。
ちなみにUndervoltingに挑戦している他サイトを検索して探してみると、大凡0.9Vの降圧で動作し、その結果多少パフォーマンスが下がるという結果が多く散見されるようである(探し方にもよるかもしれないが)。
おそらく、性能が上がるという結果を得られた人はホントに極稀で、ほとんどが同じ結果なのではないかと予想する。
もしほとんどの人がほぼ同じであるならば、7nmプロセスのダイはやはり相当に安定していて、あとはメーカーのチューニングの問題なのではないかと思える。
とりあえず、988mVの設定でしばらく使ってみて、ブラックアウトしないか確認してみようと思う。
もしそれでブラックアウトしないようなら、省エネモードで運用できるという事。それはそれで良い事である。