추론을 위해 저가형 빌드를 멀티 GPU로 업그레이드했습니다
요약
저가형 중고 부품을 활용하여 멀티 GPU 추론 환경을 구축하고 성능을 테스트했습니다. Vulkan 백엔드를 통한 이기종 GPU 혼합 사용을 시도했으나, CUDA 대비 심각한 메모리 오버헤드와 성능 저하를 확인했습니다.
핵심 포인트
- Vulkan 백엔드는 멀티 GPU 환경에서 높은 메모리 오버헤드를 발생시킴
- 이기종 GPU 혼합 사용 시 CUDA 대비 컨텍스트 활용 공간이 급격히 감소함
- llama.cpp 사용 시 단일 제조사의 전용 백엔드 사용을 권장함
- RTX 3090 2장 환경의 CUDA 성능이 Vulkan 기반 이기종 구성보다 압도적으로 우수함
추가한 항목:
1x RTX 3090 - 610 USD
1x Arc A770 - 222 USD
1x PCIe x1 to 4x USB 3.0 PCIe riser
새로운 CPU 쿨러
사양:
수정된 Zalman Z9 Plus 케이스
2x Zotac RTX 3090 24 GB
1x Intel Arc A770 16 GB
48 GB DDR4 RAM
AMD Ryzen 5 1600X
MSI X370 SLI Plus
RAM 스틱(위기 이전)과 케이스를 제외한 모든 부품은 중고로 구매했습니다. 첫 번째 RTX 3090은 1년 전 이 서버를 구축하기 위해 540 USD에 구매했습니다.
2시간의 테스트 후 발견한 점:
Vulkan 백엔드(backend)가 멀티 GPU 추론(inference)에서 잘 작동하고, Nvidia가 아닌 GPU를 쉽게 혼합해서 사용할 수 있을 것이라고 생각했습니다. 하지만 메모리 오버헤드(memory overhead)가 CUDA에 비해 훨씬 심각합니다. CUDA를 사용하는 2x3090 환경에서는 170k 컨텍스트(context)와 함께 Qwen 3.6 27b Q8_K_XL bf16 캐시(cache)를 30 tokens/s로 실행할 수 있습니다. 텐서 분할(Tensor split)은 매우 잘 작동합니다. 3090은 275와트(watts)로 전력이 제한됩니다.
Vulkan을 사용할 때는 24 GB 카드당 5 GB의 추가 메모리 오버헤드가 발생하며, 이로 인해 컨텍스트를 위한 공간이 거의 남지 않습니다. 2x3090 + A770 환경에서 Vulkan을 사용하면 50k 컨텍스트와 함께 Qwen 3.6 27b Q8_K_XL q8_0 캐시를 3 tokens/s로 실행할 수 있습니다. 네, 초당 3 토큰입니다.
동일한 모델이 RTX 3090에서 KV 캐시(kv cache)가 로드되기 전, CUDA를 사용할 때는 16 GB VRAM을 사용하는 반면 Vulkan을 사용할 때는 21.7 GB를 사용합니다.
배운 점:
llama.cpp에서 Vulkan은 멀티 GPU 설정에 좋지 않습니다. 단일 제조사(AMD/Intel/Nvidia)를 고수하고 해당 제조사의 자체 백엔드를 사용하세요.
submitted by /u/whiteh4cker
[link] [comments]
AI 자동 생성 콘텐츠
본 콘텐츠는 r/LocalLLaMA의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기