xformers활성화로 작업속도 2배 올리기 [Stable Diffusion WebUI]

Stable Diffusion WebUI에서 작업속도는 그래픽카드에 비례하는데 작업하는 양이 많을수록 당연히 더 많은 작업시간이 소요되기 때문에 그래픽카드를 업그레이드하는 편이 좋지만 몇 가지 옵션을 사용하면 이미지를 더 빠르게 생성할 수 있습니다.

 

xfromers는 엔비디아 지포스 1000이상의 그래픽카드 시리즈에서 사용이 가능하며 VRAM사용을 줄이고 이미지 생성속도를 높여 이미지 생성시간을 단축시키는 역할을 해줍니다.

 

실제로 제가 테스트해봤을때 메모리부족으로 생성이 불가능한 이미지를 xformers옵션을 사용해 보니 생성이 가능하였고 기본 속도도 옵션을 적용하기 전보다 훨씬 빠른 편이었습니다.

 

xformers 자동 설치

xformers를 설치하기 위해서 webui가 설치된 폴더의 실행 배치파일을 메모장으로 열은 뒤 COMMANDLINE_ARGS에 --xforemers를 추가해 준 뒤 저장해 주면 됩니다. 이후 프로그램 실행 시에 지포스 10xx~30xx까지 자동 설치 됩니다.

이때 자동설치 조건은 Python 3.10에서 Pascal, Turing, Ampere, Lovelace 또는 Hopper 카드를 사용하는 경우입니다.

간혹 구버전 webui에서는 설치가 안될 수도 있으니 최신버전으로 업그레이드하여 시도해 보세요

 

 

Xformers 수동설치

위에 자동설치방법으로 설치가 된다면 바로 설치하면 좋지만 자동으로 설치되지 않을 경우에는 다음 방법을 참고하여 설치하시면 됩니다.

 

일단 실행배치파일에 --xformers옵션을 넣어줍니다.

 

설치를 위한 파일이 필요한데 10xx버전은 여기를 통하여 6.1 버전을 설치하고, 20xx버전은 여기를 통하여 7.5 버전을 다운로드한 후 압축을 해제합니다.

 

cmd를 열은 뒤 'cd WEBUI설치폴더\stable-diffusion-webui\venv\Scripts' 경로로 이동합니다.

해당 경로에 아까 압축을 해제한 xformers폴더를 넣어줍니다.

 

이동한 경로에서 activate.bat를 입력합니다.

 

그러면 맨 앞에 (venv)라는 내용이 나옵니다.

이때 cmd에 표시되는 현재 경로 디렉터리에 아까 압축을 푼 'xformers'폴더가 있어야 합니다.

 

cd xformers

pip uninstall -y xformers

pip install -r requirements.txt

pip install -e .

조건이 만족하면 위의 명령을 입력합니다.

이후에 실행하면 xformers가 활성화됩니다.

 

 

xformers 비활성화 방법

실행배치파일에서 --xformers를 지운 후 저장하여 실행하면 비활성화됩니다.

hires옵션을 사용하여 작업을 했을 때 확실히 xformers를 사용하니 작업속도가 현저히 낮아지고 체감이 됩니다.

 

작업의 퀄리티는 감소할 수 있지만 메모리용량의 부족으로 작업이 어려울 경우엔 이전에 작성한 CUDA out memory오류 해결법을 참고해 주세요.

Top