VRAM 최적화 플래그 설명 - ComfyUI 및 AI 생성 가이드
어텐션 모드, 모델 오프로딩, 정밀도 설정을 포함한 ComfyUI 및 AI 생성을 위한 모든 VRAM 최적화 플래그 이해하기
ComfyUI와 AI 생성 도구에는 수십 개의 VRAM 최적화 플래그와 설정이 있습니다. --lowvram, 어텐션 슬라이싱, FP16, CPU 오프로딩과 같은 용어를 보았지만 실제로 무엇을 하는지 또는 어떤 것을 사용해야 하는지 확실하지 않습니다. 이러한 플래그를 이해하면 특정 하드웨어에서 성능을 최대화할 수 있습니다.
빠른 답변: VRAM 최적화 플래그는 FP16 및 BF16 감소된 정밀도, 어텐션 계산 모드, CPU 오프로딩과 같은 기술을 통해 모델이 GPU 메모리를 사용하는 방식을 제어합니다. 주요 플래그에는 자동 적극적 최적화를 위한 --lowvram, 모든 것을 GPU에 유지하는 --gpu-only, xFormers나 SageAttention과 같은 어텐션 모드, 품질과 메모리의 균형을 맞추는 정밀도 플래그가 포함됩니다. VRAM 양과 생성 요구에 따라 플래그를 선택하세요.
- FP16 및 BF16 정밀도 플래그는 최소한의 품질 영향으로 메모리를 절반으로 감소
- xFormers와 같은 어텐션 모드는 메모리와 속도 개선을 제공
- 오프로딩 플래그는 GPU 메모리를 해제하기 위해 구성 요소를 CPU로 이동
- 저 VRAM 모드는 더 작은 GPU에서 실행할 수 있도록 속도를 희생
- 플래그 결합은 메모리 제약이 있는 설정에 누적 이점을 제공
VRAM은 로컬 AI 생성의 주요 제약입니다. 최적화 플래그를 이해하면 그렇지 않으면 하드웨어를 초과하는 모델을 실행하거나 겨우 맞는 모델에서 더 나은 성능을 얻을 수 있습니다. 각 주요 최적화 범주를 명확히 해봅시다.
정밀도 플래그는 무엇을 하나요?
정밀도 설정은 숫자가 저장되는 방식을 제어하여 메모리와 품질에 직접 영향을 줍니다.
FP32 전체 정밀도
FP32는 숫자당 32비트를 사용합니다. 이는 최대 수치 정밀도를 제공하지만 가장 많은 메모리를 사용합니다.
모델 가중치, 활성화, 그래디언트 모두 FP32에서 각각 4바이트를 차지합니다.
거의 모든 AI 생성은 실제로 FP32가 필요하지 않습니다. 일부 도구에서 기본값이지만 거의 최적이 아닙니다.
FP16 절반 정밀도
FP16은 숫자당 16비트를 사용하여 FP32 대비 메모리를 절반으로 줄입니다.
추론에 대한 품질 영향은 일반적으로 감지할 수 없습니다. 생성이 동일하게 보입니다.
FP16은 제한된 동적 범위로 인해 매우 크거나 작은 숫자에 문제가 있을 수 있습니다. 이것은 추론보다 트레이닝에 더 중요합니다.
대부분의 생성 도구는 기본적으로 FP16을 사용합니다. 잘 테스트되었고 신뢰할 수 있습니다.
BF16 브레인 플로트
BF16도 16비트를 사용하지만 지수와 가수 사이의 할당이 다릅니다.
FP32와 동일한 동적 범위를 가지지만 정밀도는 낮습니다. 이는 FP16보다 트레이닝을 더 잘 처리합니다.
Ampere 이상의 GPU가 필요합니다. RTX 30 시리즈 이상이 BF16을 기본 지원합니다.
추론의 경우 BF16과 FP16은 유사한 결과를 생성합니다. BF16은 트레이닝에 장점이 있습니다.
FP8 및 INT8
최신 GPU는 특정 작업을 위해 더 낮은 정밀도 형식을 지원합니다.
FP8은 8비트를 사용하고 FP16 대비 추가 50% 메모리 감소를 제공합니다. 품질 영향은 다양합니다.
INT8 양자화는 주로 추론 최적화를 위한 것입니다. 모델은 양자화 인식 준비가 필요합니다.
이러한 형식은 품질 트레이드오프가 허용될 때 더 큰 모델을 실행하거나 더 높은 처리량을 달성하는 데 유용합니다.
정밀도 선택
대부분의 사용자에게 FP16 또는 BF16이 최상의 균형을 제공합니다. 감지 가능한 품질 손실 없이 FP32의 절반 메모리.
더 큰 모델을 맞추거나 더 빠르게 실행해야 하고 잠재적 품질 감소를 수용할 수 있을 때 FP8을 사용합니다.
FP32는 더 낮은 정밀도에서 수치 아티팩트가 보이는 경우에만 사용하며, 이는 드뭅니다.
어텐션 모드는 메모리에 어떻게 영향을 주나요?
어텐션 계산은 메모리 집약적이며 최적화에서 큰 이점을 얻습니다.
표준 어텐션
기본 PyTorch 어텐션은 전체 어텐션 행렬을 한 번에 계산합니다.
메모리 사용량은 시퀀스 길이에 따라 이차적으로 증가합니다. 고해상도 이미지는 긴 시퀀스를 가집니다.
이것은 작동하지만 상당한 최적화 잠재력을 사용하지 않습니다.
xFormers 메모리 효율적 어텐션
xFormers는 한 번에 모든 것이 아닌 청크로 어텐션을 구현합니다.
메모리 사용량이 이차가 아닌 거의 선형이 됩니다. 이를 통해 훨씬 더 높은 해상도가 가능합니다.
메모리 효율성이 GPU 활용에 도움이 되므로 속도도 종종 향상됩니다.
xFormers는 별도로 설치해야 합니다. 널리 지원되고 잘 테스트되었습니다.
Flash Attention
Flash Attention은 메모리 전송을 최소화하기 위해 어텐션 작업을 융합합니다.
표준 어텐션보다 빠르고 메모리 효율적입니다.
Ampere 이상의 GPU가 필요합니다. 아직 모든 도구가 지원하지는 않습니다.
SageAttention
SageAttention은 어텐션을 위해 커스텀 Triton 커널을 사용합니다.
무료 ComfyUI 워크플로우
이 글의 기술에 대한 무료 오픈소스 ComfyUI 워크플로우를 찾아보세요. 오픈소스는 강력합니다.
성능은 일반적으로 xFormers보다 우수하며 유사한 메모리 이점이 있습니다.
Triton 설치가 필요하고 GPU용으로 컴파일이 필요할 수 있습니다.
어텐션 슬라이싱
어텐션 슬라이싱은 어텐션을 순차적으로 작은 배치로 처리합니다.
메모리를 크게 줄이지만 생성을 크게 느리게 합니다.
다른 어텐션 최적화가 충분하지 않을 때 최후의 수단으로 사용합니다.
어텐션 모드 선택
설정이 지원하는 경우 먼저 SageAttention 또는 Flash Attention을 시도하세요. 최고의 성능과 메모리.
광범위한 호환성과 좋은 결과를 위해 xFormers로 대체합니다.
효율적인 어텐션 모드로 실행할 수 없을 때만 어텐션 슬라이싱을 사용합니다.
모델 오프로딩은 무엇을 하나요?
오프로딩은 GPU 메모리를 해제하기 위해 모델 구성 요소를 CPU로 이동합니다.
전체 모델 오프로딩
적극적인 오프로딩으로 활발히 계산하는 모델 부분만 GPU에 남습니다.
구성 요소가 필요에 따라 CPU와 GPU 사이를 이동합니다. 이는 VRAM 사용량을 크게 줄입니다.
CPU에서 GPU로의 전송이 느리기 때문에 속도가 크게 저하됩니다.
텍스트 인코더 오프로딩
텍스트 인코더는 프롬프트를 인코딩하기 위해 생성 시작 시에만 필요합니다.
인코딩 후 CPU로 오프로딩하면 주요 디퓨전 프로세스를 위한 메모리가 해제됩니다.
인코딩이 전체 시간의 작은 부분이므로 속도 영향은 최소입니다.
복잡함을 건너뛰고 싶으신가요? Apatero 는 기술적 설정 없이 즉시 전문 AI 결과를 제공합니다.
VAE 오프로딩
VAE는 생성 마지막에 잠재 변수를 이미지로 디코딩합니다.
디퓨전 중에 VAE를 오프로딩하면 주요 모델을 위한 메모리가 해제됩니다.
VAE는 마지막에 디코딩을 위해 다시 로드되어 약간의 시간 오버헤드가 추가됩니다.
순차적 오프로딩
순차적 오프로딩은 계산 중에 모델 레이어를 하나씩 GPU로 이동합니다.
각 레이어가 로드되고, 계산되고, 언로드됩니다. 최소 GPU 메모리가 필요합니다.
매우 느리지만 매우 작은 GPU에서 매우 큰 모델을 실행할 수 있습니다.
오프로딩 사용 시기
텍스트 인코더 오프로딩은 최소한의 속도 영향과 가치 있는 메모리 절약이 있습니다. 기본적으로 사용합니다.
VAE 오프로딩은 VAE가 주요 모델과 메모리를 경쟁할 때 도움이 됩니다. 제한된 VRAM에 좋습니다.
전체 오프로딩은 다른 것이 맞지 않을 때 최후의 수단입니다. 실행할 수 있는 능력을 위해 느린 생성을 수용합니다.
저 VRAM 모드란 무엇인가요?
메모리 제약 시스템을 위한 미리 구성된 최적화 조합.
--lowvram 플래그
어텐션 슬라이싱과 오프로딩을 포함한 적극적인 최적화 조합을 활성화합니다.
4-8GB VRAM의 GPU용으로 설계되었습니다. 그렇지 않으면 실행되지 않을 모델을 실행할 수 있게 합니다.
속도가 크게 감소하지만 생성이 가능합니다.
--medvram 플래그
8-12GB GPU를 위한 중간 최적화.
lowvram보다 덜 적극적이며 더 나은 속도.
다른 115명의 수강생과 함께하세요
51개 레슨으로 초현실적인 AI 인플루언서 만들기
생생한 피부 디테일, 전문가급 셀카, 복잡한 장면으로 초현실적인 AI 인플루언서를 만드세요. 하나의 패키지로 두 개의 완전한 과정을 받으세요. 기술을 마스터하는 ComfyUI Foundation과 AI 크리에이터로 자신을 마케팅하는 방법을 배우는 Fanvue Creator Academy.
GPU가 모델에 대해 경계선일 때 좋은 시작점.
--gpu-only 플래그
lowvram의 반대. 오프로딩 없이 모든 것을 GPU에 유지합니다.
최대 속도지만 충분한 VRAM이 필요합니다.
충분한 VRAM이 있고 가장 빠른 생성을 원할 때 사용합니다.
자동 감지
일부 도구는 VRAM을 자동 감지하고 적절한 플래그를 적용합니다.
이것은 일반적으로 작동하지만 특정 상황에서는 수동 재정의가 더 나을 수 있습니다.
자동 감지가 문제를 일으키면 원하는 플래그를 명시적으로 설정합니다.
최적화를 어떻게 결합하나요?
여러 최적화가 누적 이점을 위해 쌓입니다.
정밀도와 어텐션 결합
FP16과 xFormers를 함께 사용하면 두 가지 메모리 감소를 제공합니다.
이 조합은 대부분의 설정에서 표준이며 좋은 균형을 제공합니다.
오프로딩 추가
추가 메모리를 해제하기 위해 텍스트 인코더 오프로딩을 추가합니다.
이 조합은 대부분의 소비자용 GPU에서 대부분의 모델을 처리합니다.
점진적 확대
최소 최적화로 시작합니다. OOM이 발생하면 더 추가합니다.
먼저 FP16, 그 다음 효율적인 어텐션, 그 다음 오프로딩, 그 다음 어텐션 슬라이싱.
안정성에 필요한 최소 최적화를 찾습니다.
수확 체감
일부 조합은 한계 추가 이점을 제공합니다.
이미 맞는 모델에 대한 매우 적극적인 최적화는 성능을 낭비합니다.
최적화 수준을 실제 필요에 맞춥니다.
이러한 기술 설정을 관리하지 않고 최적의 생성을 원하는 사용자를 위해 Apatero.com은 적절히 구성된 생성 인프라에 대한 액세스를 제공합니다. 플래그 구성 없이 최대 성능을 얻습니다.
자주 묻는 질문
8GB VRAM에는 어떤 플래그를 사용해야 하나요?
--medvram 또는 xFormers와 텍스트 인코더 오프로딩을 사용한 FP16으로 시작합니다. 여전히 OOM이면 VAE 오프로딩을 추가하거나 --lowvram으로 전환합니다.
FP16은 이미지 품질에 영향을 주나요?
추론의 경우 거의 모든 경우에 품질 영향은 감지할 수 없습니다. FP16은 생성의 표준입니다.
lowvram 모드로 생성이 느린 이유는?
lowvram은 모든 작업에 CPU에서 GPU로의 전송이 필요한 적극적인 오프로딩을 사용합니다. 이것은 본질적으로 느리지만 실행을 가능하게 합니다.
여러 어텐션 최적화를 함께 사용할 수 있나요?
아니요, 하나를 선택하세요. xFormers, Flash Attention, SageAttention은 보완이 아닌 대안입니다.
항상 가장 적극적인 최적화를 사용해야 하나요?
아니요, 과도한 최적화는 속도를 낭비합니다. 안정적인 작동에 필요한 최소 최적화를 사용하세요.
생성을 위한 FP16과 BF16의 차이는?
추론의 경우 결과는 유사합니다. BF16은 극단적인 값을 더 잘 처리하지만 둘 다 생성에 잘 작동합니다.
어텐션 슬라이싱은 항상 도움이 되나요?
메모리를 줄이지만 생성을 느리게 합니다. 효율적인 어텐션 모드가 충분하지 않을 때만 사용합니다.
이러한 최적화가 트레이닝에 도움이 될 수 있나요?
네, 유사한 최적화가 트레이닝에 적용됩니다. 그래디언트 체크포인팅은 특히 트레이닝 메모리에 중요합니다.
모든 최적화로도 여전히 OOM이 발생하는 이유는?
모델이 실제로 사용 가능한 것보다 더 많은 VRAM이 필요할 수 있습니다. 더 작은 모델이나 클라우드 인스턴스를 시도하세요.
어떤 최적화가 도움이 되는지 어떻게 아나요?
하나씩 활성화하고 VRAM 사용량을 확인합니다. 이것은 실제로 도움이 되는 최적화를 식별합니다.
결론
VRAM 최적화 플래그는 메모리 사용량과 성능 사이의 트레이드오프를 제어할 수 있게 합니다. 각 플래그가 무엇을 하는지 이해하면 하드웨어에 최적의 설정을 구성하는 데 도움이 됩니다.
대부분의 사용자에게 메모리 효율적인 어텐션을 사용한 FP16 또는 BF16 정밀도는 우수한 결과를 제공합니다. 추가 메모리 절약이 필요할 때 오프로딩을 추가합니다.
어텐션 슬라이싱과 같은 적극적인 최적화는 다른 것이 작동하지 않는 상황을 위해 남겨둡니다. 속도 비용이 높습니다.
최적화 수준을 실제 필요에 맞춥니다. 더 많은 것이 항상 더 좋은 것은 아니며 불필요한 최적화는 성능을 낭비합니다.
플래그 관리 없이 자동 최적화를 선호하는 사용자를 위해 Apatero.com은 전문적인 구성으로 생성에 대한 액세스를 제공합니다. 모든 플래그를 직접 이해하지 않고도 최적의 성능을 얻습니다.
AI 인플루언서를 만들 준비가 되셨나요?
완전한 51레슨 과정에서 ComfyUI와 AI 인플루언서 마케팅을 마스터하는 115명의 학생들과 함께하세요.