Recent Advances in Matrix Partitioning for Parallel Computing on Heterogeneous Platforms
The problem of partitioning dense matrices into sets of sub matrices has received increased attention recently and is crucial when considering dense linear algebra and kernels with similar communication patterns on heterogeneous platforms. The problem of load balancing and minimizing communication is traditionally reducible to an optimization problem that involves partitioning a square into rectangles. This problem has been proven to be NP Complete for an arbitrary number of partitions. In this paper, we present recent approaches that relax the restriction that all partitions be rectangles. The first approach uses an original mathematical technique to find the exact optimal partitioning. Due to the complexity of the technique, it has been developed for a small number of partitions only. However, even at a small scale, the optimal partitions found by this approach are often non rectangular and sometimes non intuitive. The second approach is the study of approximate partitioning methods utilizing recursive partitioning algorithms. In particular we use the work on optimal partitioning to improve pre existing algorithms. In this paper we discuss the different perspectives this approach opens and present two algorithms, SNRPP which is a <inline formula> <tex math notation="LaTeX"\sqrt{\frac{3}{2}/tex math><alternatives> <inline graphic xlink:href="eyrauddubois ieq1 2853151.gif"/alternatives>/inline formula> approximation, and NRPP which is a <inline formula><tex math notation="LaTeX"\frac{2}\sqrt{3}/tex math><alternatives> <inline graphic xlink:href="eyrauddubois ieq2 2853151.gif"/alternatives>/inline formula> approximation. While sub optimal, the NRRP approach works for an arbitrary number of partitions. We use the first exact approach to analyse how close to the known optimal solutions the NRRP algorithm is for small numbers of partitions.
IEEE Transactions on Parallel and Distributed Systems