윈디하나의 누리사랑방. 이런 저런 얘기

글쓴시간
분류 기술,IT/스테이블 디퓨전
Stable Diffusion web UI

요즘 핫 한 이미지 생성 AI 프로그램이다. 2022년 8월에 나왔고 10월 경부터 핫해지기 시작했는데, 필자는 이제 시작해 보았다.

사용자 삽입 이미지

- 여태까진 PC 성능에 대해 욕심이 없었는데, 이걸 접하고 나니 욕심이 생긴다.내가 관심있는건 이걸 사용하는게 아니라 이걸 좀 더 "빠르게" 사용하는 거다. 쉽게 말하면 튜닝에 관심있다.

- 필자의 시스템에서 돌아가고 이미지 생성도 되긴 하지만, 업스케일 할때는 메모리 부족하다면서 오류내곤 한다. 그냥 업스케일 포기. GPU 메모리 2GB 에서도 실행되지만, 최소한 4GB 는 되어야 뭔가 제대로 돌릴 수 있을 것 같다. 권장은 8GB 다.

- 필자가 생각하는 최소 사양은 이렇다. 어쨌든 생성은 되는 수준이다. (필자가 이렇게 사용하고 있다)

CPU: Intel Core i3 이상
GPU: nVidia GeForce GT 1030 2GB
RAM: 16GB
SSD: 100GB 여유용량

- 이미지 생성시나 보정시에는 HDD 사용해도 되지만, 체크포인트 파일이 최소 2GB 이상이고 커다란 파일은 8GB에 달하기 때문에, 파일 로딩 시간이 30초 내외로 꽤 오래걸린다. (한번 로딩하면 다음 이미지 생성시에는 재사용하므로, 로딩시간이 없다. 따라서 크게 문제될건 아니다) 하지만 체크포인트를 병합하는 등의 작업을 하면 SSD 는 필수다.

- 이미지 생성시 CPU, GPU 사용량은 아래와 같다. GPU 메모리가 부족해 --lowvram 옵션을 주고, 성능 향상을 위해 --xformers 을 주어 실행한 결과다. 1장의 이미지를 생성하는데 기본 옵션 만으로 생성하면 2분 정도, 옵션을 수정하고, 고해상도, 생성 퀄리티를 높이면 30분 넘게도 걸린다. 따라서 새로운 세팅을 찾는건 어렵고, 대신 구글링해서 성공적인 이미지를 생성한 프롬프트를 조금씩 수정해서 사용해보고 있다. 나름 만족해하고 있다.

사용자 삽입 이미지

CPU 사용량


- 사용율을 모니터링 해보면, GPU 사용율이 주기적으로 올라갔다 내려갔다 한다. --lowvram 옵션을 주면 "SYSTEM MEM 데이터 일부를 GPU MEM에 로드 → 계산 → 계산 결과를 SYSTEM MEM에 저장 → SYSTEM MEM 데이터 일부를 GPU MEM에 로드 → 계산 → ..." 이런식으로 진행하기 때문이다. 즉 로드 및 저장시에는 계산하는게 없기 때문에, 사용율이 요동친다. 그리고 이때문에 5배이상 느려진다.

사용자 삽입 이미지

GPU 사용량


-  GPU 는 nVidia GeForce 950 2GB 도 가능할 걸로 생각한다. (해보진 않았다) 그 이하는 안된다. 권장하는 사양은 GPU nVidia GeForce RTX 3060 12GB 이다. 개발자는 nVidia GeForce RTX 3090 을 사용하는걸로 알려져있다.

- GPU 가 nVidia 제품이 아니라면 AVX2 가 지원되는 CPU 만으로도 실행해볼 수 있다. AVX2는 4세대 Core CPU 인 하스웰부터 지원한다. 단 이미지 생성 속도는 사용 못 할 정도로 너무 너무 느리다. 필자도 CPU만 사용해서 이미지 생성에  2시간 기다리다가 그냥 포기했다. 32코어나 64코어를 가진 CPU 라면 해볼만하지 않을까 생각한다.

- 생성해본 이미지를 올리고 싶지만 제대로 생성된게 별로 없다. 정말 정말 손가락을 제대로 못 그린다. 어떻게하던 손가락을 숨기는 포즈로 생성 해야 그나마 봐줄만하다. 아직은 이에 대한 명확한 해결책은 없는 상태다. 현재로써는 그냥 보정하거나, 시드 값을 달리해 손가락이 숨겨지는 포즈를 찾아보는 수밖에 없는 듯.

사용자 삽입 이미지

shuimobysim, girl, woman,bare shoulders, (ecchi:0.5), (trees:0.5), (flowers:0.6) ,(birds:0.2), (bamboo:0.1), lakes, Hangzhou, wuchangshuo, wuchangshuo in background, <lora:Moxin_10:0.8> Negative prompt: EasyNegative, mutated hands, (poorly drawn hands:1.331),(fused fingers:1.61051), (too many fingers:1.61051), bad hands, missing fingers, extra digit Steps: 28, Sampler: DPM++ SDE Karras, CFG scale: 2, Seed: 2643581225, Face restoration: CodeFormer, Size: 512x768, Model hash: 2537d1a815, Model: guofeng3_v32, ENSD: 31337