Abstract:
This paper proposes a new algorithmic paradigm — k-level asynchronous (KLA) — that bridges level-synchronous and asynchronous paradigms for processing graphs. The KLA par...Show MoreMetadata
Abstract:
This paper proposes a new algorithmic paradigm — k-level asynchronous (KLA) — that bridges level-synchronous and asynchronous paradigms for processing graphs. The KLA paradigm enables the level of asynchrony in parallel graph algorithms to be parametrically varied from none (level-synchronous) to full (asynchronous). The motivation is to improve execution times through an appropriate trade-off between the use of fewer, but more expensive global synchronizations, as in level-synchronous algorithms, and more, but less expensive local synchronizations (and perhaps also redundant work), as in asynchronous algorithms. We show how common patterns in graph algorithms can be expressed in the KLA pardigm and provide techniques for determining k, the number of asynchronous steps allowed between global synchronizations. Results of an implementation of KLA in the STAPL Graph Library show excellent scalability on up to 96K cores and improvements of 10× or more over level-synchronous and asynchronous versions for graph algorithms such as breadth-first search, PageRank, k-core decomposition and others on certain classes of real-world graphs.
Published in: 2014 23rd International Conference on Parallel Architecture and Compilation Techniques (PACT)
Date of Conference: 23-27 August 2014
Date Added to IEEE Xplore: 16 February 2017
ISBN Information: