>>75
SwiftVRのローカル版でやった最適化はデバイスに依存しないメモリ削減と、CUDAを前提とする高速化
MPSで使えるのは前者だけの見込みだけどMac持ってないので試せないっす
(1) デバイスに依存しないメモリ削減
次の4つはPyTorchの標準的な演算だけで書かれており、CUDA専用のAPIを使っていない
・ReAEのフレームバッチ処理(出典:LightX2V)
 状態を持たない層を数フレームずつ処理し、出力は1つの確保済みテンソルに書き込む
・decoderの分割(出典:LightX2V)
 最後のTGrowまでの状態を持つ部分を先に実行し、捨てるフレームを除いてから、フル解像度の後半を実行
・TGrowとUpsampleの順序入れ替え(出典:独自)
 TGrowは空間方向に点ごとの演算なので、nearestのUpsampleと順序を交換でき、4分の1の画素数で実行できる
・QKV融合後の元の重みの解放(出典:独自)
 融合前のQ、K、Vの投影を解放(約2.6GiB)