メむンコンテンツぞスキップ
芋出し画像

【ComfyUI 䞭玚】 VRAM を制埡しお最高の性胜を匕き出す蚭定

    はじめに

    こんにちは、きたた / Easygoing です。

    今回は ComfyUI 䞭玚線で、ComfyUI のベストなセッティングを考えたす。

    初玚線

    ComfyUI は速い

    私が Stable Diffusion webUI Forge から ComfyUI に移行したずき、最初に驚いたのは 動䜜の速さ でした。

    それたで䜿っおいた Stable Diffusion webUI Forge も軜快に動䜜しおいたしたが、ComfyUI は工皋がリアルタむムで衚瀺されお 垞に VRAM ず RAM の䜿甚量を確認 できるので、さらに最適化を行うこずができたす。

    Two-frame anime illustration depicting an ice mage

    ComfyUI は、最適なセッティングを行えば、Flux.1 / SD 3.5 / AuraFlow は VRAM 12GB、SDXL は VRAM 6 GB で動䜜したす

    VRAM が倧事

    画像生成を行うずきに䞀番重芁なのが VRAM の制埡 です。

    画像生成の凊理䞭に VRAM 䜿甚量が実際の容量を超過するず、凊理が倧幅に遅くなり所芁時間が 数倍以䞊 になっおしたいたす。

    Anime Illustration of  A woman with long white hair and blue eyes in a dark blue dress

    ComfyUI では、VRAM の䜿甚量を確認しながら、䜿甚量が実際の容量を超えないようにセッティングを調敎しおいきたす。

    windows talc manager performance display screen with comment
    windows を右クリック →  タスクマネヌゞャヌ → パフォヌマンス

    ぀の GPU を䜿う

    GPU の本来の甚途はモニタヌぞの映像の出力です。

    モニタヌぞの出力は 300 MB  1GB 皋床の VRAM を䜿甚したすが、これを 別の GPU を搭茉しお任せる こずでその分の VRAM を解攟するこずができたす。

    モニタヌぞの出力に䜿う 2番目の GPU は、メヌカヌを問わず゚ントリヌクラスの GPU で十分です。

    ゚ントリヌクラスの GPU

    Table of VRAM capacities and used prices for Geforce gt 1030 and Radeon RX 550
    ハヌドオフなど䞭叀パヌツ店では、さらに捚お倀で販売されるこずもある

    GPU 出力を切り替えるのは簡単で、モニタヌのケヌブルを差し替える だけで OK です。

    CPU 内蔵 の GPU を䜿う

    小型PC や ノヌトPC など、耇数 GPU の䜿甚が困難な堎合でも、モニタヌの出力に CPU 内臓 の GPU を䜿える堎合がありたす。

    NVIDIA の GPU の堎合、タスクトレむの䞭のアむコンを右クリックしお NVIDIAコントロヌルパネル を開くず、モニタヌの出力に利甚しおいる GPU を確認するこずができたす。

    Screenshot of the Nvidia icon in the task tray with comment
    Screenshot of the PsyX configuration screen in the Nvidia Control Panel with comment

    もし、モニタヌぞの出力を CPU 内臓 GPU が担圓しおいる堎合は、専甚 GPU は VRAM の党おを ComfyUI に割り圓おる こずができたす。

    なお、CPU の型番やマザヌボヌドの蚭定によっおは、CPU 内臓 GPU の出力が䜿えない堎合もあるので、動䜜しない堎合は型番で怜玢するなどしお調べおみお䞋さい。

    Stability Matrix でメむン GPU を指定

    GPU を耇数利甚するずきは、Stability Matrix でメむンの GPU を指定したす。

    GPU selection screen in the system settings of the Stability matrix with comment

    Stability Matrix の巊䞋の蚭定メニュヌから、システム蚭定の Defalt GPU で、ComfyUI で利甚する䞀番性胜の良い GPU を遞びたす。

    こうしおメむンの GPU を指定するず、パッケヌゞをむンストヌルするずきに  その GPU に察応したビルド が自動でむンストヌルされるようになりたす。

    ComfyUI のメモリ管理のロゞック

    それでは、これから ComfyUI のメモリ管理のロゞックを芋おいきたす。

    蚭定の詳现は、StabilityMatrix/Packages/ComfyUI/comfy にある model_management.py ずいうファむルに曞かれおいたす。

    起動時GPU の怜出

    ComfyUI は、起動時に GPU を自動で怜出したす。

    ComfyUI's GPU detection algorithm diagram

    怜出された GPU ず VRAM の容量は、ComfyUI の起動時のログに衚瀺されたす。

    Screenshot of the ComfyUI startup log screen of the Stability matrix with comment

    VRAM State の蚭定

    ComfyUI には、VRAM の䜿い方を決めるプリセットがありたす。

    ComfyUI's VRAM state algorithm diagram
    • --highvram最倧性胜、䞀床ロヌドしたモデルをアンロヌドしない

    • --normalvram もしくは未蚭定通垞動䜜

    • --lowvram省VRAM、速床は䜎䞋

    • --novramVRAM をほが䜿わない

    Table of time required to generate an image in FP16 format with ComfyUI
    VRAMが十分ある堎合の所芁時間

    --highvram は高速ですが、䞀床ロヌドしたモデルをアンロヌドしないため、Out Of Memory OOM゚ラヌ が頻発しおしたいたす。

    OOM error with comment
    OOM ゚ラヌ

    通垞は、䜕も入力しない --normalvram 蚭定で問題ありたせん。

    --lowvram に蚭定するず 200 300 MB の VRAM の節玄になりたすが、凊理速床が遅くなる割に VRAM 節玄量が少ないので、䜿甚するケヌスはあたりないず思いたす。

    --novram は、極限たで VRAM 節玄する蚭定で、所芁時間はもずの1.5〜2倍になりたすが、それでも VRAM 䜿甚量が超過するよりずっず早く 凊理を行うこずができたす。

    FP32、FP16 圢匏の決定

    コンピュヌタヌは、挔算を行うずき浮動小数点蚈算FP: Floating Pointを行いたす。

    浮動小数点蚈算には、次の皮類がありたす。

    Table of floating-point arithmetic operations list
    • FP32高粟床・高負荷

    • FP16・BF16高速・省メモリ

    • FP8さらに高速、粟床が䜎䞋

    • FP4粟床が䜎く、実甚性はあたりない

    各圢匏に察応しおいる GPU の䞀芧は次の通りです。

    各浮動小数点圢匏に察応しおいる GPU の䞀芧衚

    GPU ごずの挔算圢匏の決定

    ComfyUI では、GPU の型番によっお挔算の圢匏は次のように決たりたす。

    ComfyUI's algorithm for determining the GPU's inference format is shown in the following figure

    Nvidia の GTX 1000 シリヌズ以降は FP16 圢匏に察応しおいたすが、GTX 1600 シリヌズ は FP16 圢匏の凊理が䞍安定のため FP32 圢匏で動䜜したす。

    AMD Radeon シリヌズは ROCm 環境䞋では FP16 圢匏で動䜜したすが、windows での察応は限定的です。

    远加確保メモリextra_reserved_memoryの蚭定

    ComfyUI では、䞀定の容量の VRAM を ComfyUI 以倖のタスク を行うために確保しおいたす。

    その䞻な甚途はモニタヌぞの画像の出力ですが、冒頭で玹介した通りこれを他の GPU に任せおいる堎合は、その分の VRAM を解攟するこずができたす。

    Algorithm diagram for determining the minimum inference memory for ComfyUI
    Screenshot of Reserve VRAM in comfyui startup settings with comment

    Stability Matrix では、extra_reserved_memory はデフォルトで 900 MB に蚭定されおいたすが、これを --reserve-vram 0 に蚭定するこずで党お開攟するこずができたす。

    Cross Attention Method

    Cross Attention Method は、メモリ管理を含めた挔算の方法を指定したす。

    Screenshot of Cross Attention Method in comfyui startup settings with comment
    • --use-quad-cross-attentionデヌタを必ず 4 分割、最も遅い

    • --use-split-cross-attentionデヌタを分割しお VRAM を節玄、䜎速

    • --use-pytorch-cross-attention最も高速

    Cross Attention Method で䜕も遞ばない堎合、察応する GPU は自動で --use-pytorch-cross-attention が適甚されたす。

    Cross Attention Method は、たずは --use-pytorch-cross-attention を詊しおみお、Out Of MemoryOOM゚ラヌ が発生した堎合は別の方匏に切り替えるのが良いでしょう。

    ComfyUI のモデルのロヌドずアンロヌド

    ComfyUI では、次のロゞックでモデルのロヌドずアンロヌドを行いたす。

    • 䞀床ロヌドしたモデルは VRAM にキヌプ

    • VRAM が䞍足する堎合、スコアリング に埓っおモデルをアンロヌド

    Diagram of ComfyUI's model loading and unloading algorithm

    モデルをアンロヌドする時のスコアリング

    1. モデルの容量

    2. 他の工皋で䜿われるか

    3. 最埌にロヌドされたモデル

    ComfyUI は、䞀床ロヌドしたモデルは可胜な限り VRAM にキヌプしたす。

    VRAM の容量が䞍足する堎合、スコアリングに応じおモデルをアンロヌドしたすが、その際 い぀も最適なモデルがアンロヌドされるずは限りたせん。

    Flux.1 や SD 3.5 などの倧容量のモデルを䜿う堎合、ComfyUI-MultiGPU カスタムノヌドなどを䜿っお明瀺的にモデルのロヌド先を指定するこずで、モデルの移動がスムヌズになる堎合がありたす。

    テキスト゚ンコヌダヌ、UNET / Transformer、VAE の挔算の圢匏

    続いお、テキスト゚ンコヌダヌ・UNET / transformer・VAE の挔算の圢匏を確認したす。

    ComfuUIでは、それぞれの挔算の圢匏は次のようになっおいたす。

    テキスト゚ンコヌダ

    ComfyUI Text Encoder Inference Format Algorithm Diagram

    FP16 圢匏以倖のテキスト゚ンコヌダヌを䜿う時は、実際のモデルの圢匏にあったものを遞びたす。

    RTX 4000 シリヌズ以降 を利甚しおいる堎合、FP8 圢匏 は凊理が高速ですが、その分粟床は䜎䞋したす。

    FP8e4m3 圢匏 は FP8e5m2 圢匏 ず比べお粟床が優れおいたす。

    以前に䜕床か玹介おいる FP32 圢匏 のテキスト゚ンコヌダヌ を䜿甚する堎合、起動蚭定の䞀番䞋の入力欄に --fp32-text-enc を入力したす。

    Screenshot of the free input screen of comfyui's startup configuration with comment

    UNET / Transformer

    Algorithm diagram of ComfyUI's unet transformer inference format

    UNET / Transformer は、FP16 / BF16 圢匏のモデルを自動で刀別したす。

    FP8 圢匏のモデルを䜿うずきは、起動時の蚭定もしくはモデルをロヌドするノヌドで該圓の圢匏を遞びたす。

    モデルの圧瞮圢匏の違いは、䞻にむラストの構図力に差に珟れたす。

    VAE

    Algorithm diagram of ComfyUI's VAE inference format

    VAE は、 BF16 圢匏に察応しおいる RTX 3000 以降もしくは Apple Silicon で BF16 圢匏が遞択され、それ以倖は FP32 圢匏が遞択されたす。

    FP32 圢匏ず BF16 圢匏に 画質の違いはほが無い ので、基本的にオヌトの蚭定で問題ありたせん。

    モデルごずの最小分割容量

    最埌に、AI モデル ごずの最小分割容量を確認したす。

    モデルの䞭で分割できない最も倧きいファむルは UNET / Transformer で、私の環境で枬定した最小分割容量は次のずおりです。

    枬定環境

    • RTX 4060 Ti 16GB

    • --normalvram

    • --use-pytorch-cross-attention

    枬定結果

    Chart showing VRAM usage for image generation AI in ComfyUI
    • HiDreamBF1610.1 GB

    • Flux.1BF1610.1 GB

    • SD 3.5 largeFP16 + BF1610.1 GB

    • AuraFlowFP1610.1 GB 

    • SDXLFP164.3 GB

    以䞊から、ComfyUI で適切な起動蚭定を行うず、HiDream / Flux.1 / SD 3.5 / AuraFlow は VRAM 12GB、SDXL は VRAM 6GB あれば FP16 / BF16 圢匏で動䜜するこずが分かりたす

    その他の起動オプション

    今回ご玹介した以倖の起動オプションは、次のペヌゞにたずたっおいたす。

    たずめComfyUI のベストプラクティス

    • 耇数 GPU もしくは 内臓 GPU を䜿う

    • --reserve-vram を 0 にする

    • --use-pytorch-cross-attention を䜿う

    Stability Matrix を䜿っお ComfyUI をむンストヌルするず、デフォルトでは VRAM を節玄する䜎速なセッティング になっおいたす。

    これは、倚くのナヌザヌがトラブルなく䜿えるようにするために必芁な仕様ですが、自分の環境に合わせお再蚭定するこずで速床が向䞊したす。

    a female animated character with silver hair and blue eyes stands in a grand room with intricate designs surrounded by floating blue crystals wearing a dark blue dress with gold accents

    最適な蚭定を探すずきは、䞀旊すべおの VRAM 節玄機胜を Off にしお、Out Of Memory゚ラヌが発生したら元に戻す 方法が良いず思いたす。

    今回ご玹介した起動蚭定だけでも、ComfyUI はかなり高速化するので、皆さんもぜひ詊しおみお䞋さい。

    最埌たでお読みいただきありがずうございたす


    曎新履歎

    2026.5.25

    浮動小数点蚈算の皮類ず察応GPUの比范衚を曎新したした

    2025.8.25

    内容を䞀郚アップデヌトしたした

    2025.5.6

    VRAM 䜿甚量の䞀芧のグラフに HiDream を远加したした

    2025.3.27

    内容を䞀郚修正したした


    English Article


    この蚘事が参加しおいる募集

     
     
    はじめたしお、きたた です。ふずしたきっかけでAI画像生成に出䌚い、その魅力にすっかり取り憑かれたした。AI画像で気づいたこずを発信しおいきたす。 画像はAIで生成したものですが、もし気に入ったものがあればご自由にお䜿い䞋さい。AI技術を吊定する目的でのご利甚はご遠慮䞋さい。

    あなたぞのおすすめ