(本記事はMENOUフォーラム1周年記念企画の技術コラムです)
AI解析の大黒柱であるGPU。
しかし、PCシステムにおける大きな電力喰らいでもあります。
マイニング界隈では、GPUにある程度の電力制限をかけても、
効率が悪化しないことは周知の事実です。
では、AIに関してはどうでしょうか?
節電要請の出た今夏、手軽に電力をカットしてAI解析業務を継続できないか挑戦してみましょう。
====================================
私の在宅スペースに置いてある検証環境のGPUはInno製のGeforce 3070。
Geforce3070のベース周波数は1500MHzで高負荷時には1725MHzまで上昇しますが、
Inno製のGPUは更にオーバークロックされた状態で工場出荷されていて2025MHzまで上昇します。
メーカーにもよりますが、各社のホームページからオーバークロックツールが配布されていますので、
そちらを利用して実験しています。
青線が速度、赤線が消費電力です。どちらも低いほど優れています。
計測にはいつものチーターデータセットで、全データ数が40枚。学習枚数は20枚。
5Kの領域から1Kを検出してクロップ、さらに検出するフローが組まれています。
周波数が下がれば省電力も下がる(はず)ので、まずは周波数を変えて見ます。
ブースト最大周波数から定格クロック割れまでの速度は20ミリ秒程度の変化がありますが、
消費電力に関しては5w以下の変動なので、さほど減少が見れません。
学習となると計算量が増えるため、定格周波数を割ると効率が悪化するようです。
100epochですら数秒も遅延が発生するので、
削減できる消費電力は期待できなさそうですね。
それではマイニングでは効果のある電力制限を利用してみましょう。
※横軸に電力供給出力の%でプロットしていますが、実際には100%出力に対してその制限値ほど制限されていません。
これは定格出力に対しての制限量であり、実利用量とは異なるためです。
消費電力10%カットした90%までは速度に変化がなく(微小の増加は誤差と思われます)、
以降は緩やかに遅延していきます。
ダウンクロックと異なり、数ミリ秒以上の差が生じます。
学習時間に関しては周波数変更よりも遅延が増加しますが、 消費電力に関しては5W程度から40W程度とかなり削減ができています。
蛍光灯一本分ぐらいでしょうか。
まとめ
・電力制限は少量データの学習と解析にも効果あり。
どうしてもオフィスや工場全体の電力消費総量を下げたい場合には十分使える。
という結果になりました。
しかしながら、長時間学習する場合は効率が悪化するかもしれませんので、
そのあたりは天秤にかける必要がありますね。