PLoRA: 비용 효율적인 Multi-LoRA 서빙을 위한 NDP 강화 풀드 메모리 (Pooled-Memory) 시스템
요약
PLoRA는 Multi-LoRA 서빙의 메모리 병목 문제를 해결하기 위해 NDP(Near-Data Processing)와 풀드 메모리(Pooled-Memory)를 결합한 시스템입니다. CXL 및 NVLink 환경에서 어댑터와 KV 캐시를 효율적으로 관리하여 디코딩 지연 시간을 획기적으로 단축합니다.
핵심 포인트
- NDP 강화 풀드 메모리 아키텍처를 통한 Multi-LoRA 서빙 최적화
- S-LoRA 대비 평균 6.6배 낮은 디코딩 지연 시간 달성
- CXL 및 NVLink 기반의 읽기-연산(read-compute) 인터페이스 활용
- 링크 파라미터화된 비용 모델을 통한 최적의 실행 전략 선택
- 추가 장치 면적을 3.4% 미만으로 유지하며 높은 확장성 제공
Multi-LoRA 서빙은 하나의 베이스 모델이 사용자, 작업 또는 에이전트당 하나의 어댑터를 사용하여 수천 개의 특화된 변형 모델이 되는 방식이며, 배포 시 1,000개 이상의 어댑터를 보유할 수 있습니다. 이를 서빙하는 것은 매우 어려운데, 그 이유는 워크로드가 GPU가 제공하는 것과 반대되는 특성을 갖기 때문입니다. 즉, 수십 TFLOPS의 연산 능력에 비해 테라바이트 단위의 메모리가 필요하며, 현재 발표된 모든 시스템은 PCIe를 통해 CPU DRAM에서 어댑터를 스테이징(staging)하는데, 이 과정에서 각 액세스마다 커널 중단(kernel stop)과 호스트 실행 복사(host-run copy) 비용이 발생하며 용량은 메인보드의 DIMM 슬롯으로 제한됩니다. 한편, CXL 및 NVLink와 같은 메모리 시맨틱 패브릭(memory-semantic fabrics)은 가속기가 자체적인 로드(load) 및 스토어(store) 명령으로 주소 지정할 수 있는 풀드 메모리(pooled memory)로 수렴하고 있으며, 근사 데이터 처리(NDP, Near-Data Processing)는 풀드 데이터 옆에 연산 기능을 배치할 수 있습니다. 이러한 하드웨어에서 Multi-LoRA 워크로드를 서빙하는 방법은 아직 탐구되지 않은 영역입니다. 본 논문은 비용 효율적인 Multi-LoRA 서빙을 위한 NDP 강화 풀드 메모리 시스템인 PLoRA를 소개합니다. PLoRA는 어댑터와 KV 캐시(KV cache)를 풀(pool)에 유지하며, GPU가 자체 로드 및 스토어를 통해 구동하는 읽기-연산(read-compute) 인터페이스를 통해 링크를 통해 축소된 결과만을 반환합니다. 이 아키텍처 상단에서 GPU 메모리 관리 시스템은 링크 파라미터화된 비용 모델(link-parameterized cost model)의 안내에 따라 각 어댑터에 대해 4가지 LoRA 및 2가지 어텐션(attention) 실행 전략 중 하나를 선택하고, 성능에 가장 중요한 바이트를 GPU 메모리에 캐싱합니다. 1,000개의 어댑터를 서빙하는 하나의 H100에서, PLoRA는 우리가 측정한 모든 모델과 워크로드에서 가장 낮은 디코딩 지연 시간(decode latency)을 달old하며, 추가적인 장치 면적을 3.4% 미만으로 사용하면서 실제 장비 기반의 S-LoRA보다 평균 6.6배 낮은 지연 시간을 기록했습니다. 링크 자체의 영향은 미미해집니다. 처리량(throughput)은 짧은 컨텍스트에서 CXL 3.1의 4분의 1 수준인 32 GB/s에서 포화되며, 이러한 결과는 규모 확장 시에도 유효합니다. 어댑터 트래픽이 텐서 병렬성(tensor parallelism)과 함께 샤딩(sharding)됨에 따라 GPU당 요구량은 7B에서 모델링된 1.2T 배포 수준으로 감소합니다. 이 설계는 CXL급에서 NVLink급 패브릭까지 변경 없이 작동하며, 잉여 대역폭은 속도보다는 풀드 용량을 확보하는 데 사용됩니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 arXiv cs.AR의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기