Skip to main content
QUICK REVIEW

[논문 리뷰] Adaptive SpMV/SpMSpV on GPUs for Input Vectors of Varied Sparsity

Min Li, Yulong Ao|arXiv (Cornell University)|2020. 06. 30.
Parallel Computing and Optimization Techniques참고 문헌 38인용 수 5
한 줄 요약

이 논문은 입력 벡터의 흐าก이도와 하드웨어 특성에 따라 런타임에 8개의 최적화된 커널 중에서 동적으로 선택하는 GPU를 위한 적응형 SpMV/SpMSpV 프레임워크를 제안한다. 경량의 앙상블 기계학습 커널 선택기 덕분에 이 프레임워크는 NVIDIA K40m, P100, V100 GPU에서 BFS 및 PageRank 워크로드 전반에서 이전 최고 성능 기법들보다 뚜렷한 성능 향상을 달성한다.

ABSTRACT

Despite numerous efforts for optimizing the performance of Sparse Matrix and Vector Multiplication (SpMV) on modern hardware architectures, few works are done to its sparse counterpart, Sparse Matrix and Sparse Vector Multiplication (SpMSpV), not to mention dealing with input vectors of varied sparsity. The key challenge is that depending on the sparsity levels, distribution of data, and compute platform, the optimal choice of SpMV/SpMSpV kernel can vary, and a static choice does not suffice. In this paper, we propose an adaptive SpMV/SpMSpV framework, which can automatically select the appropriate SpMV/SpMSpV kernel on GPUs for any sparse matrix and vector at the runtime. Based on systematic analysis on key factors such as computing pattern, workload distribution and write-back strategy, eight candidate SpMV/SpMSpV kernels are encapsulated into the framework to achieve high performance in a seamless manner. A comprehensive study on machine learning based kernel selector is performed to choose the kernel and adapt with the varieties of both the input and hardware from both accuracy and overhead perspectives. Experiments demonstrate that the adaptive framework can substantially outperform the previous state-of-the-art in real-world applications on NVIDIA Tesla K40m, P100 and V100 GPUs.

연구 동기 및 목표

  • 입력 벡터의 흐림 정도가 실행 중에 변할 때 GPU에서 희소 행렬과 희소 벡터 곱셈(SpMSpV)에 대한 효율적인 최적화가 부족한 문제를 해결한다.
  • 다양한 입력 흐림 정도 수준, 데이터 분포, 그리고 변화하는 GPU 아키텍처에 대응하지 못하는 정적 커널 선택의 한계를 극복한다.
  • 입력 및 하드웨어 특성에 기반해 런타임에 최적의 SpMV/SpMSpV 커널을 자동으로 선택할 수 있는 유연하고 고성능 프레임워크를 설계한다.
  • 다양한 애플리케이션 및 하드웨어 환경에서 예측 정확도와 계산 비용을 균형 잡기 위해 기계학습을 활용한 저오버헤드, 고정확도의 커널 선택기를 개발한다.

제안 방법

  • 계산 패턴, 워크로드 분포, 쓰기-백 전략 등의 핵심 성능 요인을 체계적으로 분석하여 8개의 후보 SpMV/SpMSpV 커널을 식별한다.
  • 매트릭스 기반의 행 우선(row-major) 및 벡터 기반의 열 우선(column-major) SpMSpV 패턴을 조합한 하이브리드 커널 공간을 설계하며, 로드 밸런싱 및 메모리 액세스 패턴의 변형을 포함한다.
  • 2,010개의 실제 희소 매트릭스와 다양한 입력 벡터로 훈련된 3개의 모델 앙상블(예: 결정 트리)을 사용해 최적의 커널을 예측하는 커널 선택기를 구현한다.
  • 입력 특성 평가 및 최적 성능을 보이는 커널을 최소한의 오버헤드로 선택하는 런타임 프레임워크에 커널 선택기를 통합한다.
  • 희박도와 매트릭스 구조에 따라 쓰기-백 전략과 워크로드 분포를 맞춤형으로 최적화하여 메모리 액세스와 스레드 분열을 최소화한다.
  • 저수준 하드웨어 세부 정보에서 커널 선택을 분리함으로써 K40m, P100, V100 등 다양한 GPU 플랫폼 간의 이식성과 적응성을 확보한다.

실험 결과

연구 질문

  • RQ1입력 벡터의 흐림 정도가 변할 때 GPU에서 SpMV/SpMSpV 효율성에 영향을 미치는 핵심 성능 요인는 무엇인가?
  • RQ2두 가지 이외의 더 큰 커널 변종 집합이 다양한 입력 및 하드웨어 구성에서 성능 향상에 뚜렷한 기여를 할 수 있는가?
  • RQ3동적 SpMV/SpMSpV 워크로드에 적합한 기계학습 기반 커널 선택기를 설계할 수 있는가? 이는 높은 정확도와 낮은 런타임 오버헤드를 동시에 확보해야 한다.
  • RQ4제안된 적응형 프레임워크는 실제 그래프 및 머신러닝 워크로드에서 정적 또는 히ュ리스틱 기반 커널 선택보다 얼마나 뛰어나게 성능을 냅니까?
  • RQ5다른 GPU 아키텍처 간에 재조정 없이도 이 프레임워크는 얼마나 잘 일반화되는가?

주요 결과

  • 제안된 적응형 프레임워크는 NVIDIA K40m, P100, V100 GPU에서 BFS 및 PageRank 워크로드 전반에서 이전 최고 수준의 성능을 크게 초월한다.
  • 기계학습 기반 커널 선택기는 예측 오버헤드를 줄이며 높은 정확도를 유지함으로써 실시간 커널 선택이 가능하며, 성능에 미치는 영향을 최소화한다.
  • 다양한 계산 패턴, 워크로드 분포, 쓰기-백 전략를 포함한 8종의 커널 변종을 통합함으로써 다양한 입력 흐림 정도와 매트릭스 구조에 대한 더 나은 적응 능력을 확보한다.
  • 이 프레임워크는 다양한 GPU 플랫폼 간에 강력한 일반화 능력을 보이며, 수동 튜닝 없이도 일관된 성능 향상을 보인다.
  • 히유리스틱 기반 방법(예: push-pull 라이브러리에서 사용하는 고정된 흐림 정도 임계값 기반 커널 전환)보다 적응형 접근 방식이 뚜렷하게 뛰어난 성능을 발휘한다.
  • 앙상블 기계학습 모델은 새로운 매트릭스와 입력 벡터에 대해 높은 예측 정확도를 달성하여, 그 견고성과 확장성을 입증한다.

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

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

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

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