[AI] 스테이블 디퓨전 메모리 부족 문제 해결 방법
인공지능 기반 이미지 생성 도구인 Stable Diffusion을 사용하면서 마주치는 일반적인 문제, 'CUDA Out of Memory' 오류에 대해 이야기하고자 합니다. OutOfMemoryError 오류가 발생하는 원인과 해결 방법을 통해 스테이블 디퓨전을 원할하게 사용하시길 바랍니다.
오류 원인
Stable Diffusion은 강력한 AI 이미지 생성 도구이지만, 메모리 사용량이 높아 메모리 부족 현상이 일어날 수 있습니다. 특히, 고해상도 이미지나 여러 이미지를 동시에 생성할 경우, GPU의 VRAM이 충분하지 않아 'CUDA Out of Memory' 오류가 발생합니다.
해결방법
1. 하드웨어 업그레이드
가장 확실한 해결 방법은 VRAM 용량이 더 큰 GPU로 업그레이드하는 것입니다. 이는 비용이 많이 들 수 있지만, 장기적으로 볼 때 안정적인 성능 향상을 기대할 수 있습니다.
2. 이미지 크기 및 배치 사이즈 조절
생성하려는 이미지의 해상도를 낮추거나 한 번에 처리하는 이미지의 수를 줄이는 것도 메모리 부족 문제를 해결할 수 있습니다. 이는 메모리 사용량을 줄이는 데 도움이 됩니다.
3. 소프트웨어 최적화
일부 소프트웨어 설정을 조정하여 메모리 효율성을 높일 수 있습니다. 예를 들어, 'xformers' 모듈을 사용하면 메모리 사용량을 줄이면서도 성능을 유지할 수 있습니다.
xformers 모듈을 사용 방법
- 열려 있는 스테이블 디퓨전을 모두 종료합니다.
- 스테이블 디퓨전이 설치되어 있는 경로로 이동합니다.
- 설치경로\sd.webui\webui 폴더 안에 있는 webui-user.bat 파일을 메모장으로 엽니다.
- "set COMMANDLINE_ARGS=" 부분에 다음과 같이 추가 작성합니다.
- "set COMMANDLINE_ARGS=--xformers"
- 저장 후 메모장을 종료하고 스테이블 디퓨전을 실행하여 이미지 생성을 시도합니다.
만약 위와 같이 조치 했음에도 지속적으로 오류가 발생한다면 webui-user.bat 파일에 다음 문구를 추가합니다.
"set COMMANDLINE_ARGS=--xformers --medvram"
이제 다시 이미재 생성 시도 시 정상적으로 이미지가 출력되는 것을 확인하실 수 있습니다.
'CUDA Out of Memory' 오류는 Stable Diffusion 사용자들이 흔히 마주치는 문제입니다. 하지만 적절한 하드웨어 업그레이드, 이미지 및 배치 사이즈 조절, 소프트웨어 최적화를 통해 이 문제를 해결할 수 있습니다.
만약 위와 같이 조치했음에도 불구하고 이미지 생성이 잘 이뤄지지 않는다던가 메모리 오류가 발생하면 다음 글을 참고하시기 바랍니다.
다음 글은 스테이블 디퓨전 그래픽 카드 사양에 따른 VRAM 설정 방법입니다.