Apple Silicon 대규모 LLM 및 MLLM 효율 추론
초록
본 논문은 Apple Silicon의 통합 메모리 구조를 활용한 네이티브 LLM·MLLM 추론 프레임워크 vllm‑mlx를 제안한다. MLX 기반으로 구현된 이 시스템은 텍스트 모델에 연속 배치를 적용해 llama‑cpp 대비 21 %‑87 % 높은 토큰 처리량을 달성하고, 멀티모달 모델에서는 이미지·비디오 해시 기반 프리픽스 캐시를 통해 비전 인코딩을 중복 제거해 최대 28배의 지연 감소를 구현한다. M4 Max 환경에서 525 tok/s 텍스트 처리와 1 초 이하 멀티모달 응답을 입증했으며, 오픈소스로 공개한다.
상세 분석
vllm‑mlx는 Apple Silicon의 통합 메모리(통합된 CPU·GPU·Neural Engine 메모리 풀)를 최대한 활용하도록 설계되었다. 기존 PyTorch MPS는 CUDA‑style 연산을 Metal에 포팅한 형태로, 메모리 복사와 커널 호출 오버헤드가 존재한다. 반면 MLX는 Metal 위에 직접 구현된 연산 스택을 제공하며, ‘zero‑copy’와 ‘lazy evaluation’ 메커니즘을 통해 연산 그래프를 자동으로 병합하고 메모리 할당을 최소화한다. 이러한 특성은 특히 KV‑cache와 같은 대용량 텐서가 지속적으로 메모리에 상주해야 하는 LLM 추론에서 큰 이점을 만든다.
텍스트 모델에 적용된 연속 배치 스케줄러는 토큰 경계에서 새로운 요청을 기존 배치에 삽입하고, 완료된 요청은 즉시 배치에서 제거한다. 이는 전통적인 배치 방식이 모든 시퀀스가 종료될 때까지 기다려야 하는 비효율을 해소하고, GPU 활용률을 크게 끌어올린다. 실험 결과, Qwen3‑0.6B 모델은 단일 요청 시 441 tok/s에서 16 동시 요청 시 1 642 tok/s로 3.7배 향상되었으며, 모델 규모가 커질수록 메모리 대역폭 포화 현상이 나타나지만 여전히 2.6배 이상의 스케일링을 보였다.
멀티모달 지원에서는 ‘콘텐츠 기반 프리픽스 캐시’를 도입했다. 이미지 파일이 URL, base64, 로컬 경로 등 다양한 형태로 들어오더라도 픽셀 데이터를 디코딩한 뒤 SHA‑256 해시를 계산해 동일 이미지를 식별한다. 캐시에는 비전 인코더 출력인 임베딩과 해당 시점의 KV‑state가 저장되며, 동일 이미지가 재요청될 경우 비전 인코더 실행을 건너뛰고 바로 KV‑state를 재활용한다. 이 메커니즘은 이미지당 1.5‑4 초의 비전 인코딩 지연을 0.78 초 이하로 감소시켜 28배 이상의 속도 향상을 달성한다. 비디오 처리에서도 프레임 단위 해시 캐시를 적용해 64프레임(8 fps) 비디오에 대해 18.2 초 → 0.78 초 수준의 가속을 기록했다.
성능 평가에서는 4‑bit 양자화(Q4_K_M) 모델을 모두 동일 조건에서 테스트했으며, vllm‑mlx는 llama‑cpp 대비 평균 1.4배 이상의 토큰 처리량을 보였다. 특히 작은 모델(0.6 B)에서 1.87배, 대형 MoE 모델(Nemotron‑30B‑A3B)에서도 1.17배의 이점을 유지한다. 텍스트 프리픽스 캐시 역시 512‑token 공유 프리픽스에 대해 5.8배의 TFT(Time‑to‑First‑Token) 감소를 입증했다.
한계점으로는 캐시 메모리 관리가 LRU 기반으로 단순히 용량을 제한하고 있어, 고해상도 이미지·비디오가 다수 동시에 캐시될 경우 캐시 적중률이 떨어질 수 있다. 또한 현재는 KV‑cache 재사용이 동일 프리픽스에만 적용되므로, 프롬프트 변형이 잦은 상황에서는 효과가 제한적이다. 향후 연구에서는 해시 충돌 최소화와 멀티‑GPU(또는 Neural Engine) 협업 스케줄링, 그리고 프리픽스 유사도 기반 캐시 매칭 기법을 도입해 보다 일반화된 재사용 메커니즘을 탐색할 필요가 있다.
전반적으로 vllm‑mlx는 Apple Silicon 기반 로컬 AI 서비스에 필요한 텍스트·멀티모달 전반을 포괄하는 최초의 오픈소스 솔루션으로, 통합 메모리와 MLX의 특성을 살린 최적화가 실질적인 성능 향상으로 이어짐을 입증한다.
댓글 및 학술 토론
Loading comments...
의견 남기기