SERIES 01 · VRAM

내 그래픽카드로 스테이블 디퓨전이 될까 — VRAM 8·12·16·24GB 모델별 사양

junetapa 약 17분

「스테이블 디퓨전 사양」을 찾아보면 숫자가 제각각이다. 4GB로 된다는 글과 16GB가 표준이라는 글이 한 화면에 같이 뜬다. 둘 다 틀린 말은 아니다. 기준으로 삼은 모델이 다를 뿐이다. 이 글은 그래픽카드 하나를 들고 처음 시작하는 홍길동의 순서를 따라, SD 1.5 · SDXL · SD 3.5 · FLUX 계열이 VRAM 8·12·16·24GB에서 각각 어디까지 되고 어디서 막히는지를 공식 모델 카드와 배포 파일 크기로 짚는다.

SERIES · 내 PC로 AI 그림 그리기 1편

이 시리즈의 첫 편이다. 여기서는 «내 카드로 무엇이 되나»만 다룬다. 프로그램을 까는 순서는 스테이블 디퓨전 설치 완전 가이드에, ComfyUI 화면과 노드 쓰는 법은 ComfyUI 입문 실전 가이드에 따로 정리해 두었다. 글에 나오는 홍길동은 설명을 위해 세운 예시 인물이다.

사양표가 서로 다른 이유 — 프로그램이 아니라 모델이 먹는다

홍길동의 PC에는 몇 해 전 게임용으로 산 그래픽카드가 꽂혀 있다. AI로 그림을 그려 보기로 하고 제일 먼저 「스테이블 디퓨전 사양」을 검색했다. 어떤 글은 4GB면 된다고 하고, 어떤 글은 12GB가 하한이라고 하고, 또 어떤 글은 16GB가 표준이라고 한다. 셋 중 무엇을 믿어야 할지부터 막혔다.

세 글은 서로 다른 것을 재고 있다. 스테이블 디퓨전이라는 이름 아래에는 덩치가 열 배 넘게 차이 나는 모델들이 함께 들어 있다. SD 1.5의 그림 생성부(UNet)는 파라미터가 8억 6천만 개이고, FLUX.1 dev는 120억 개, FLUX.2 [dev]는 320억 개다. 그래서 «사양»은 프로그램이 아니라 이 가운데 무엇을 돌리느냐가 정한다.

프로그램 쪽 공식 문서가 이것을 거꾸로 보여 준다. ComfyUI 공식 문서의 시스템 요구사항 페이지는 운영체제와 파이썬 버전, 지원하는 GPU 종류는 적어 두었지만 최소 VRAM이나 RAM 숫자는 적지 않았다. 프로그램 자체가 요구하는 몫은 작고, 무거운 것은 그 위에 얹는 모델이기 때문이다.

공식 숫자에도 «그때의 조건»이 붙어 있다

오래된 숫자가 섞이는 이유도 있다. 스테이블 디퓨전을 처음 공개한 CompVis 저장소의 안내문은 이 모델이 비교적 가벼워서 VRAM 10GB 이상의 GPU에서 돈다고 적었다. 그런데 뒤에 나온 더 큰 SDXL에 대해서는 Stability AI가 8GB VRAM 소비자용 GPU에서 동작한다고 밝혔다. 모델이 작아진 것이 아니라 불러오는 방식이 달라진 것이다.

그래서 사양 숫자를 볼 때는 «어느 모델을, 어느 정밀도로, 어느 프로그램에서» 잰 숫자인지를 같이 봐야 한다. 이 셋이 빠진 숫자는 옮겨 적는 순간 다른 뜻이 된다.

홍길동이 정한 순서

내 카드의 VRAM을 숫자로 확인한다 → 모델마다 파일이 얼마나 큰지 본다 → 둘을 맞대어 되는 모델을 고른다 → 막히면 품질을 덜 내주는 설정부터 손본다. 이 글의 절 순서가 그대로 이 순서다.

첫 단계 — 카드 이름 말고 VRAM 숫자를 본다

