toplogo
Connexion
Idée - Machine Learning - # LLM Inference Optimization

온라인 LLM 추론을 위한 CPU 오프로딩으로 GPU 메모리 위기를 해결하는 NEO


Concepts de base
온라인 LLM 추론 시스템 NEO는 GPU 메모리 부족 문제를 해결하기 위해 어텐션 연산 및 KV 캐시를 CPU로 오프로드하여 처리량을 향상시키고 GPU 사용률을 극대화합니다.
Résumé

NEO: CPU 오프로딩을 통한 온라인 LLM 추론 성능 향상

본 논문은 온라인 LLM(Large Language Model) 추론 시스템에서 발생하는 GPU 메모리 부족 문제를 해결하기 위해 CPU 오프로딩 기술을 활용한 NEO 시스템을 제안합니다.

온라인 LLM 추론의 배경 및 문제점

최근 대규모 언어 모델(LLM)은 챗봇, 자동 에이전트, 프로그래밍 보조 도구 등 다양한 온라인 애플리케이션에 활용되고 있습니다. 온라인 LLM 추론은 사용자와 직접 상호 작용하기 때문에 몰입감 있는 경험을 위해 낮은 지연 시간과 높은 처리량이 요구됩니다. 하지만 LLM 모델의 크기가 증가함에 따라 GPU 메모리 부족 현상이 발생하고, 이는 처리량 저하의 주요 원인이 됩니다.

NEO 시스템 설계 및 주요 기술

NEO는 비대칭 GPU-CPU 파이프라이닝 및 부하 인식 스케줄링이라는 두 가지 핵심 기술을 사용하여 GPU 메모리 부족 문제를 해결합니다.

1. 비대칭 GPU-CPU 파이프라이닝

NEO는 추론 요청을 두 개의 하위 배치로 나누어 처리합니다. 하나의 하위 배치는 GPU에서 실행되고, 다른 하위 배치는 디코딩 어텐션 연산 및 KV 캐시를 CPU로 오프로드하여 실행됩니다. 이러한 비대칭 파이프라이닝을 통해 GPU 및 CPU의 로드를 효과적으로 분산하고 전체 처리량을 향상시킵니다.

2. 부하 인식 스케줄링

NEO 스케줄러는 들어오는 요청을 GPU 또는 CPU 중 어디에서 실행할지 동적으로 결정하여 두 하드웨어 리소스를 모두 효율적으로 활용합니다. 이는 GPU 및 CPU의 처리량 차이, 요청의 입력/출력 길이 변동 등을 고려하여 최적의 성능을 달성하도록 설계되었습니다.

평가 및 결과

NEO는 다양한 워크로드, LLM 모델, 하드웨어 플랫폼에서 평가되었으며, 기존 GPU 전용 시스템 대비 최대 7.5배 높은 처리량을 달성했습니다. 특히, 저사양 GPU 환경에서 높은 성능 향상을 보였으며, CPU 용량 증가에 따라 추가적인 성능 향상을 확인했습니다.

결론

NEO는 온라인 LLM 추론 시스템에서 발생하는 GPU 메모리 부족 문제를 해결하기 위한 효과적인 방법을 제시합니다. CPU 오프로딩 기술을 통해 GPU 사용률을 극대화하고 처리량을 향상시키는 NEO는 저렴한 비용으로 고성능 LLM 추론을 가능하게 합니다.

edit_icon

Personnaliser le résumé

edit_icon

Réécrire avec l'IA

edit_icon

Générer des citations

translate_icon

Traduire la source

visual_icon

Générer une carte mentale

visit_icon

Voir la source

Stats
NEO는 T4, A10G, H100 GPU에서 GPU 전용 방식 대비 각각 최대 7.5배, 26%, 14% 높은 처리량을 달성했습니다. 더 강력한 CPU를 사용하는 경우 NEO는 A10G GPU에서 최대 79.3%의 처리량 향상을 달성했습니다. 디코딩 어텐션 연산은 GPU 및 CPU 모두에서 메모리 대역폭에 제한됩니다. A10G GPU는 600GB/s의 메모리 대역폭과 125 TFLOPS의 연산 능력을 갖춘 반면, 최신 x86 서버는 약 200GB/s의 메모리 대역폭과 1.2 TFLOPS의 연산 능력을 갖추고 있습니다. 최신 ARM 프로세서는 소켓당 537.6GB/s의 메모리 대역폭을 제공합니다.
Citations
"NEO는 온라인 LLM 추론을 위한 최초의 CPU 오프로딩 시스템으로, 동일한 하드웨어 비용 및 추론 정확도로 GPU 전용 시스템보다 뛰어난 성능을 달성했습니다." "LLM 추론의 처리량은 엔진이 달성할 수 있는 배치 크기에 따라 크게 달라지며, 이는 기본적으로 대규모 KV 캐시로 인해 GPU 메모리 크기에 의해 제한됩니다." "디코딩 어텐션 연산은 트랜스포머 아키텍처의 다른 부분에 비해 연산 비중이 매우 낮으며 모델 가중치를 로드할 필요가 없습니다."

