[논문 리뷰] Chebyshev Filter Diagonalization on Modern Manycore Processors and GPGPUs
이 논문은 Intel Xeon Phi Knights Landing 및 NVIDIA P100 GPU에서 하위공간 블로킹과 파ipel라인 통신을 사용하여 최적화된 체비셰프 필터 대각화(ChesbFD)를 제안한다. 이는 지연 시간을 숨기며, 10^9차원 희소 행렬의 100개 고유값을 계산할 때 512개 노드에서 100 TFlop/s 이상의 성능을 달성한다. 이는 대규모 문제에서 하이브리드 메모리 계층을 효율적으로 사용하면서도 성능 저하 없이 구현 가능하다.
Chebyshev filter diagonalization is well established in quantum chemistry and quantum physics to compute bulks of eigenvalues of large sparse matrices. Choosing a block vector implementation, we investigate optimization opportunities on the new class of high-performance compute devices featuring both high-bandwidth and low-bandwidth memory. We focus on the transparent access to the full address space supported by both architectures under consideration: Intel Xeon Phi "Knights Landing" and Nvidia "Pascal." We propose two optimizations: (1) Subspace blocking is applied for improved performance and data access efficiency. We also show that it allows transparently handling problems much larger than the high-bandwidth memory without significant performance penalties. (2) Pipelining of communication and computation phases of successive subspaces is implemented to hide communication costs without extra memory traffic. As an application scenario we use filter diagonalization studies on topological insulator materials. Performance numbers on up to 512 nodes of the OakForest-PACS and Piz Daint supercomputers are presented, achieving beyond 100 Tflop/s for computing 100 inner eigenvalues of sparse matrices of dimension one billion.
연구 동기 및 목표
- 현대의 멀티코어 및 GPGPU 아키텍처에서 양자역학 및 재료 과학 분야의 대규모 고유값 계산에서 발생하는 성능 저하 문제를 해결한다.
- 현대 노드에서 고대역폭(HBM2/MCDRAM) 및 저대역폭(DDR4) 메모리를 효율적으로 활용하여 고성능 계산에서 메모리 대역폭 제약을 극복한다.
- 고대역폭 메모리 용량을 초월하는 문제 크기를 처리할 수 있도록 최적화된 메모리 접근 패턴을 통해 문제 크기의 투명한 처리를 가능하게 한다.
- 파이프라인 통신을 통해 계산과 통신의 겹침을 통해 분산 메모리 환경에서의 통신 오버헤드를 감소시킨다.
- 실제의 토폴로지 절연체 응용 분야에 대해 Oakforest-PACS 및 Piz Daint와 같은 생산용 초고성능 컴퓨터에서 강한 스케일링과 높은 성능을 입증한다.
제안 방법
- 계산 강도를 높이고 데이터 국소성을 향상시키기 위해 체비셰프 필터 대각화의 블록 벡터 공식을 구현한다.
- 하나의 시점에서 부분 집합의 벡터만 처리하는 하위공간 블로킹을 적용하여 고대역폭 메모리의 효율적 사용과 저대역폭 메모리의 투명한 접근을 가능하게 한다.
- 계산이 한 하위공간에서 진행되는 동안 다음 하위공간의 통신을 겹치는 파이프라인 통신 전략을 도입하여 유휴 시간을 줄인다.
- P100에서 비차단 MPI와 GPUdirect를 활용하여 통신 지연을 숨기되, 메모리 트래픽 증가 없이도 구현한다.
- 커널 융합과 규칙적인 메모리 접근 패턴을 통해 희소 행렬-다중벡터 곱셈(SpMMV)을 최적화한다.
- 고차수의 체비셰프 다항식을 하위블록 간에 점진적으로 평가하기 위해 알고리즘 재구성을 통해 계산 강도를 유지한다.
실험 결과
연구 질문
- RQ1현대의 멀티코어 및 GPGPU 아키텍처에서 하이브리드 메모리 계층을 가진 체비셰프 필터 대각화는 어떻게 최적화할 수 있는가?
- RQ2하위공간 블로킹을 통해 고대역폭 메모리 용량을 초월하는 문제에서의 계산 효율성은 어느 정도 달성할 수 있는가?
- RQ3분산 메모리 환경에서의 체비셰프 필터 대각화 구현에서 파이프라인 통신과 계산이 통신 비용을 효과적으로 숨길 수 있는가?
- RQ4이러한 최적화를 통해 Oakforest-PACS 및 Piz Daint와 같은 현대 초고성능 컴퓨터에서 얻을 수 있는 성능 향상은 어느 정도인가?
- RQ5특히 통신이 성능 저하 요인으로 작용할 때, 강한 스케일링 영역에서 제안된 방법의 스케일링 특성은 어떠한가?
주요 결과
- 블록 벡터 구현은 Xeon Phi와 P100 아키텍처에서 이론적 최대 성능의 약 10%를 달성하여, 더 이상 메모리에 의해 제약을 받지 않는다는 것을 시사한다.
- 하위공간 블로킹은 고대역폭 메모리 용량을 초월하는 작업 집합이 존재하더라도, 고대역폭 메모리 외에도 저대역폭 DDR4 메모리까지 투명하게 사용할 수 있도록 하며 성능 저하 없이 작동한다.
- 파이프라인 통신과 계산을 통해 통신 오버헤드를 감소시켜 Oakforest-PACS에서 512개 노드로 강한 스케일링을 수행할 때 벡터 모드 대비 최대 50%의 성능 향상을 달성한다.
- Piz Daint에서는 GPU 계산과 비차단 MPI 통신 간에 겹침이 발생하지 않아 파이프라인화가 성능 향상에 기여하지 못했으며, 이는 아키텍처에 따라 제한이 있음을 시사한다.
- Oakforest-PACS 및 Piz Daint에서 10^9차원 희소 행렬의 10^2개 고유값을 계산할 때 100 TFlop/s 이상의 성능을 달성하였다.
- 이 방법은 높은 계산 강도를 유지하고 중복된 메모리 트래픽을 방지하므로, 양자 물질에서의 대규모 반복 해법 및 스펙트럼 분석에 적합하다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.