Skip to main content
QUICK REVIEW

[논문 리뷰] CSR5: An Efficient Storage Format for Cross-Platform Sparse Matrix-Vector Multiplication

Weifeng Liu, Brian Vinter|arXiv (Cornell University)|2015. 03. 17.
Parallel Computing and Optimization Techniques참고 문헌 30인용 수 27
한 줄 요약

CSR5는 형식 변환 오버헤드를 최소화하고 정규 및 비정규 행렬 모두에서 일관된 성능을 보장함으로써, CPU, GPU, Xeon Phi에서 고스루풋, 다중 플랫폼 스퍼스 행렬-벡터 곱셈(SpMV)을 가능하게 하는 새로운 희소 행렬 저장 형식이다. 이는 구조에 민감하지 않은 SIMD 우수한 설계와 오직 두 개의 튜닝 파라미터만을 사용함으로써 달성되며, 비정규 행렬에 대해 Xeon Phi에서 이전 방법 대비 최대 943.3% 높은 성능을 제공한다.

ABSTRACT

Sparse matrix-vector multiplication (SpMV) is a fundamental building block for numerous applications. In this paper, we propose CSR5 (Compressed Sparse Row 5), a new storage format, which offers high-throughput SpMV on various platforms including CPUs, GPUs and Xeon Phi. First, the CSR5 format is insensitive to the sparsity structure of the input matrix. Thus the single format can support an SpMV algorithm that is efficient both for regular matrices and for irregular matrices. Furthermore, we show that the overhead of the format conversion from the CSR to the CSR5 can be as low as the cost of a few SpMV operations. We compare the CSR5-based SpMV algorithm with 11 state-of-the-art formats and algorithms on four mainstream processors using 14 regular and 10 irregular matrices as a benchmark suite. For the 14 regular matrices in the suite, we achieve comparable or better performance over the previous work. For the 10 irregular matrices, the CSR5 obtains average performance improvement of 17.6\%, 28.5\%, 173.0\% and 293.3\% (up to 213.3\%, 153.6\%, 405.1\% and 943.3\%) over the best existing work on dual-socket Intel CPUs, an nVidia GPU, an AMD GPU and an Intel Xeon Phi, respectively. For real-world applications such as a solver with only tens of iterations, the CSR5 format can be more practical because of its low-overhead for format conversion. The source code of this work is downloadable at https://github.com/bhSPARSE/Benchmark_SpMV_using_CSR5

연구 동기 및 목표

  • 스패이스 스피드 솔버에서 수십 번의 반복만 사용될 경우, CSR과 전용 SpMV 형식 간의 높은 형식 변환 오버헤드 문제를 해결하기 위해.
  • 다양한 아키텍처에서 정규 및 비정규 희소 행렬 모두에 대해 고성능을 제공하는 단일 저장 형식을 설계하기 위해.
  • 구조에 따라 달라지는 파라미터 튜닝을 최소화하여 최적화된 SpMV 형식의 실용적 구현을 방해하는 요소를 제거하기 위해.
  • 통합적이고 저오버헤드인 형식을 통해 CPU, GPU, Xeon Phi에서 효율적인 SpMV를 가능하게 하기 위해.
  • 반복 기반 과학 계산 환경에서 최적화된 형식과 표준 CSR 형식 간의 성능 격차를 줄이기 위해.

제안 방법

  • 기존의 CSR 형식을 확장하여 세 개의 배열 중 두 개를 인라인 타일 전치 순서로 저장함으로써, 한 배열은 그대로 유지한다.
  • 짧고 구조에 의존하지 않는 두 개의 새로운 보조 데이터 그룹을 도입하여 메모리 오버헤드를 감소시킨다.
  • 현대 프로세서에서 SIMD 실행을 최적화한 저오버헤드 세그먼티드 합계 알고리즘을 재설계한다.
  • 오직 두 개의 튜닝 파라미터만을 사용한다: 하나는 하드웨어에 의존하고, 다른 하나는 희소성에 의존하지만 구조에 의존하지 않는다. 이는 빠른 형식 변환을 가능하게 한다.
  • 일관된 데이터 레이아웃과 높은 SIMD 활용도를 통해 CPU, NVIDIA 및 AMD GPU, Intel Xeon Phi에서 효율적인 SpMV를 지원한다.
  • 빠른 형식 변환(일부 SpMV 연산의 오버헤드 수준과 유사)이 가능하므로, 표준 CSR 기반 도구와의 호환성을 유지한다.

실험 결과

연구 질문

  • RQ1구조에 따라 달라지는 튜닝 없이도, 정규 및 비정규 희소 행렬 모두에서 고성능 SpMV를 달성할 수 있는 단일 저장 형식이 가능한가?
  • RQ2다양한 플랫폼에서 고성능 SpMV를 가능하게 하기 위해 필요한 최소한의 형식 변환 비용은 얼마인가?
  • RQ3CSR5는 11종의 최첨단 SpMV 형식과 비교해 별도의 SpMV 및 반복 기반 워크로드에서 어떻게 성능을 냈는가?
  • RQ4형식 변환 비용이 핵심이 되는, 수십 번의 반복만을 사용하는 실제 솔버에서 CSR5는 CSR 기반 SpMV를 능가할 수 있는가?
  • RQ5CSR5는 유일하게 CPU, GPU, Xeon Phi에서 동시에 일관된 고성능을 달성하는가?

주요 결과

  • 10종의 비정규 행렬에 대해, CSR5는 듀얼 소켓 인텔 CPU, NVIDIA GPU, AMD GPU, 인텔 Xeon Phi에서 각각 평균 17.6%, 28.5%, 173.0%, 293.3% 향상된 성능을 기록했다.
  • Xeon Phi에서 CSR5는 비정규 행렬에 대해 이전 최고 방법 대비 최대 943.3% 높은 성능을 달성했다.
  • 50회의 반복 기반 시나리오에서 CSR5는 전처리 비용이 낮은 다른 형식들조차도 능가하는 전체 속도 향상을 기록했다.
  • 500회의 반복에서 CSR5는 모든 플랫폼에서 가장 높은 전체 속도 향상을 유지했으며, 지속적인 효율성을 입증했다.
  • 50회의 반복만 수행할 경우, CSR5는 형식 변환 오버헤드가 최소이기 때문에 표준 CSR 형식을 능가하는 유일한 형식이다.
  • CSR에서 CSR5로의 형식 변환 비용은 몇 번의 SpMV 연산 비용 수준에 불과하여, 제한된 반복 수를 가진 실제 솔버에서 실용적이다.

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

연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.

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

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