홍길동은 자기 카드가 「RTX 4060 Ti」라는 것은 알고 있었다. 그런데 이름만으로는 VRAM을 알 수 없다. NVIDIA 공식 사양표를 보면 같은 이름에 메모리 구성이 두 가지인 카드가 여럿이다.

카드 이름NVIDIA 공식 메모리 구성
GeForce RTX 306012GB 또는 8GB (GDDR6)
GeForce RTX 4060 Ti16GB 또는 8GB (GDDR6)
GeForce RTX 5060 Ti16GB 또는 8GB (GDDR7)
GeForce RTX 5070 / 5070 Ti12GB / 16GB (GDDR7)
GeForce RTX 409024GB (GDDR6X)

이름이 같아도 8GB판과 16GB판은 뒤에 나오는 표에서 칸이 두 개나 갈린다. 중고로 샀거나 완제품 PC에 처음부터 들어 있던 카드라면 더더욱 숫자로 확인해야 한다.

확인하는 자리 세 곳

  • NVIDIA 카드라면 명령 프롬프트에서 nvidia-smi를 친다. 메모리 칸의 «사용량 / 전체» 가운데 뒤쪽 숫자가 카드 전체 용량이다.
  • ComfyUI를 이미 깔았다면 실행할 때 나오는 첫 줄들을 본다. Total VRAM … MB, total RAM … MB 라는 줄이 VRAM과 시스템 RAM을 한 번에 알려 준다. ComfyUI 코드가 시작할 때 찍도록 되어 있는 줄이다.
  • 윈도 작업 관리자에서는 «전용 GPU 메모리»만 센다. 화면 순서는 작업 관리자로 VRAM 확인하는 30초 방법에 있다.

홍길동의 카드는 16GB판이 아니라 8GB판이었다. 그리고 같은 줄에서 시스템 RAM이 16GB라는 것도 함께 알게 됐다. 이 두 번째 숫자가 뒤에서 한 번 더 발목을 잡는다.

모델이 VRAM을 먹는 방식 — 파라미터·정밀도·텍스트 인코더

다음으로 홍길동은 모델 쪽 숫자를 모았다. 따질 것은 셋이다.

  • 파라미터 수 — 모델의 덩치다. 공식 모델 카드나 발표문에 적혀 있다.
  • 정밀도 — 파라미터 하나를 몇 비트로 담느냐다. 16비트는 파라미터 하나에 2바이트라서, 120억 파라미터인 FLUX.1 dev의 16비트 본체 파일이 23.8GB가 된다. fp8(8비트)은 1바이트라 그 절반쯤으로 준다.
  • 텍스트 인코더 — 프롬프트를 읽는 부분이다. SD 1.5와 SDXL은 체크포인트 한 파일에 같이 들어 있지만 SD 3.5와 FLUX는 따로 받는다. 이 둘이 쓰는 T5-XXL 인코더는 16비트판이 9.79GB, fp8판이 4.89GB다. 그림 모델보다 인코더가 큰 경우도 있다.

공식 모델 카드와 발표문, 그리고 Hugging Face 공식 저장소에 올라 있는 배포 파일 크기를 한 표에 모으면 이렇다.

모델파라미터(공식)본체 파일(공식 배포)공식 문서의 하드웨어 문장
SD 1.5UNet 8.6억 · 인코더 1.23억4.27GB · 32비트 · 인코더 포함원 저장소: VRAM 10GB 이상 GPU
SDXL base 1.0기본 모델 35억6.94GB · 16비트 · 인코더 포함8GB VRAM 소비자용 GPU에서 동작
SD 3.5 Medium25억5.11GB · 인코더 별도텍스트 인코더 제외 VRAM 9.9GB
FLUX.2 [klein] 4B40억7.75GB · 인코더 별도약 13GB VRAM · RTX 3090/4070 이상
SD 3.5 Large81억16.46GB · 인코더 별도낮은 VRAM용 4비트 양자화 방법 안내
FLUX.1 dev120억23.8GB · 인코더 별도VRAM 수치 없음 · CPU 오프로드 예시
FLUX.2 [dev]320억64.45GB · 인코더 별도RTX 4090·5090에서 4비트 양자화 + 원격 텍스트 인코더 예시

