たねやつの木

Photographs, Keyboards and Programming

【ComfyUI】複数GPUで画像生成を高速化!新カスタムノード「Raylight」登場

こんにちは、たねやつです。

Stable DiffusionのワークフローUIとして人気の「ComfyUI」に、複数GPUを持つユーザーにとって待望の機能が登場しました。

Redditでアルファ版が公開されたカスタムノード「Raylight」は、Split Tensor GPU Parallelという技術を用いて、複数のGPUに処理を分散させ、画像生成の効率を劇的に向上させることができます。

この記事では、Raylightがどのような技術で、導入することでどのようなメリットがあるのか、そして気になるインストール方法について詳しく解説していきます。

この記事でできること

  • Raylightがどのようなカスタムノードか理解できる
  • 複数GPUでの並列処理のメリットがわかる
  • Raylightのインストール方法と注意点を知れる

Raylightとは?複数GPUの力を解放する新技術

Raylightは、ComfyUI上で複数のGPUを使った並列処理を実現するためのカスタムノード群です。

これまで、VRAM容量の大きな高価なグラフィックボードを1枚用意しなければ扱えなかった巨大なモデルも、Raylightを使えば、例えば16GBのVRAMを持つGPUを2枚組み合わせることで、合計32GBのVRAMがあるかのように振る舞わせることが可能になります。

これにより、以下のようなメリットが生まれます。

  • より大きなモデルの利用: VRAM不足で諦めていた高性能なモデルを動かせるようになる。
  • 生成速度の向上: 処理を複数のGPUに分散させることで、画像生成にかかる時間を短縮できる。
  • コストパフォーマンス: ハイエンドなGPU1枚よりも、ミドルレンジのGPU2枚の方が安価に済む場合がある。

インストール方法と注意点

Raylightは現在アルファ版であり、導入にはいくつかの注意点があります。

インストール手順

  1. ComfyUIのカスタムノードディレクトリ(ComfyUI/custom_nodes/)に移動します。
  2. ターミナル(コマンドプロンプト)で以下のgitコマンドを実行し、リポジトリをクローンします。 bash git clone https://github.com/your-repo-url/raylight.git (注: 上記URLはダミーです。実際のリポジトリURLに置き換えてください)
  3. ComfyUIを再起動すれば、ノードが利用可能になります。
複数GPU利用時のボトルネックについて
異なる性能のGPUを組み合わせて使用する場合、全体の処理速度は最も性能の低いGPUのスペックに律速される(ボトルネックになる)点に注意が必要です。例えば、高性能なGPUと中性能のGPUを組み合わせた場合、処理速度は中性能なGPUの性能に大きく影響されます。最適なパフォーマンスを得るためには、できるだけ同等性能のGPUを組み合わせることが理想的です。

利用上の注意点 (アルファ版)

  • FLASH ATTENTIONが必須: Raylightを動作させるには、「FLASH ATTENTION」が必須要件となっています。
  • Windowsでの動作は未保証: 開発者がWindows環境を所有していないため、現時点ではWindowsでの完全な動作は保証されていません。
  • メモリ不足の可能性: 大きなモデルをロードする際に、初期のモデルローダーでメモリ不足(Out of Memory)エラーが発生する可能性があるとのことです。
Raylightはまだ開発の初期段階(アルファ版)です。予期せぬエラーや問題が発生する可能性があるため、導入は自己責任でお願いします。

最後に

複数GPUの並列処理を可能にする「Raylight」は、ComfyUIの可能性をさらに広げる、非常にエキサイティングなカスタムノードです。

特に、ミドルレンジのGPUを複数枚持っているユーザーにとっては、AI画像生成環境を大幅にアップグレードするチャンスとなります。

まだアルファ版ではありますが、今後の開発と安定版のリリースに大いに期待したいですね!

参考・引用