[논문 리뷰] Accelerating bandwidth-bound deep learning inference with main-memory accelerators
이 논문은 프로세싱-인-메모리(PIM) 유닛을 사용하여 CPU 메인 메모리에서 직접 GEMM 연산을 실행함으로써 대역폭 제약이 심한 딥러닝 추론 워크로드를 가속화하는 메인메모리 가속기 아키텍처인 StepStone을 제안한다. GEMM 데이터 국소성과 맞춤형 주소 생성 논리 설계를 통해 StepStone은 빠른 CPU 대비 최대 16배의 성능 향상을, 이전의 메인메모리 가속 기법 대비 2.4배의 성능 향상을 달성하였으며, 큰 크기의 긴/얇은 행렬에 대해 CPU 대비 최소 지연 시간이 12배 낮아, 뛰어난 성능을 보였다.
Matrix-matrix multiplication operations (GEMMs) are important in many HPC and machine-learning applications. They are often mapped to discrete accelerators (e.g., GPUs) to improve performance. However, we find that large tall/skinny and fat/short matrices benefit little from discrete acceleration and also do not perform well on a CPU. Such matrices are prevalent in important workloads, such as deep-learning inference within large-scale datacenters. We demonstrate the large potential of accelerating these GEMMs with processing in the main CPU memory, where processing in memory units (PIMs) take advantage of otherwise untapped bandwidth without requiring data copies. We develop a novel GEMM execution flow and corresponding memory-side address-generation logic that exploits GEMM locality and enables long-running PIM kernels despite the complex address-mapping functions employed by the CPU. Our evaluation of StepStone variants at the channel, device, and within-device PIM levels demonstrate 12X better minimum latency than a CPU and 2.8X greater throughput for strict query latency constraints. End-to-end performance analysis of recent recommendation and language models shows that StepStone outperforms a fast CPU by up to 16X and also the best prior main-memory acceleration approaches by up to 2.4X.
연구 동기 및 목표
- CPU 및 별도 가속기에서 대규모 긴/얇은 행렬과 두꺼운/짧은 행렬의 GEMM 연산 성능이 떨어지는 문제를 해결하기 위해.
- 기존 가속 기법이 잘 대응하지 못하는 대역폭 제약이 심한 GEMM 워크로드를 처리-인-메모리(PIM) 기술로 가속화할 잠재력을 탐색하기 위해.
- 복잡한 CPU 주소 매핑에도 불구하고 장시간 실행 가능한 PIM 커널을 가능하게 하는 새로운 GEMM 실행 흐름과 메모리 측 주소 생성 논리 설계를 위해.
- 채널, 장치, 장치 내부 수준의 다양한 PIM 구현 수준에서 StepStone을 평가하고, 실제 워크로드에서 종단 간 성능 향상을 입증하기 위해.
제안 방법
- 딥러닝 추론에서 흔한 대규모 긴/얇은 행렬과 두꺼운/짧은 행렬의 데이터 국소성을 활용하는 새로운 GEMM 실행 흐름 설계.
- 현대 CPU에서 사용하는 복잡한 주소 매핑 함수를 처리하면서도 장시간 실행 가능한 PIM 커널을 가능하게 하는 맞춤형 메모리 측 주소 생성 논리 개발.
- 데이터 이동을 제거하고 미사용된 메모리 대역폭을 활용하기 위해 PIM 유닛을 메인 메모리 서브시스템에 직접 통합.
- 채널 수준, 장치 수준, 장치 내부 수준의 세 가지 정도의 정밀도로 PIM 통합을 평가.
- 엄격한 쿼리 지연 시간 제약 조건 하에서 PIM 커널 실행을 최적화하여 지연 시간을 최소화하고 처리량을 최대화.
- 실제 추천 및 언어 모델에서 종단 간 성능 분석을 수행하여 시스템 수준의 성능 향상을 검증.
실험 결과
연구 질문
- RQ1처리-인-메모리(PIM) 아키텍처가 딥러닝 추론 워크로드에서 대역폭 제약이 심한 GEMM 연산을 효과적으로 가속화할 수 있는가?
- RQ2현대 CPU에서 사용하는 복잡한 주소 매핑 함수에도 불구하고 PIM 커널을 장시간 실행할 수 있는 방법은 무엇인가?
- RQ3CPU 및 별도 가속기 대비 메인 메모리 서브시스템에 PIM 유닛을 통합함으로써 달성할 수 있는 성능 향상은 어느 정도인가?
- RQ4StepStone의 설계는 채널, 장치, 장치 내부 수준의 다양한 PIM 배포 수준에서 어떻게 확장 가능한가?
- RQ5실제 추천 및 언어 모델은 메인메모리 GEMM 가속화에서 어느 정도의 이점을 얻을 수 있는가?
주요 결과
- StepStone는 대역폭 제약이 심한 GEMM 연산에서 CPU 대비 최소 지연 시간이 12배 낮아, 지연 시간 감소가 뚜렷하게 입증되었다.
- 엄격한 쿼리 지연 시간 제약 조건 하에서 StepStone은 CPU 대비 처리량이 2.8배 높아, 효율성 향상이 확인되었다.
- 종단 간 평가 결과, StepStone은 실제 추천 및 언어 모델에서 빠른 CPU 대비 최대 16배의 성능 향상을 달성하였다.
- StepStone은 이전의 최고 수준의 메인메모리 가속 기법 대비 성능을 최대 2.4배 향상시켰다.
- 제안된 주소 생성 논리는 복잡한 CPU 주소 매핑에도 불구하고 장시간 실행 가능한 PIM 커널을 성공적으로 구현하여, 비정규 워크로드에 대한 PIM 잠재력을 해방시켰다.
- 채널, 장치, 장치 내부 수준의 PIM 평가를 통해 일관된 성능 향상이 확인되었으며, 설계의 확장성은 검증되었다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.