표를 보고 홍길동이 처음 안 것은, 본체 파일이 VRAM에 통째로 올라가느냐가 첫 번째 갈림길이라는 점이다. 올라가면 빠르고, 넘치면 넘친 만큼을 시스템 RAM에 두고 오가며 계산하느라 느려진다.

SD 1.5, SD 3.5 Medium, SDXL, FLUX.2 klein 4B, SD 3.5 Large, FLUX.1 dev 의 공식 배포 본체 파일 크기를 8GB·16GB·24GB 눈금 위에 나란히 놓은 막대 도해
가로 눈금 8·16·24GB 가 곧 VRAM 구간이다. 막대가 눈금을 넘으면 그 카드에는 본체가 통째로 올라가지 않는다.

다만 파일 크기는 출발점일 뿐이다. 그림을 만드는 동안 쓰는 작업 공간이 따로 필요하고, 그 크기는 해상도와 한 번에 뽑는 장수에 따라 늘어난다. 파일이 VRAM과 거의 같은 크기라면 «올라가기는 하는데 뽑다가 멈추는» 자리에 있다고 보면 된다.

VRAM 8·12·16·24GB, 모델별로 되는 것과 막히는 것

위 숫자를 VRAM 구간에 맞대면 아래 표가 된다. 칸의 말은 네 가지다. «된다»는 본체가 VRAM에 여유 있게 들어가는 경우, «빠듯»은 파일과 VRAM이 거의 같은 크기라 해상도를 올리면 넘치기 쉬운 경우, «느리게»는 VRAM보다 커서 일부를 RAM으로 덜어 내며 도는 경우, «권하지 않음»은 공식 안내부터 더 큰 카드를 기준으로 삼는 경우다.

모델8GB12GB16GB24GB
SD 1.5된다된다된다된다
SDXL된다(공식 기준선)된다된다된다
SD 3.5 Medium느리게된다된다된다
FLUX.2 [klein] 4B느리게빠듯된다된다
SD 3.5 Large느리게fp8 빠듯fp8 된다16비트 된다
FLUX.1 dev느리게fp8 빠듯fp8 된다16비트 빠듯
FLUX.2 [dev]권하지 않음권하지 않음권하지 않음4비트 조건

fp8이라고 적은 칸은 가중치를 fp8로 불러왔을 때의 판정이다. fp8은 파라미터 하나에 1바이트라 81억 파라미터인 SD 3.5 Large는 8GB 남짓, 120억인 FLUX.1 dev는 12GB 남짓이 된다. ComfyUI 공식 예제도 FLUX 가중치를 fp8로 두면 메모리 사용량이 절반으로 준다고 적었다.

홍길동의 8GB 카드로 읽으면 답이 분명해진다. SD 1.5와 SDXL은 된다. SD 3.5 Medium부터는 공식 수치가 카드보다 크고, FLUX 계열은 fp8로 줄여도 본체가 카드를 넘는다. 「8GB로 FLUX를 돌렸다」는 글이 거짓은 아니지만, 그 글은 대개 일부를 RAM으로 덜어 내며 느리게 돌린 경우다.

VRAM 8GB 12GB 16GB 24GB 구간별로 SD 1.5 SDXL SD 3.5 FLUX 계열이 된다 빠듯 느리게 4비트 조건 중 어디에 드는지 정리한 도해
12GB 에서 16GB 로 넘어가는 자리에서 칸의 말이 가장 많이 바뀐다.

24GB면 끝인가 — RTX 4090의 자리

24GB는 이 표에서 FLUX.2 [dev] 한 줄을 빼면 다 열린다. 그 한 줄이 뜻하는 바가 있다. FLUX.2 [dev] 공식 모델 카드는 RTX 4090이나 5090 같은 소비자용 카드에서 돌리는 예로 4비트로 양자화한 모델에 텍스트 인코더는 원격으로 쓰는 방식을 든다. 320억 파라미터의 16비트 본체가 64.45GB이니 24GB 카드도 그대로는 못 싣는다는 뜻이다.

