[论文解读] Hypergraph Partitioning for Sparse Matrix-Matrix Multiplication
本文提出一种超图划分模型,以优化稀疏矩阵-矩阵乘法(SpGEMM)中的通信开销,表明通信最优的算法对应于求解超图划分问题。该方法依赖于稀疏性,细粒度的1D与2D模型表明,根据输入矩阵的结构,简单算法的通信效率可与复杂算法相当。
We propose a fine-grained hypergraph model for sparse matrix-matrix multiplication (SpGEMM), a key computational kernel in scientific computing and data analysis whose performance is often communication bound. This model correctly describes both the interprocessor communication volume along a critical path in a parallel computation and also the volume of data moving through the memory hierarchy in a sequential computation. We show that identifying a communication-optimal algorithm for particular input matrices is equivalent to solving a hypergraph partitioning problem. Our approach is sparsity dependent, meaning that we seek the best algorithm for the given input matrices. In addition to our (3D) fine-grained model, we also propose coarse-grained 1D and 2D models that correspond to simpler SpGEMM algorithms. We explore the relations between our models theoretically, and we study their performance experimentally in the context of three applications that use SpGEMM as a key computation. For each application, we find that at least one coarse-grained model is as communication efficient as the fine-grained model. We also observe that different applications have affinities for different algorithms. Our results demonstrate that hypergraphs are an accurate model for reasoning about the communication costs of SpGEMM as well as a practical tool for exploring the SpGEMM algorithm design space.
研究动机与目标
- 通过细粒度的超图模型准确建模SpGEMM的通信开销,以捕捉处理器间通信与内存层次结构中的数据移动。
- 证明寻找通信最优的SpGEMM算法等价于求解一个超图划分问题。
- 探索简化后的超图模型(1D、2D、3D),以表示更简单的SpGEMM算法,同时保持通信开销建模的准确性。
- 通过三个真实世界应用的实验评估这些模型的性能,以识别特定应用的算法偏好。
- 通过展示预处理阶段的超图划分可生成无运行时开销的通信高效SpGEMM策略,为实际算法设计提供指导。
提出的方法
- 提出一种3D细粒度超图模型,其中超边表示算术运算,顶点表示数据元素,以捕捉依赖关系与通信量。
- 基于超图模型,为串行与并行SpGEMM制定通信开销下界,并基于矩阵非零结构证明其紧致性。
- 通过聚合运算与数据,引入简化模型(1D、2D),分别对应行优先、外积与SpSUMMA风格的算法。
- 将寻找通信最优算法的问题转化为超图划分问题,利用现有软件进行实际评估。
- 使用现有的超图划分工具,在真实SpGEMM工作负载中比较不同算法子类的通信开销。
- 在三个应用(代数多重网格法、线性规划与马尔可夫聚类)中分析结果,以识别何时简单算法已足够。
实验结果
研究问题
- RQ1超图模型能否在串行与并行环境下准确表示SpGEMM的通信开销?
- RQ2识别通信最优的SpGEMM算法是否等价于求解一个超图划分问题?
- RQ3对于真实世界的SpGEMM实例,简化后的超图模型(1D、2D)在通信效率上与细粒度3D模型相比如何?
- RQ4不同应用是否对特定SpGEMM算法表现出不同的偏好,这取决于通信开销?
- RQ5在实践中,更简单的1D或2D算法能否实现与更复杂的3D算法相当的通信效率?
主要发现
- 细粒度超图模型正确捕捉了处理器间通信与内存层次结构中的数据移动,实现了准确的通信开销建模。
- 对于给定输入矩阵,通信最优的SpGEMM算法等价于求解超图划分问题,且该模型的下界比先前工作更紧致。
- 在代数多重网格法与线性规划应用中,某些1D算法实现了与3D模型相当的通信效率。
- 在社交网络矩阵上的马尔可夫聚类应用中,2D算法在通信效率上显著优于1D算法,表明存在应用特定的算法偏好。
- 结果证实,超图划分是探索SpGEMM算法设计空间的实用工具,尤其在预处理开销可被多个相似SpGEMM操作分摊时。
- 简化模型(1D、2D)保持了通信开销建模的准确性,且无需完整3D模型分辨率即可识别最优算法。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。