Early experiences on accelerating Dijkstra's algorithm using transactional memory
Early experiences on accelerating Dijkstra's algorithm using transactional memory
复制标题
使用事务内存加速 Dijkstra 算法的早期经验
DOI:
10.1109/ipdps.2009.5161103
复制
发表时间:
2009
期刊:
影响因子:
--
通讯作者:
N. Koziris
中科院分区:
文献类型:
--
作者:
Nikos Anastopoulos;K. Nikas;G. Goumas;N. Koziris
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.