FLUX.1 dev의 16비트 본체(23.8GB)도 24GB에 겨우 들어가는 크기라, 해상도를 올리거나 LoRA를 겹치면 여유가 금방 사라진다. 24GB에서도 fp8이 선택지로 남는 이유다. 공식 예제는 fp8이 품질을 조금 떨어뜨리니 자원이 되면 16비트 원본을 권한다고 함께 적었다.

12GB와 16GB 사이가 가장 크게 갈린다

표에서 칸의 말이 가장 많이 바뀌는 곳이 12GB에서 16GB로 넘어가는 자리다. FLUX.1 dev fp8과 SD 3.5 Large fp8이 «빠듯»에서 «된다»로 바뀌고, 공식 수치가 약 13GB인 FLUX.2 [klein] 4B도 여기서 들어간다. 반대로 SDXL까지만 쓸 생각이라면 12GB와 16GB의 차이는 거의 드러나지 않는다.

카드 이야기는 여기까지만 한다. 어떤 카드를 살지는 이 표에서 내가 쓰고 싶은 모델 줄을 먼저 고른 다음의 문제다.

RAM이 모자라면 VRAM이 남아도 막힌다

표를 본 홍길동은 그래도 FLUX.1 dev를 fp8로 한번 돌려 보기로 했다. 8GB 카드라 느릴 것은 각오했다. 그런데 먼저 막힌 곳은 VRAM이 아니라 시스템 RAM이었다.

ComfyUI는 VRAM에 다 못 올리는 모델을 RAM에 두고 필요한 만큼씩 옮겨 가며 계산한다. 공식 README가 «VRAM과 RAM 관리, 모델 오프로딩»을 기능으로 내세우고, 실행 옵션 설명에도 기본적으로 모델은 쓴 뒤 CPU 메모리로 내려간다고 적혀 있다. 즉 VRAM에서 넘친 만큼이 RAM의 몫이 된다.

그래서 모델이 커질수록 RAM도 같이 필요해진다. ComfyUI 공식 예제는 FLUX와 SD 3.5가 쓰는 T5 텍스트 인코더를 두고, RAM이 32GB보다 많으면 16비트판(9.79GB)을, 그렇지 않으면 fp8판을 쓰라고 권한다. 그리고 ComfyUI 공식 예제가 안내하는 FLUX.1 dev fp8 단일 파일(텍스트 인코더 포함)이 17.25GB인데, 홍길동의 RAM은 16GB였다. 파일 하나가 RAM 전체보다 크다.

RAM이 모자라면 윈도는 디스크의 가상 메모리를 빌린다. 그때부터는 VRAM과 RAM 사이를 오가던 데이터가 디스크까지 오가게 되고, 속도는 한 번 더 떨어진다. 얼마나 느려지는지는 디스크 종류와 설정에 따라 크게 달라서 한 숫자로 말하기 어렵다.

RAM을 가늠하는 법

쓰려는 모델의 본체와 텍스트 인코더 파일을 더한 크기가 «VRAM + RAM» 안에 들어오는지 먼저 본다. 여기에 윈도와 브라우저가 쓰는 몫이 따로 든다. SDXL 체크포인트(6.94GB)는 인코더까지 한 파일이라 이 계산이 어렵지 않고, FLUX · SD 3.5로 가면 공식 예제가 기준으로 삼은 32GB가 첫 갈림길이 된다.

막히는 자리 — 멈추는 오류와 조용한 느려짐

VRAM이 모자랄 때 벌어지는 일은 두 갈래다. 홍길동은 며칠 사이에 두 가지를 다 겪었다.

VRAM이 모자랄 때 오류 없이 느려지는 경우와 CUDA out of memory 오류로 멈추는 경우를 나누고 오류 문장에서 읽을 세 곳을 정리한 대조 도해
느려지는 쪽은 고장이 아니라 속도를 내준 것이고, 멈추는 쪽은 오류 문장 세 군데를 읽으면 원인이 좁혀진다.

멈추는 쪽 — CUDA out of memory

