[논문 리뷰] Domain Decomposition method on GPU cluster
이 논문은 저비용 GPU 클러스터에서 라티스 QCD 시뮬레이션의 통신 병목 현상을 줄이기 위해 혼합 정밀도 중첩-BiCGStab 솔버 내에서 제한된 덧셈 Schwarz(RAS) 조건부 행렬을 사용하는 것을 제안한다. 격자 도메인을 분해하고 계산을 여덟 개의 GPU에 분산함으로써, 비조건부 솔버 대비 성능을 두 배로 향상시켰으며, 주로 고지연 대역폭의 기가비트 이더넷 링크를 거치는 GPU 간 통신 오버헤드를 줄임으로써 달성되었다.
Pallalel GPGPU computing for lattice QCD simulations has a bottleneck on the GPU to GPU data communication due to the lack of the direct data exchanging facility. In this work we investigate the performance of quark solver using the restricted additive Schwarz (RAS) preconditioner on a low cost GPU cluster. We expect that the RAS preconditioner with appropriate domaindecomposition and task distribution reduces the communication bottleneck. The GPU cluster we constructed is composed of four PC boxes, two GPU cards are attached to each box, and we have eight GPU cards in total. The compute nodes are connected with rather slow but low cost Gigabit-Ethernet. We include the RAS preconditioner in the single-precision part of the mixedprecision nested-BiCGStab algorithm and the single-precision task is distributed to the multiple GPUs. The benchmarking is done with the O(a)-improved Wilson quark on a randomly generated gauge configuration with the size of $32^4$. We observe a factor two improvment on the solver performance with the RAS precoditioner compared to that without the preconditioner and find that the improvment mainly comes from the reduction of the communication bottleneck as we expected.
연구 동기 및 목표
- 저속 인터커넥트를 통해 고지연 GPU 간 통신으로 인한 다중 GPU 라티스 QCD 시뮬레이션의 성능 병목 현상을 해결하기 위해.
- 다중 GPU 환경에서 제한된 덧셈 Schwarz(RAS) 조건부 행렬이 통신 오버헤드를 줄이는 데 효과적인지 평가하기 위해.
- 지연 시간을 최소화하고 솔버 효율을 극대화하기 위해 도메인 분해 및 GPU 간 작업 분배를 최적화하기 위해.
- 실제 GPU 클러스터에서 RAS 조건부 행렬을 통합한 혼합 정밀도 중첩-BiCGStab 솔버의 성능을 벤치마킹하기 위해.
제안 방법
- 혼합 정밀도 중첩-BiCGStab 알고리즘의 단일 정밀도 단계에 RAS 조건부 행렬을 적용하여 수렴 속도를 가속화한다.
- 격자를 겹치지 않는 부분과 겹치는 부분으로 분할하고, 각 GPU에서 도메인 제한 연산자를 국소적으로 해결한다.
- R_{\Omega_i} 투영 연산자를 통해 겹치지 않는 부스러기 점들에만 업데이트를 제한함으로써 데이터 통신을 최소화한다.
- 도메인 분해를 사용하며 겹침 영역(d=0,2,4)이 존재하고, 겹침 층 수와 도메인 역행렬 단계 수를 변화시킨다.
- GPU 클러스터는 기가비트 이더넷으로 연결된 네 대의 PC로 구성되며, 각 PC는 두 개의 GPU를 포함하여 실제 저비용 HPC 환경을 시뮬레이션한다.
- 성능는 O(a)-개선된 윌슨 페르미온과 가우시안 노이즈 소스를 사용한 32^4 격자로 측정된다.
실험 결과
연구 질문
- RQ1저비용 클러스터에서 다중 GPU 라티스 QCD 솔버에서 RAS 조건부 행렬이 통신 병목 현상을 줄일 수 있는가?
- RQ2도메인 겹침(d=0,2,4)은 솔버 성능과 통신 오버헤드에 어떤 영향을 미치는가?
- RQ3총 해법 시간을 최소화하기 위한 RAS 파라미터(NRAS, N_dominv)의 최적 설정은 무엇인가?
- RQ4프로젝션 및 도메인 역행렬로 인한 증가한 통신 및 계산 오버헤드에도 불구하고, Dv 연산 수의 감소가 측정 가능한 성능 향상으로 이어지는가?
주요 결과
- 도메인 겹침 없이(RAS) 적용한 경우(d=0), 총 해법 시간이 53.305초에서 27.977초로 줄어들어 성능이 두 배로 향상되었다.
- 통신 시간이 총 런타임의 대부분을 차지하며, 측정된 双방향 대역폭은 약 300 MB/sec이다.
- Dv 연산 수가 63% 감소했음에도 불구하고(d=1,328에서 484로), d=2 경우는 프로젝션 및 도메인 역행렬로 인한 오버헤드 증가로 인해 성능 향상이 없었다.
- d=4 경우는 Dv 연산 수가 약간 감소했지만, 프로젝션 및 도메인 역행렬로 인한 오버헤드가 더 커져서 성능 향상이 없었다.
- RAS 조건부 행렬의 이점은 주로 연산 수의 감소가 아니라 통신 볼륨 감소 덕분이며, 통신 시간이 주요 병목이기 때문이다.
- 최적의 설정은 NRAS=3 및 N_dominv=5이며, 이 경우 d=0 설정이 가장 뛰어난 성능을 보였다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.