arXivDaily arXiv每日学术速递 周一至周五更新
arXiv 1312.7626cs.DC
收藏

一个易于使用的可扩展并行递归回溯框架

An Easy-to-use Scalable Framework for Parallel Recursive Backtracking

Faisal N. Abu-Khzam, Khuzaima Daudjee, Amer E. Mouawad, Naomi Nishimura

摘要:

超级计算机配备了越来越多的核心,以使用计算能力作为解决问题的一种方式,否则是棘手的。不幸的是,让串行算法并行运行,以利用这些计算资源仍然是一个挑战的几个应用领域。许多并行算法只能扩展到数百个核心。这种算法的限制因素通常是通信开销和差的负载均衡。使用精确算法解决NP-难图问题的最优性是一个例子,在这个领域中,迄今为止在获得大规模并行方面取得的成功有限。这些算法中的许多使用递归回溯作为其核心解决方案范例。在本文中,我们提出了一个轻量级的,易于使用的,可扩展的框架,几乎任何递归回溯算法转化为并行的。我们的框架引起最小的通信开销,并保证负载平衡策略是隐式的,即,不需要任何特定问题的知识。这个框架背后的关键思想是使用索引搜索树方法,这种方法对正在解决的问题一无所知。我们测试我们的框架与著名的顶点覆盖和支配集问题的算法的并行实现。在足够硬的情况下,实验结果显示数千个核心的线性加速,将运行时间从几天减少到几分钟。

英文摘要:

Supercomputers are equipped with an increasingly large number of cores to use computational power as a way of solving problems that are otherwise intractable. Unfortunately, getting serial algorithms to run in parallel to take advantage of these computational resources remains a challenge for several application domains. Many parallel algorithms can scale to only hundreds of cores. The limiting factors of such algorithms are usually communication overhead and poor load balancing. Solving NP-hard graph problems to optimality using exact algorithms is an example of an area in which there has so far been limited success in obtaining large scale parallelism. Many of these algorithms use recursive backtracking as their core solution paradigm. In this paper, we propose a lightweight, easy-to-use, scalable framework for transforming almost any recursive backtracking algorithm into a parallel one. Our framework incurs minimal communication overhead and guarantees a load-balancing strategy that is implicit, i.e., does not require any problem-specific knowledge. The key idea behind this framework is the use of an indexed search tree approach that is oblivious to the problem being solved. We test our framework with parallel implementations of algorithms for the well-known Vertex Cover and Dominating Set problems. On sufficiently hard instances, experimental results show linear speedups for thousands of cores, reducing running times from days to just a few minutes.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