SDXL을 잘 쓰던 홍길동이 해상도를 크게 올리고 한 번에 네 장을 뽑으려 하자 작업이 멈추고 이런 모양의 문장이 떴다. 괄호 안은 상황마다 다른 숫자가 들어가는 자리다.

오류 문장의 모양
CUDA out of memory. Tried to allocate (요청한 크기).
GPU 0 has a total capacity of (카드 전체) of which (남은 양) is free.
… is reserved by PyTorch but unallocated.

이 문장은 PyTorch가 내는 것이라 ComfyUI든 Forge든 같은 모양으로 나온다. 읽을 곳은 세 군데다.

  • Tried to allocate 뒤의 크기 — 마지막에 한 번 더 달라고 했다가 못 받은 덩어리다. 모델 전체의 크기가 아니다.
  • total capacity — 카드 전체 VRAM이다. 앞에서 확인한 숫자와 같아야 한다.
  • of which … is free — 그 순간 남아 있던 양이다. 요청한 크기보다 조금 모자랐다면 해상도나 장수를 한 단계 줄이는 것으로 풀릴 가능성이 높다.

반대로 요청한 크기는 작은데 남은 양이 거의 없다면, 모델 자체가 이미 카드를 거의 채운 상태다. 그때는 해상도를 만지기보다 모델이나 정밀도를 바꿔야 한다.

느려지는 쪽 — 오류 없이 한참 걸린다

FLUX.1 dev를 돌렸을 때는 오류가 나지 않았다. 대신 한 장이 한참 걸렸다. 고장이 아니라 속도를 내주고 계속 돈 것이다. 이렇게 되는 길은 두 가지다.

하나는 프로그램이다. 앞 절의 오프로딩이 여기에 해당한다. 최신 ComfyUI는 NVIDIA 카드와 PyTorch 2.8 이상에서 «DynamicVRAM»이라는 방식을 스스로 켜고, 시작 로그에 DynamicVRAM support detected and enabled 라는 줄을 남긴다. VRAM보다 큰 모델도 이렇게 RAM과 나눠 올려서 돌기는 돈다. 대가는 속도다.

다른 하나는 그래픽 드라이버다. NVIDIA 공식 지원 문서에 따르면 드라이버 536.40부터 GPU 메모리가 바닥나면 공유 메모리를 쓰게 해서, 전에는 멈추던 프로그램이 느린 속도로 계속 돌게 됐다. 같은 문서는 스테이블 디퓨전이 6GB 가까운 GPU 메모리를 자주 요구해 6GB 카드에서 이 동작이 걸리기 쉽다고 적었고, 546.01부터 이 동작을 끄는 설정을 넣었다.

드라이버 폴백을 끄는 자리 · NVIDIA 공식 안내

NVIDIA 제어판 → 3D 설정 관리 → 프로그램 설정 탭에서 스테이블 디퓨전이 쓰는 python.exe를 추가하고, CUDA - Sysmem Fallback PolicyPrefer No Sysmem Fallback으로 바꾼다. 적용한 뒤에는 프로그램을 다시 켜야 한다. 되돌릴 때는 같은 자리에서 Driver Default로 바꾼다.

끄면 속도는 일정해지지만, 모자랄 때 느려지는 대신 멈춘다. 한 장씩 천천히 뽑아도 되면 켜 두는 편이 편하고, 갑자기 느려지는 원인을 찾고 싶다면 끄고 오류 문장을 보는 편이 빠르다.

되는 설정 — 품질을 덜 내주는 것부터

막혔을 때 홍길동이 손본 순서다. 요령은 하나, 모델의 품질을 건드리지 않는 것부터 바꾸는 것이다.

VRAM이 모자랄 때 해상도 맞추기 한 장씩 뽑기 텍스트 인코더 fp8 본체 가중치 fp8 작은 모델로 바꾸기 순서로 손보는 흐름 도해
앞의 두 단계는 모델의 품질을 건드리지 않는다. 뒤로 갈수록 품질이나 그림의 결을 조금씩 내준다.
01

