GPU 메모리
GPU Memory (VRAM) · 고급
GPU 메모리(VRAM)는 그래픽 처리 장치에 탑재되어 모델 가중치, 활성화 값, 중간 연산 결과 등을 저장하는 고속 전용 메모리를 말한다.
딥러닝 모델은 학습과 추론 과정에서 대량의 파라미터와 중간 텐서를 끊임없이 읽고 써야 하는데, 일반 시스템 메모리는 GPU와의 전송 대역폭이 낮아 병목이 되므로 GPU 연산 유닛 바로 옆에 붙은 고대역폭 전용 메모리가 필요하다. VRAM은 모델 가중치, 옵티마이저 상태, 배치 단위 활성화 값, KV 캐시 등을 담아 GPU가 매우 빠르게 접근하도록 해주며, 필요한 데이터가 VRAM 용량을 넘으면 일부를 시스템 메모리나 디스크로 내리는 오프로딩이 일어나 처리 속도가 크게 떨어진다. 실무에서는 모델을 서빙하다가 OOM(Out of Memory) 오류를 만나거나, 배치 크기나 컨텍스트 길이를 늘렸을 때 VRAM 부족으로 추론이 실패하는 상황, 또는 여러 GPU에 모델을 나누는 텐서 병렬화·모델 병렬화를 설계할 때 VRAM 용량이 핵심 제약으로 작용하는 경우에 자주 마주친다. VRAM 용량만 크면 성능이 무조건 좋아진다고 오해하기 쉽지만, 실제 처리 속도는 메모리 대역폭과 GPU 연산 성능이 함께 맞물려 결정되며, 양자화나 KV 캐시 압축처럼 VRAM 사용량 자체를 줄이는 기법도 중요한 최적화 수단이다.
함께 보기
텐서 병렬화하나의 거대한 신경망 레이어(행렬 연산)를 여러 개의 조각으로 쪼개어 여러 개의 가속기(GPU)에 나누어 계산하고 결과를 다시 합치는 병렬화 기법을 말한다.KV 캐시트랜스포머 기반 언어 모델이 토큰을 하나씩 생성할 때 이미 계산한 어텐션의 키(Key)와 값(Value) 벡터를 저장해 두었다가 다음 토큰 생성 시 재사용함으로써 중복 계산을 없애는 추론 최적화 기법을 말한다.