Questions plus approfondies

NEO 시스템은 CPU 오프로딩으로 인한 지연 시간 증가를 어떻게 최소화하며, 실제 사용자 경험에 미치는 영향은 무엇일까요?

NEO 시스템은 CPU 오프로딩으로 인한 지연 시간 증가를 최소화하기 위해 비대칭 파이프라이닝(asymmetric pipelining) 과 부하 인지 스케줄링(load-aware scheduling) 이라는 두 가지 핵심 기술을 사용합니다. 비대칭 파이프라이닝: CPU에서 처리 시간이 오래 걸리는 디코딩 어텐션 연산을 오프로드하는 동안 GPU는 다음 요청의 프리필링이나 선형 연산과 같은 다른 작업을 동시에 수행합니다. 이를 통해 CPU 오프로딩으로 인해 발생할 수 있는 GPU 유휴 시간을 최소화하여 지연 시간 증가를 억제합니다. 부하 인지 스케줄링: NEO 스케줄러는 요청의 입력/출력 길이, GPU/CPU의 처리 속도 및 메모리 사용량 등을 실시간으로 모니터링하여 작업을 GPU와 CPU에 효율적으로 분배합니다. 이를 통해 GPU와 CPU의 부하를 균등하게 유지하고, 자원 경합을 최소화하여 지연 시간을 줄입니다. 실제 사용자 경험 측면에서 NEO 시스템은 낮은 지연 시간과 높은 처리량을 동시에 제공하여 긍정적인 영향을 미칩니다. 빠른 응답 속도: 챗봇, 자동 에이전트, 실시간 번역 등과 같이 사용자와의 상호 작용이 중요한 애플리케이션에서 NEO는 빠른 응답 속도를 제공하여 쾌적한 사용자 경험을 제공합니다. 원활한 서비스 제공: 높은 처리량을 통해 많은 수의 사용자 요청을 동시에 처리할 수 있으므로, 서비스 지연이나 중단 없이 원활한 서비스 제공이 가능합니다.

GPU 메모리 용량이 충분히 큰 경우에도 CPU 오프로딩을 통해 추가적인 성능 향상을 얻을 수 있을까요? 만약 그렇다면 어떤 방식으로 가능할까요?

네, GPU 메모리 용량이 충분히 큰 경우에도 CPU 오프로딩을 통해 추가적인 성능 향상을 얻을 수 있습니다. NEO는 주로 GPU 메모리 부족 문제를 해결하기 위해 CPU 오프로딩을 활용하지만, GPU 연산 병목 현상을 해소하는 데에도 유용하게 활용될 수 있습니다. 예를 들어, 입력 토큰 수에 비해 출력 토큰 수가 매우 적은 요청이 많은 경우, GPU는 NEO 시스템에서도 여전히 연산 병목 현상을 겪을 수 있습니다. 이때 CPU에서 어텐션 연산 이외의 다른 연산 (예: dense layer 연산)을 오프로드하면 GPU의 부담을 줄여 전체적인 성능 향상을 도모할 수 있습니다. 다만 이 경우 CPU와 GPU 간의 데이터 전송량 증가로 인해 오히려 성능이 저하될 수 있으므로, 오프로딩할 연산의 종류와 CPU/GPU 간의 데이터 전송 비용을 신중하게 고려해야 합니다.

LLM 모델의 크기가 계속해서 증가하는 추세를 고려할 때, CPU 오프로딩 기술은 미래의 LLM 추론 시스템에서 어떤 역할을 하게 될까요?

LLM 모델의 크기가 계속해서 증가하는 추세를 고려할 때, CPU 오프로딩 기술은 미래의 LLM 추론 시스템에서 더욱 중요한 역할을 담당하게 될 것입니다. 제한적인 GPU 메모리: LLM 모델의 크기가 증가함에 따라 모델 파라미터와 KV 캐시가 차지하는 메모리 공간도 기하급수적으로 증가하고 있습니다. CPU 오프로딩은 제한적인 GPU 메모리 문제를 해결하고, 더 큰 모델을 효율적으로 처리할 수 있는 효과적인 방법입니다. 비용 효율적인 시스템 구축: CPU는 GPU에 비해 상대적으로 저렴합니다. CPU 오프로딩을 통해 고가의 GPU를 추가하지 않고도 LLM 추론 시스템의 성능을 향상시킬 수 있으므로, 비용 효율적인 시스템 구축이 가능합니다. 이기종 컴퓨팅 환경: 미래의 LLM 추론 시스템은 CPU, GPU, FPGA, ASIC 등 다양한 종류의 하드웨어를 활용하는 이기종 컴퓨팅 환경으로 발전할 것으로 예상됩니다. CPU 오프로딩은 이러한 환경에서 각 하드웨어의 장점을 최대한 활용하여 시스템 전체의 성능을 극대화하는 데 기여할 수 있습니다. 결론적으로 CPU 오프로딩 기술은 LLM 모델의 크기 증가 추세에 대응하여 미래의 LLM 추론 시스템에서 핵심적인 역할을 수행할 것으로 기대됩니다.
0
star