해상도를 모델의 기준에 맞춘다

SD 1.5는 512×512로 학습됐다(공식 모델 카드). ComfyUI 공식 예제는 SDXL이 제 성능을 내려면 1024×1024, 또는 896×1152처럼 픽셀 수가 같은 크기로 두라고 한다. 기준 크기는 모델이 가장 잘 그리는 크기라, 크게 올렸던 해상도를 여기로 되돌리는 것은 품질을 내주는 쪽이 아니다. 더 큰 그림이 필요하면 기준 크기로 먼저 뽑고 나서 키운다.

02

한 번에 한 장만 뽑는다

배치 크기를 1로 둔다. 네 장을 한 번에 뽑으면 작업 공간도 그만큼 커진다. 모델 크기와는 상관이 없어서, 모델은 올라가는데 생성 도중에 멈출 때 가장 먼저 볼 자리다.

03

텍스트 인코더를 fp8판으로

T5 인코더 16비트판(9.79GB) 대신 fp8판(4.89GB)을 쓴다. ComfyUI 공식 예제가 RAM이 32GB를 넘지 않을 때 권하는 선택이다.

04

본체 가중치를 fp8로

ComfyUI의 Load Diffusion Model 노드에서 weight_dtype을 fp8로 두면 메모리 사용량이 절반으로 준다. 공식 예제는 대가로 품질이 아주 조금 떨어질 수 있다고 적었다. 처음부터 fp8로 묶어 둔 단일 파일(FLUX.1 dev 17.25GB · SD 3.5 Large 14.93GB, 둘 다 텍스트 인코더 포함)도 ComfyUI 공식 예제가 안내하는 저장소에 있다.

05

한 단계 작은 모델로 내려간다

그래도 안 되면 모델을 바꾼다. FLUX.1 dev가 막히면 FLUX.2 [klein] 4B나 SDXL 계열로, SD 3.5 Large가 막히면 Medium으로 내려간다. 모델을 바꾸는 순간 그림의 결이 달라지니 맨 마지막에 둔다.

실행 옵션은 «옛 조언»을 조심한다

「VRAM이 적으면 --lowvram을 붙이라」는 조언이 많다. 예전 ComfyUI에서는 맞는 말이었지만 지금 공식 옵션 설명은 다르다. --lowvramDynamicVRAM이 켜져 있으면 아무 일도 하지 않고, 꺼져 있을 때만 텍스트 인코더를 CPU에서 돌린다고 되어 있다. 시작 로그에서 DynamicVRAM이 켜진 것을 봤다면 이 옵션은 붙여도 달라지는 것이 없다.

대신 쓸 만한 것이 --reserve-vram이다. 윈도나 다른 프로그램이 쓸 VRAM을 GB 단위로 남겨 두게 하는 옵션이라, 브라우저나 영상 프로그램을 함께 켜 두는 PC에서 갑자기 멈추는 일을 줄이는 데 쓴다.

하나 더 있다. ComfyUI 코드 안의 안내문은 GGUF 파일을 쓰는 사람에게 DynamicVRAM을 켠 채 ComfyUI 기본 형식을 쓰라고 권하며, fp8 · int8 같은 기본 형식이 메모리보다 커도 더 빠를 것이라고 적었다. 「VRAM이 적으면 무조건 GGUF」도 이제는 한 번 따져 볼 조언이다.

Forge를 쓴다면 «GPU Weight»부터

Forge 계열은 화면의 «GPU Weight»로 VRAM에 올릴 몫을 정한다. Forge 공식 README는 FLUX 성능 문제를 두고 GPU Weight를 너무 높게 두지 말라, 낮추면 문제의 99%가 풀린다고 적었다. 카드 VRAM을 꽉 채우도록 올리면 작업 공간이 모자라 오히려 느려지거나 멈춘다.

홍길동이 고른 길, 그리고 다음 편

