헬창 개발자

How much need VRAM by using LLM? 본문

공부방

How much need VRAM by using LLM?

찬배 2024. 9. 5. 17:41

다음 내용은 Llama 3.1 기준으로 작성 되었습니다.

 

추론 메모리 요구 사항

추론의 경우 메모리 요구 사항은 모델 크기와 가중치의 정확도에 따라 달라진다.

다음은 다양한 구성에 필요한 대략적인 메모리를 보여주는 표이다.

모델 크기 FP16 FP8 INT4
8B 16 GB 8 GB 4 GB
70B 140 GB 70 GB 35 GB 
405B 810 GB 405 GB 203 GB

참고: 위에 인용된 숫자는 모델 체크포인트를 로드하는 데 필요한 GPU VRAM을 나낸다.

 

예를 들어, H100 노드(8x H100)는 약 640GB의 VRAM을 가지고 있으므로 405B 모델은 다중 노드 설정에서 실행하거나 더 낮은 정밀도(예: FP8)에서 실행해야 하며, 이것이 권장되는 접근 방식임.

 

낮은 정밀도(예: INT4)는 정확도가 다소 떨어질 수 있지만 메모리 요구 사항을 크게 줄이고 추론 속도를 높일 수 있다. 모델 가중치 외에도 KV 캐시를 메모리에 보관해야 한다.

 

여기에는 모델 컨텍스트의 모든 토큰의 키와 값이 포함되어 있으므로 새 토큰을 생성할 때 다시 계산할 필요가 없다.

 

특히 긴 사용 가능한 컨텍스트 길이를 사용할 때 이는 중요한 요소가 된다.

 

FP16에서 KV 캐시 메모리 요구 사항은 다음과 같다.

모델 크기 1k tokens 16k tokens 128k tokens
8B 0.125 GB 1.95 GB  15.62 GB 
70B 0.313 GB 4.88 GB  39.06 GB
405B 0.984 GB 15.38 GB 123.05 GB

특히 작은 모델의 경우 컨텍스트 길이가 최대치에 가까워지면 캐시는 가중치만큼 많은 메모리를 사용한다.

훈련 메모리 요구 사항

다음 표는 다양한 기술을 사용하여 Llama 3.1 모델을 훈련하는 데 필요한 대략적인 메모리 요구 사항을 간략하게 설명한다.

모델 크기 Full Fine-tuning
LoRA Q-LoRA
8B 60 GB 16 GB 6 GB
70B 500 GB 160 GB 48 GB
405B 3.25 TB 950 GB 250 GB

참고: 이는 추정치이며 특정 구현 세부 사항 및 최적화에 따라 달라질 수 있다.

 

----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- -----

gemma2 모델 vram 사용량

 

Can You Run It? LLM version - a Hugging Face Space by Vokturz

 

huggingface.co

 

Comments