Charilaos Tzovas, Maria Predari, Henning Meyerhenke
{"title":"Distributing Sparse Matrix/Graph Applications in Heterogeneous Clusters - an Experimental Study","authors":"Charilaos Tzovas, Maria Predari, Henning Meyerhenke","doi":"10.1109/HiPC50609.2020.00021","DOIUrl":null,"url":null,"abstract":"Many problems in scientific and engineering applications contain sparse matrices or graphs as main input objects, e.g., numerical simulations on meshes. Large inputs are abundant these days and require parallel processing for memory size and speed. To optimize the execution of such simulations on cluster systems, the input problem needs to be distributed suitably onto the processing units (PUs). More and more frequently, such clusters contain different CPUs or a combination of CPUs and GPUs. This heterogeneity makes the load distribution problem quite challenging. Our study is motivated by the observation that established partitioning tools do not handle such heterogeneous distribution problems as well as homogeneous ones. In this paper, we first formulate the problem of balanced load distribution for heterogeneous architectures as a multiobjective, single-constraint optimization problem. We then split the problem into two phases and propose a greedy approach to determine optimal block sizes for each PU. These block sizes are then fed into numerous existing graph partitioners, for us to examine how well they handle the above problem. One of the tools we consider is an extension of our own previous work (von Looz et al., ICPP'18) called Geographer. Our experiments on well-known benchmark meshes indicate that only two tools under consideration are able to yield good quality. These two are ParMetis (both the geometric and the combinatorial variant) and Geographer. While ParMetis is faster, Geographer yields better quality on average.","PeriodicalId":375004,"journal":{"name":"2020 IEEE 27th International Conference on High Performance Computing, Data, and Analytics (HiPC)","volume":"118 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2020-11-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"1","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2020 IEEE 27th International Conference on High Performance Computing, Data, and Analytics (HiPC)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/HiPC50609.2020.00021","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 1
Abstract
Many problems in scientific and engineering applications contain sparse matrices or graphs as main input objects, e.g., numerical simulations on meshes. Large inputs are abundant these days and require parallel processing for memory size and speed. To optimize the execution of such simulations on cluster systems, the input problem needs to be distributed suitably onto the processing units (PUs). More and more frequently, such clusters contain different CPUs or a combination of CPUs and GPUs. This heterogeneity makes the load distribution problem quite challenging. Our study is motivated by the observation that established partitioning tools do not handle such heterogeneous distribution problems as well as homogeneous ones. In this paper, we first formulate the problem of balanced load distribution for heterogeneous architectures as a multiobjective, single-constraint optimization problem. We then split the problem into two phases and propose a greedy approach to determine optimal block sizes for each PU. These block sizes are then fed into numerous existing graph partitioners, for us to examine how well they handle the above problem. One of the tools we consider is an extension of our own previous work (von Looz et al., ICPP'18) called Geographer. Our experiments on well-known benchmark meshes indicate that only two tools under consideration are able to yield good quality. These two are ParMetis (both the geometric and the combinatorial variant) and Geographer. While ParMetis is faster, Geographer yields better quality on average.
科学和工程应用中的许多问题都包含稀疏矩阵或图作为主要输入对象,例如网格上的数值模拟。如今大量输入需要并行处理,以满足内存大小和速度的要求。为了优化此类模拟在集群系统上的执行,输入问题需要适当地分布到处理单元(pu)上。这种集群越来越频繁地包含不同的cpu或cpu和gpu的组合。这种异构性使得负载分配问题非常具有挑战性。我们的研究的动机是观察到建立的划分工具不能处理这种异构分布问题以及同质分布问题。在本文中,我们首先将异构架构的均衡负载分配问题表述为一个多目标、单约束的优化问题。然后,我们将问题分为两个阶段,并提出一种贪婪方法来确定每个PU的最佳块大小。然后将这些块大小馈送到许多现有的图分区器中,以便我们检查它们如何处理上述问题。我们考虑的工具之一是我们自己以前的工作(von Looz et al., ICPP'18)的扩展,称为地理学家。我们在众所周知的基准网格上的实验表明,只有两种工具能够产生良好的质量。这两个是ParMetis(几何和组合变体)和地理学家。ParMetis更快,而geography的平均质量更好。