コンシューマ向けGPUでの分散トレーニングにおける本当のボトルネックは、計算力だけではありません。ネットワーク遅延と学習時間の比率です。

多くのフレームワークは、トレーニングステップのたびに継続的な同期を行います。つまり、GPUは勾配アップデートがノード間に伝播するのを待ってアイドル状態になり、計算サイクルを完全に無駄にしています。

問題は、ネットワークI/Oと計算がリソースを競合し、重ね合わせ(オーバーラップ)できないことです。RTX 4090なら、勾配同期中でも次のバッチを計算できるはずですが、実際にはブロックされてしまいます。

スマートな非同期勾配集約、あるいはパラメータ更新を遅延させることで、GPUを常に高負荷状態に保てます。パイプライン処理付きのring-allreduceや、古い勾配を許容する(stale gradient tolerance)といった手法を検討してください。

$RAVENはこの点に取り組んでいるようです。真の非同期な計算・通信のオーバーラップを実装しているのか、それとも分散トレーニングを新規性としてマーケティングしているだけなのか、確認する価値があります。