面向最优总通信量或瓶颈通信量的连续图划分
Contiguous Graph Partitioning For Optimal Total Or Bottleneck Communication
AI总结:
针对连续图划分问题,提出首批近线性时间的总代价与瓶颈代价划分算法,在42个测试矩阵上验证了高效性与高质量,显著优于原有算法。
摘要:
图划分用于调度稀疏矩阵-向量乘法(SpMV)等并行计算。我们研究连续划分场景,即含N个非零元的稀疏矩阵的m行(或列)在不重排的情况下被拆分为K个部分。我们针对连续场景下的若干图划分问题,提出了首批近线性时间算法。\n传统目标如简单边割、超边割或超图连通性,是在平衡约束下最小化所有部分的总代价。我们的总划分器占用O(Km + N)空间,运行时间为O((Km log(m) + N) log(N)),相比Kernighan与Grandjean等人提出的原有O(K(m² + N))时间算法有显著提升。\n瓶颈划分旨在最小化任意部分的最大代价。我们提出了一种新的瓶颈代价,该代价反映了每个部分的通信与计算之和。我们的瓶颈划分器占用线性空间:当K²满足O(N^C)(C<1)时,精确算法可在线性时间内运行;当K log(c_high/(c_low ε))满足O(N^C)(C<1)时,我们的(1+ε)-近似算法可在线性时间内运行,其中c_high和c_low分别是最优代价的上下界。我们还提出了一种更简单的(1+ε)-近似算法,其运行时间与线性时间仅相差log(c_high/(c_low ε))的因子。\n我们在包含42个测试矩阵的测试套件上通过实验证明,我们的算法能高效生成高质量的连续划分。当K=8时,我们的超图连通性划分器相比原有算法实现了53倍的加速(平均15.1倍)。我们的瓶颈划分器的平均运行时间相当于5.15次SpMV的耗时。
英文摘要:
Graph partitioning schedules parallel calculations like sparse matrix-vector multiply (SpMV). We consider contiguous partitions, where the $m$ rows (or columns) of a sparse matrix with $N$ nonzeros are split into $K$ parts without reordering. We propose the first near-linear time algorithms for several graph partitioning problems in the contiguous regime. Traditional objectives such as the simple edge cut, hyperedge cut, or hypergraph connectivity minimize the total cost of all parts under a balance constraint. Our total partitioners use $O(Km + N)$ space. They run in $O((Km\log(m) + N)\log(N))$ time, a significant improvement over prior $O(K(m^2 + N))$ time algorithms due to Kernighan and Grandjean et. al. Bottleneck partitioning minimizes the maximum cost of any part. We propose a new bottleneck cost which reflects the sum of communication and computation on each part. Our bottleneck partitioners use linear space. The exact algorithm runs in linear time when $K^2$ is $O(N^C)$ for $C < 1$. Our $(1 + ε)$-approximate algorithm runs in linear time when $K\log(c_{high}/(c_{low}ε))$ is $O(N^C)$ for $C < 1$, where $c_{high}$ and $c_{low}$ are upper and lower bounds on the optimal cost. We also propose a simpler $(1 + ε)$-approximate algorithm which runs in a factor of $\log(c_{high}/(c_{low}ε))$ from linear time. We empirically demonstrate that our algorithms efficiently produce high-quality contiguous partitions on a test suite of 42 test matrices. When $K = 8$, our hypergraph connectivity partitioner achieved a speedup of $53\times$ (mean $15.1\times$) over prior algorithms. The mean runtime of our bottleneck partitioner was 5.15 SpMVs.
机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。