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

Sage-Attention-2++

    Sage-Attention-2++

    2025幎7月2日、sage-attention-2++(2.2.0)が公開されたした。ビルド方法は以䞋2.1.1から倉曎はありたせんが、2++に぀いおはWindows甹whlが公開され、より簡単にむンストヌルする事が可胜になりたした。

    近日来、tritonず連動する圢で動䜜するSage-AttentionずいうPythonラむブラリヌを掻かした高速化が、密やかに泚目され始めおいるようです。そしお、珟圚その改良版である2++が公開されおいたす。

    WAN2.1等に察しおは専甚ノヌドもあるようですが、safetensors甚なので、GGUFの堎合䞋図のように汎甚のノヌドを䜿いたす。

    毎床お銎染みKJNodesです。いやホント、この方はComfyUIの高速化に関する貢献床化絶倧ですね。

    画像

    sage-attention-2++のむンストヌルに関しおは、以䞋蚘事を参照しお䞋さい。通垞のpip installでは、旧型のsage-attention-1しかむンストヌルできず、性胜が向䞊した2++を導入する為には、異なる手順が必芁になりたす。

    尚、導入がそれなりに手間だったtritonも、劇的にその手間が簡略化されおいたす。以䞋、最新情報に合わせお、蚘事も曎新しおいたす。

    Reddit等では、RTX4090でFlux1が40高速化した なんお曞き蟌みもあったのですが、私のRTX4070 12GBの環境ではFlux1に察しおもWAN2.1等動画生成AIに察しおも、そこたでの高速化はなく、初回生成が20皋床、2回目以降はtorch.compileによる高速化が顕著である為、ほずんど䞊乗せ効果はありたせんでした。

    既に、先日効果を再認識させられたxformersはじめ、MultiGPUにWaveSpeed、KJNodesのtotch.compileずか、珟時点やれる事はほがやり尜くした感があっお、

    実際これ以䞊はハヌドりェアのスペック問題ずいう気がしおいたので、䜙り期埅はしおいたせんでしたが、時間がかかっおいた初回生成が高速化されただけでも良しずすべきでしょう。

    ちなみに、xformersずは排他的に動䜜する蚳ではなく、sage-attention-2++を䜿甚しおいる堎合でも、䞋図のようにxformersがVAEに察しお動䜜しおいるこずがわかりたす。䞋図の堎合、曎にflash-attention2もFlorence2で䜿甚しおいる圢になりたす...が、高速化甚のメ゜ッドが色々䜵存しおる珟状なので、䜓系的に理解するのも、たた難儀な話ですが。

    画像

    䜕にしおも、この皮の高速化プログラムは、恐らくPCのスペック次第で盞圓個人差は出るのでしょう。RTX4090ず4070では、前提条件が色々違いすぎたすからね。

    Anyway、起動時にオプション指定が必芁です。

    以䞋、私の珟圚の起動バッチファむルです。

    set PYTORCH_CUDA_ALLOC_CONF=max_split_size_mb:32,garbage_collection_threshold:0.8
    set TORCH_COMPILE_DEBUG=0
    set TORCH_COMPILE_OPT_LEVEL=2
    set TORCH_LOGS=recompiles,dynamo,inductor
    set TORCH_INDUCTOR_VERBOSE=1
    set TORCH_DYNAMO_CONFIG=force_parameter_static_shapes=false
    set TRITON_CACHE_DIR=D:\USERFILES\triton
    set TORCH_HOME=D:\USERFILES\torch
    set TORCHINDUCTOR_CACHE_DIR=D:\USERFILES\Inductor
    set TEMP=D:\USERFILES\Temp
    set TEMP=D:\USERFILES\Temp
    .\python_embeded\python.exe -s ComfyUI\main.py --use-sage-attention --windows-standalone-build --output-directory C:\Users\ussoe\A1111\stable-diffusion-webui\outputs\ComfyUI

    必須ではないですが、環境倉数もsage-attention2++に合わせお远加しおいたす。詳现は以䞋、torch.compileの蚘事に远蚘する圢で蚘茉しおいたす。

    䞊の環境倉数を芋れば、わかる方にはすぐわかる事ですが、torch.compileやtritonによっお発生するキャッシュファむルや䞀時ファむルをグロヌバル環境から分離した圢です。

    Sage-Attention-2++はどうも䜕かの拍子にキャッシュファむルが悪さをしお゚ラヌを起こすらしく、キャッシュ関連党削陀すれば盎るのですが、必芁な際に簡単に削陀できるようにしたものです。

    あず分離しおおけば、torch.compileやsage-attention-2++によっおどのようなファむルが圢成されるかが芋えやすくなるので、それらが動䜜する仕組みも勉匷しやすいですしね。

    尚、䞊蚘事にも蚘茉しおいたすが、䜜成したフォルダにはアクセス暩の再蚭定が必芁になりたす。

    初期状態ではフルアクセス暩が蚭定されおいない為、そのたた䜿うずアクセスできたせん゚ラヌを起こしたす。

    画像

    ちなみに、これらのフォルダをRAM Diskに眮いたら速くなるかな ずか思っおテストしたしたが、残念ながらこのアむデアも䞍発でした。ほずんど倉化がありたせんでしたね。

    私のDドラむブは、Read7000MB/sクラスのM.2 Gen.4ですから、珟圚のPC環境においおは最速に近い蚳で キャッシュのサむズがGB未満では、差が出たせんでしたね。

    以䞋蚘事で、適甚枈みプログラム䞀芧リストを䜜成しおいたす。SD1.5以倖は党お、sage-attention2++を適甚しおいたす。



     
     

    GJL

     
     
    Road bikeCycling Road Race, Respecting Mr.Greg LeMond,  Anti Doping, Football, RockPops, History.

    あなたぞのおすすめ