Skip to main content
QUICK REVIEW

[논문 리뷰] MPU: Towards Bandwidth-abundant SIMT Processor via Near-bank Computing

Xinfeng Xie, Peng Gu|arXiv (Cornell University)|2021. 03. 11.
Parallel Computing and Optimization Techniques참고 문헌 64인용 수 4
한 줄 요약

MPU는 3D스택된 근접메모리 연산 기반의 첫 번째 SIMT 프로세서를 제안하며, TSV 트래픽을 최소화하면서도 근접메모리 유닛으로 지시어를 오프로드하는 하이브리드 파이pline을 사용한다. 아키텍처 최적화와 종단 간 CUDA 호환 컴파일 흐름을 통해 데이터 집약적 워크로드에서 NVIDIA Tesla V100보다 3.46배 빠른 성능 향상과 2.57배의 에너지 절감을 달성한다.

ABSTRACT

With the growing number of data-intensive workloads, GPU, which is the state-of-the-art single-instruction-multiple-thread (SIMT) processor, is hindered by the memory bandwidth wall. To alleviate this bottleneck, previously proposed 3D-stacking near-bank computing accelerators benefit from abundant bank-internal bandwidth by bringing computations closer to the DRAM banks. However, these accelerators are specialized for certain application domains with simple architecture data paths and customized software mapping schemes. For general purpose scenarios, lightweight hardware designs for diverse data paths, architectural supports for the SIMT programming model, and end-to-end software optimizations remain challenging. To address these issues, we propose MPU (Memory-centric Processing Unit), the first SIMT processor based on 3D-stacking near-bank computing architecture. First, to realize diverse data paths with small overheads while leveraging bank-level bandwidth, MPU adopts a hybrid pipeline with the capability of offloading instructions to near-bank compute-logic. Second, we explore two architectural supports for the SIMT programming model, including a near-bank shared memory design and a multiple activated row-buffers enhancement. Third, we present an end-to-end compilation flow for MPU to support CUDA programs. To fully utilize MPU's hybrid pipeline, we develop a backend optimization for the instruction offloading decision. The evaluation results of MPU demonstrate 3.46x speedup and 2.57x energy reduction compared with an NVIDIA Tesla V100 GPU on a set of representative data-intensive workloads.

연구 동기 및 목표

  • 3D스택된 DRAM에서의 근접메모리 연산을 활용하여 GPU 워크로드의 메모리 대역폭 장벽을 해결한다.
  • 이전의 도메인 특화 설계의 한계를 극복하고, 근접메모리 가속기에서 데이터 집약적 워크로드에 대한 일반 목적의 프로그래밍 가능한 실행을 가능하게 한다.
  • 근접메모리 공유 메모리와 다중 활성화된 행버퍼와 같은 아키텍처 기능을 통해 SIMT 프로그래밍 모델을 효율적으로 지원한다.
  • MPU 아키텍처에서 기존 CUDA 프로그램의 원활한 이식과 최적화를 가능하게 하기 위해 종단 간 컴파일 흐름을 개발한다.
  • 복잡한 제어 논리를 기반 다이에 유지하면서도 DRAM 다이에 경량 지시어만 오프로드하여 TSV 트래픽과 면적 오버헤드를 최소화한다.

제안 방법

  • 컴파일러 힌트 또는 런타임 정책에 따라 지정된 지시어만 근접메모리 유닛(NBUs)으로 오프로드하는 하이브리드 SIMT 파이pline을 설계한다. 지시어 취득, 디코딩, 발행는 기반 로직 다이에서 수행된다.
  • 동적 결정을 내려 어느 지시어를 은행 근처에서 실행할지 정하는 지시어 오프로드 엔진을 구현하여 TSV를 가로질러 레지스터 이동을 줄인다.
  • 외부 메모리로의 데이터 이동을 줄이고 스레드 간 통신 효율을 향상시키기 위해 근접메모리 공유 메모리를 도입한다.
  • 다중 활성화된 행버퍼를 통해 대역폭 활용도를 향상시키고, 동적 워프 스케줄링 조건에서도 DRAM 은행 내부 대역폭을 유지한다.
  • CUDA 커널을 정적 분석하여 지시어 위치(근접메모리 대비 기반 다이)를 주석 처리하는 후단 컴파일러 최적화 기법을 개발한다.
  • MPU 전용 메모리 공간을 사용하여 공유 메모리 일관성 문제나 호스트 접근 경쟁 문제 없이 종단 간 커널 실행을 가능하게 한다.

실험 결과

연구 질문

  • RQ1면적과 TSV 오버헤드를 최소화하면서도 3D스택된 근접메모리 연산을 활용한 일반 목적의 SIMT 프로세서를 효율적으로 구현할 수 있는가?
  • RQ2특히 공유 메모리와 워프 스케줄링 측면에서 근접메모리 아키텍처에서 SIMT 프로그래밍 모델을 어떻게 효율적으로 지원할 수 있는가?
  • RQ3특정 지시어 유형을 근접메모리 유닛으로 오프로드할 경우 프로그램 정확성을 유지하면서 성능과 에너지 소비에 어떤 영향을 미치는가?
  • RQ4종단 간 소프트웨어 지원, 특히 CUDA 호환 컴파일 흐름을 통해 근접메모리 연산의 잠재력을 데이터 집약적 워크로드에 얼마나 효과적으로 해방시킬 수 있는가?
  • RQ5MPU의 하이브리드 파이프라인과 아키텍처 최적화는 기존의 3D스택 GPU 및 근접데이터 플랫폼 대비 대역폭 활용도와 효율성 측면에서 어떻게 비교되는가?

주요 결과

  • MPU는 대표적인 데이터 집약적 워크로드 세트에서 NVIDIA Tesla V100 GPU 대비 3.46배의 성능 향상을 달성하여 뚜렷한 성능 향상을 입증한다.
  • MPU의 에너지 효율성은 V100 대비 2.57배 향상되었으며, 주로 데이터 이동 감소와 은행 내부 대역폭의 효율적 사용 덕분이다.
  • 하이브리드 파이프라인 설계로 경량 지시어만 DRAM 다이로 오프로드하여 TSV 트래픽을 줄였고, 면적과 에너지 오버헤드를 최소화했다.
  • 근접메모리 공유 메모리는 외부 메모리로의 데이터 이동을 줄여 스레드 간 통신 효율성과 전체 대역폭 활용도를 향상시켰다.
  • 다중 활성화된 행버퍼 설계로 동적 워프 스케줄링 조건에서도 높은 DRAM 대역폭을 유지하여 행버퍼 스레싱을 방지했다.
  • 종단 간 CUDA 컴파일 흐름을 통해 기존 커널을 투명하게 이식할 수 있었으며, 후단 최적화를 통해 지시어 오프로드 결정을 개선하여 성능 향상을 이끌어냈다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.