本格的な夏になるとPCからの排熱という問題が大きくなってきます。
排熱問題とは
3DCG制作のようにGPUをレンダリングに使用している場合、GPUの使用率は常時100%近くになりそれに伴いかなりの熱が排出されます。
GPUを100%で使用している状態では80℃以上となります。そこから排出される高温の空気は、後方に直接排出されない限りPC内部に排出され、その結果、PC内部の温度も上昇することになります。
CPUやGPUといった細かい配線により生成されているパーツは演算が活発に行われる状態になるとこれらの配線に通電され発熱していきますが、この演算が活発に行われる状態になると、熱により配線は消耗していきます。したがって発熱が大きいほど消耗も激しいということになりますので、なるべく温度を下げた状態で運用することが望ましいと言われています。
GPUレンダリング作業に必要な要素
GPUレンダリングにおいて求められるのは、演算能力の高さであることは間違いありませんが、GPUメモリ搭載量も大切な要素です。メモリ搭載量が少ない場合、描画できるテクスチャで制限を受けます。またメモリ搭載量が大きく影響する作業としてはディープラーニングやAI画像生成が挙げられます。そのような作業を行うには16GB以上のメモリが必要になってくることもあります。
現在レンダリング用途で使用されているGeforceを見てみると、このような仕様になっています。
チップの名称 | 10GB | 12GB | 16GB | 24GB |
---|---|---|---|---|
Geforce RTX4080 | ○ | |||
Geforce RTX4090 | ○ | |||
Geforce RTX3080 | ○ | |||
Geforce RTX3080Ti | ○ | |||
Geforce RTX4090 | ○ |
現状では最新の4080、4090が好ましいと思われますが、市場価格を考えると3090でも良いと思います。
演算速度では、4080>3090という結果もありますが、前述のようなメモリ搭載量を考えると3090も良い選択ではないかと思います。
とはいえ、およそ20万円(4090では30万円)近くもするものですから、できるだけ長く可動させていきたいと思います。
そこで、長期運用を視野に、発熱を抑え、かつ消費電力(クーリングも含めてシステム全体)を抑える手段として、GPU性能を少しだけ落とすという設定を行いたいと思います。
GPU性能を下げる手段
GPUの性能を調整するツールがMSIから提供されています。
「MSI afterburner」
アフターバーナーというくらいですから本来は制限値を上げて性能を上げていくツールなのですが、100%以下の設定も行えますのでこれを活用してソフトウェア的な制限値を設けていきます。
制作環境で制限実施時の描画速度テストを行ってみました。
C4Dでのレンダリングよりも負荷の高くなるAI画像生成(Stable Diffusion)で制限値による処理速度と温度の比較を行いました。
制限値 | 生成時間 | GPU温度(Max) |
---|---|---|
100% | 05:10 | 83℃ |
70% | 05:35 | 74℃ |
50% | 09:29 | 68℃ |
テストで生成した画像
考察
テスト中、制限値を70%、50%と下げていくにつれ、明らかにファン音が小さくなり、後方からの排気の温度も下がっているのが体感できました。測定できた温度も明らかに下がっており、GPUへの熱負荷は少なくなっていることが期待されます。
やはり制限を行うことで生成時間は長くなりますが、当初想定していたよりも時間は長くなりませんでした。
特に制限値が70%程度であれば、温度の上昇を抑え、かつ時間もそれほど長くなりませんので、現時点では望ましい設定値ではないかと考えます。
リアルタイムの応答が必要となる案件では、より高速なレスポンスが必要になるので、このような設定ではなく、冷却を強力にしていく方法を検討しなければならないと思いますが、そうでない場合は、機器の消耗やトータルでの消費電力を考えていくことは安定したシステム運用には必要だと感じます。参考になりましたら幸いです。