DocumentCode :
1998806
Title :
Avoiding Locks and Atomic Instructions in Shared-Memory Parallel BFS Using Optimistic Parallelization
Author :
Tithi, Jesmin Jahan ; Matani, Dhruv ; Menghani, Gaurav ; Chowdhury, Rezaul Alam
Author_Institution :
Dept. of Comput. Sci., Stony Brook Univ., Stony Brook, NY, USA
fYear :
2013
fDate :
20-24 May 2013
Firstpage :
1628
Lastpage :
1637
Abstract :
Dynamic load-balancing in parallel algorithms typically requires locks and/or atomic instructions for correctness. We have shown that sometimes an optimistic parallelization approach can be used to avoid the use of locks and atomic instructions during dynamic load balancing. In this approach one allows potentially conflicting operations to run in parallel with the hope that everything will run without conflicts, and if any occasional inconsistencies arise due to conflicts, one will be able to handle them without hampering the overall correctness of the program. We have used this approach to implement two new types of high-performance lock free parallel BFS algorithms and their variants based on centralized job queues and distributed randomized work-stealing, respectively. These algorithms are implemented using Intel cilk++, and shown to be scalable and faster than two state-of-the-art multicore parallel BFS algorithms by Leiserson and Schardl (SPAA, 2010) and Hong et al. (PACT, 2011), where the algorithm described in the fast paper is also free of locks and atomic instructions but does not use optimistic parallelization. Our implementations can also handle scale-free graphs very efficiently which frequently arise in real-world scenarios such as the World Wide Web, social-networks, biological interaction networks, etc.
Keywords :
complex networks; parallel algorithms; queueing theory; resource allocation; shared memory systems; tree searching; Intel cilk++; atomic instructions; centralized job queues; distributed randomized work-stealing; dynamic load balancing; high-performance lockfree parallel BFS algorithms; lock avoidance; multicore parallel BFS algorithms; optimistic parallelization approach; parallel algorithms; program correctness; scale-free graph handling; shared-memory parallel BFS; Arrays; Heuristic algorithms; Instruction sets; Load management; Multicore processing; Parallel processing; BFS; Breadth First Search; Cilk++; Lockfree; Optimistic parallel; Work-stealing;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Parallel and Distributed Processing Symposium Workshops & PhD Forum (IPDPSW), 2013 IEEE 27th International
Conference_Location :
Cambridge, MA
Print_ISBN :
978-0-7695-4979-8
Type :
conf
DOI :
10.1109/IPDPSW.2013.241
Filename :
6651059
Link To Document :
بازگشت