정리하면 홍길동의 PC(VRAM 8GB · RAM 16GB)에서 편하게 되는 것은 SD 1.5와 SDXL 계열이었다. SDXL은 Stability AI가 8GB 카드에서 동작한다고 밝힌 모델이고, 커뮤니티가 SDXL을 바탕으로 만든 체크포인트도 구조가 같아 크기가 비슷하니 고를 폭이 넓다. FLUX는 «돌기는 도는» 자리에 있었지만 매번 한참 기다려야 했고, RAM이 파일보다 작아 오래 쓰기에는 불편했다.

그래서 홍길동은 SDXL로 시작하고, FLUX는 RAM을 늘리거나 카드를 바꿀 때 다시 따져 보기로 했다. 표에서 «내가 쓰고 싶은 모델 줄»을 먼저 고르고, 그 줄이 «된다»가 되는 VRAM과 RAM을 확인하는 순서다. 카드를 먼저 사고 모델을 거기에 맞추면 이 표를 거꾸로 읽게 된다.

모델을 정했으면 받을 차례다. 체크포인트를 어디서 받고 어떤 파일 형식을 골라야 하는지는 Civitai·허깅페이스에서 모델을 안전하게 받는 법에 정리해 두었다.

다음 편 예고 · 내 PC로 AI 그림 그리기 2편

카드로 되는 모델을 골랐으면 이제 프로그램을 깐다. 다음 편은 «ComfyUI 데스크톱과 포터블, 무엇을 깔까»다. 두 설치 방식의 용량과 설치 위치, 그리고 «스테이블 디퓨전을 따로 설치해야 하나»라는 물음을 다룬다. A1111 · Forge Neo · ComfyUI를 한 표로 견준 내용은 스테이블 디퓨전 설치 방법 비교에서 먼저 볼 수 있다.

자주 묻는 것

VRAM 8GB로 스테이블 디퓨전이 되나요?

된다. SD 1.5는 여유가 있고, SDXL은 Stability AI가 8GB VRAM 소비자용 GPU에서 동작한다고 밝힌 모델이다. SD 3.5 Medium은 공식 수치(텍스트 인코더 제외 9.9GB)가 8GB보다 커서 일부를 RAM으로 덜어 내며 느리게 돌고, FLUX 계열은 fp8로 줄여도 본체가 8GB를 넘는다.

RAM은 몇 GB가 있어야 하나요?

ComfyUI 공식 문서에는 최소치가 없다. 다만 ComfyUI 공식 예제는 FLUX와 SD 3.5가 쓰는 T5 텍스트 인코더를 두고 RAM이 32GB보다 많으면 16비트판(9.79GB)을, 그렇지 않으면 fp8판을 쓰라고 권한다. SD 1.5·SDXL까지라면 부담이 작고, FLUX·SD 3.5로 가면 32GB가 첫 갈림길이다.

RTX 4090(24GB)이면 모든 모델이 되나요?

대부분 된다. 다만 FLUX.1 dev의 16비트 본체가 23.8GB라 여유가 거의 없고, FLUX.2 [dev](320억 파라미터)는 공식 모델 카드도 RTX 4090·5090에서 4비트 양자화 모델에 원격 텍스트 인코더를 쓰는 방식을 예시로 든다. 24GB도 그대로 싣지는 못한다는 뜻이다.

오류는 안 났는데 한 장에 한참 걸려요. 고장인가요?

대개 고장이 아니라 VRAM이 모자라 RAM을 빌려 쓰는 중이다. ComfyUI는 넘치는 모델을 RAM으로 덜어 두고, NVIDIA 드라이버도 536.40부터 GPU 메모리가 바닥나면 공유 메모리로 넘어가 느린 속도로 계속 돈다. 546.01부터는 NVIDIA 제어판의 CUDA - Sysmem Fallback Policy에서 이 동작을 끌 수 있다.

--lowvram 옵션을 붙이면 나아지나요?

최신 ComfyUI에서는 대개 달라지지 않는다. 공식 옵션 설명에 따르면 --lowvram은 DynamicVRAM이 켜져 있으면 아무 일도 하지 않고, 꺼져 있을 때만 텍스트 인코더를 CPU에서 돌린다. 시작 로그에 DynamicVRAM support detected and enabled가 보이면 이미 VRAM을 자동으로 나눠 쓰고 있는 것이다.

