DocumentCode
2484969
Title
Early experiences on accelerating Dijkstra´s algorithm using transactional memory
Author
Anastopoulos, Nikos ; Nikas, Konstantinos ; Goumas, Georgios ; Koziris, Nectarios
Author_Institution
Comput. Syst. Lab., Nat. Tech. Univ. of Athens, Athens, Greece
fYear
2009
fDate
23-29 May 2009
Firstpage
1
Lastpage
8
Abstract
In this paper we use Dijkstra´s algorithm as a challenging, hard to parallelize paradigm to test the efficacy of several parallelization techniques in a multicore architecture. We consider the application of transactional memory (TM) as a means of concurrent accesses to shared data and compare its performance with straightforward parallel versions of the algorithm based on traditional synchronization primitives. To increase the granularity of parallelism and avoid excessive synchronization, we combine TM with helper threading (HT). Our simulation results demonstrate that the straightforward parallelization of Dijkstra´s algorithm with traditional locks and barriers has, as expected, disappointing performance. On the other hand, TM by itself is able to provide some performance improvement in several cases, while the version based on TM and HT exhibits a significant performance improvement that can reach up to a speedup of 1.46.
Keywords
graph theory; multi-threading; parallel processing; shared memory systems; transaction processing; Dijkstra algorithm; helper threading; multicore architecture; parallelization technique; shared data; transactional memory; Acceleration; Computer architecture; Concurrent computing; Laboratories; Life estimation; Multicore processing; Parallel processing; System testing; Systems engineering and theory; Yarn;
fLanguage
English
Publisher
ieee
Conference_Titel
Parallel & Distributed Processing, 2009. IPDPS 2009. IEEE International Symposium on
Conference_Location
Rome
ISSN
1530-2075
Print_ISBN
978-1-4244-3751-1
Electronic_ISBN
1530-2075
Type
conf
DOI
10.1109/IPDPS.2009.5161103
Filename
5161103
Link To Document