WebUI를 사용하다가 가끔씩 RuntimeError: CUDA out of memory라는 오류가 발생하는데 이는 그래픽카드의 사양이 낮기 때문에 발생하는 옵션입니다.
오류 해결법
불필요한 기능 줄이기
오류를 해결하기위해서 필요 없는 기능들을 끄고 배치 수를 최대한 줄이세요.
배치 수는 출력하고자하는 결과물의 개수인데 배치 수를 줄임으로써 메모리 용량을 확보할 수 있습니다.
Hires. fix를 사용할경우 체크 해제를 하여 작동시켜 보세요 Hires. fix는 이미지 후보장 옵션인데 생각보다 많은 Vram을 사용하기 때문에 체크해제한 뒤 이미지를 생성하면 오류 없이 생성되는 경우가 있습니다.
VRAM사용률 줄이기
옵션은 포기할 수 없고 그래픽카드 사양이 부족할때 방법이 없을까..? 하다가 발견한 방법인데 옵션은 유지하고 대신에 작업속도를 조금 양보하는 대신에 원하는 그림을 뽑을 수 있는 방법이 있습니다.
stable-diffusion-webui 공식 github에는 위와같이 서술되어 있습니다.
webui에 두 가지의 옵션이 있는데 --medvram과 --lowvram옵션을 사용하면 vram을 더 적게 사용하며,
--lowvram는 vram사용을 적게 하는 대신에 작업속도가 느려질 수 있습니다.
--medvram도 마찬가지로 VRAM사용률을 줄여주어 에러가 발생하지 않지만 작업속도가 느려질 수 있습니다.
작업에는 시간이 생명이기에 --medvram옵션을 주어 테스트해 본 뒤, 만약 그래도 RuntimeError가 난다면 --lowvram옵션만 주어서 사용해 보세요.
작업시간은 대폭 하락하지만 원하고자 하는 그림을 출력하려고 다양한 옵션을 줄 때 매우 유용합니다.
VRAM사용률 옵션적용방법
옵션 적용 방법은 간단합니다. webui-user.bat파일의 COMMANDLINE_ARGS 뒤에 옵션을 주면 됩니다.