참고 자료

  1. CompVis. stable-diffusion README — SD 1.x의 UNet 8.6억 · 텍스트 인코더 1.23억 파라미터, VRAM 10GB 이상 GPU 문장. github.com
  2. Hugging Face. stable-diffusion-v1-5 모델 카드·파일 — 512×512 학습, v1-5-pruned-emaonly 4.27GB. huggingface.co
  3. Stability AI. Announcing SDXL 1.0 — 기본 모델 35억 파라미터, 8GB VRAM 소비자용 GPU 문장. stability.ai
  4. Hugging Face. stable-diffusion-xl-base-1.0 파일 — sd_xl_base_1.0.safetensors 6.94GB. huggingface.co
  5. Stability AI. Introducing Stable Diffusion 3.5 — Large 81억 · Medium 25억 파라미터, Medium 텍스트 인코더 제외 VRAM 9.9GB. stability.ai
  6. Hugging Face. stable-diffusion-3.5-large 모델 카드·파일 — sd3.5_large 16.46GB, 낮은 VRAM용 4비트 양자화 안내. huggingface.co
  7. Black Forest Labs. FLUX.1 [dev] 모델 카드·파일 — 120억 파라미터, flux1-dev 23.8GB. huggingface.co
  8. Black Forest Labs. FLUX.2 [dev] · FLUX.2 [klein] 4B 모델 카드 — 320억 파라미터와 RTX 4090·5090 4비트 예시, 40억 파라미터와 약 13GB VRAM. FLUX.2 [dev] · FLUX.2 [klein] 4B
  9. ComfyUI. README · comfy/cli_args.py — VRAM·RAM 관리와 모델 오프로딩, --lowvram · --reserve-vram 옵션 설명, DynamicVRAM. github.com
  10. ComfyUI Examples. Flux · SD3 · SDXL — fp8 가중치로 메모리 절반, T5 인코더 RAM 32GB 기준, SDXL 해상도. comfyanonymous.github.io
  11. Comfy-Org. flux1-dev · stable-diffusion-3.5-fp8 — fp8 단일 파일 17.25GB · 14.93GB, T5 인코더 9.79GB · 4.89GB. flux1-dev · stable-diffusion-3.5-fp8
  12. ComfyUI Docs. System Requirements — 운영체제·파이썬·GPU 종류만 적고 최소 VRAM·RAM 수치는 없다. docs.comfy.org
  13. PyTorch. c10/cuda/CUDACachingAllocator.cpp — CUDA out of memory 오류 문장. github.com
  14. NVIDIA Support. System Memory Fallback for Stable Diffusion — 드라이버 536.40·546.01, CUDA - Sysmem Fallback Policy. 원문 주소(nvidia.custhelp.com, 문서 번호 5490)가 발행일에 사이트 오류를 내서, 인터넷 아카이브에 보관된 같은 문서로 내용을 확인했다. web.archive.org
  15. NVIDIA. GeForce RTX 3060 · 4060 Ti · 5060 Ti · 5070 · 4090 사양 — 메모리 구성. nvidia.com
  16. lllyasviel. stable-diffusion-webui-forge README — GPU Weight를 너무 높게 두지 말라는 안내. github.com
이 글의 파라미터 수와 파일 크기는 각 모델의 공식 모델 카드·발표문과 Hugging Face 공식 저장소의 배포 파일에서 옮겼고, 옵션 설명은 ComfyUI·Forge 공식 저장소와 NVIDIA 지원 문서를 따랐다. 표의 «된다·빠듯·느리게»는 본체 파일 크기와 VRAM을 맞대어 본 가늠이라, 실제 사용량은 해상도·장수·프로그램 버전·드라이버에 따라 달라진다. 홍길동은 설명을 위한 예시 인물이다.
스테이블디퓨전사양VRAMComfyUISDXLFLUXSD3.5그래픽카드
junetapa
junetapa
AI 도구를 직접 굴려 보고 남은 기록을 정리한다.
Twitter Facebook URL 복사