[论文解读] Chebyshev Filter Diagonalization on Modern Manycore Processors and GPGPUs
该论文提出在英特尔至强融核(Xeon Phi)和NVIDIA P100 GPU上对切比雪夫滤波对角化(ChebFD)进行优化,采用子空间分块和流水线通信技术以隐藏延迟。在512个节点上计算10^9维稀疏矩阵的100个特征值时,性能超过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.
研究动机与目标
- 解决现代多核和通用GPU架构在量子物理与材料科学领域大规模特征值计算中的性能瓶颈问题。
- 通过高效利用现代计算节点中的高带宽(HBM2/MCDRAM)和低带宽(DDR4)内存,克服高性能计算中的内存带宽限制。
- 通过优化内存访问模式,实现对远超高带宽内存容量的问题规模的透明处理。
- 通过流水线化通信与计算,降低分布式内存实现中的通信开销。
- 在Oakforest-PACS和Piz Daint等实际超算系统上,针对真实世界的拓扑绝缘体应用,展示强可扩展性和高性能。
提出的方法
- 实现切比雪夫滤波对角化的块向量形式,以提高计算强度并改善数据局部性。
- 应用子空间分块技术,仅一次处理部分向量,从而高效利用高带宽内存,并透明地访问低带宽内存。
- 引入流水线通信策略,使一个子空间的计算与下一子空间的通信重叠,减少空闲时间。
- 利用非阻塞MPI和P100上的GPUdirect技术,在不增加内存流量的前提下隐藏通信延迟。
- 通过内核融合和规则的内存访问模式,优化稀疏矩阵-多向量乘法(SpMMV)。
- 通过算法重构,在子块之间逐步计算高阶切比雪夫多项式,保持计算强度。
实验结果
研究问题
- RQ1如何针对具有混合内存层次结构的现代多核和通用GPU架构,优化切比雪夫滤波对角化方法?
- RQ2子空间分块在问题规模超过高带宽内存容量时,能在多大程度上实现高效计算?
- RQ3在分布式内存的ChebFD实现中,流水线通信与计算能否有效隐藏通信开销?
- RQ4在Oakforest-PACS和Piz Daint等现代超算系统上,这些优化能带来多大的性能提升?
- RQ5所提出方法在强可扩展性场景下的表现如何,特别是在通信成为瓶颈时?
主要发现
- 块向量实现方式在至强融核和P100架构上均达到了理论峰值性能的约10%,表明其已不再受内存带宽限制。
- 子空间分块技术实现了对节点全部内存空间(包括低带宽DDR4)的透明使用,即使工作集超出高带宽内存容量,也未造成性能损失。
- 流水线通信与计算显著降低了通信开销,在Oakforest-PACS上,512个节点的强可扩展性测试中,性能相比向量模式最高提升了50%。
- 在Piz Daint上,流水线化未带来性能增益,原因在于GPU计算与非阻塞MPI通信之间缺乏重叠,凸显了架构相关限制。
- 在Oakforest-PACS和Piz Daint上,计算10^9维稀疏矩阵的10^2个特征值时,性能达到100+ TFlop/s。
- 该方法保持了高计算强度,避免了冗余内存访问,适用于大规模迭代求解器和量子材料中的光谱分析。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。