# Comparative analysis of parallelised shortest path algorithms using Open MP

VIT University

^{1}01 May 2017-pp 369-378

TL;DR: The results show that, execution time can be reduced using parallel implementation for larger number of graph nodes and the conclusions are drawn for the best algorithm to be used which works for all the graph nodes with less execution time.

Abstract: This paper presents parallel implementations and includes performance analysis of three prominent graph algorithms (i.e., Bellman Ford, Floyd-Warshall and Dijkstra) used for finding the all-pairs of shortest paths. The algorithm implementations were parallelized using Open MP (Open Multi-Processing). Their performances were measured on 4 different configurations i.e. dual core i3, quad core i5, quad core i7 and 8 core processors. This paper also presents a comparative study of serial and parallel implementations of these algorithms keeping execution time and number of graph nodes as the parameter. Finally, the results show that, execution time can be reduced using parallel implementation for larger number of graph nodes. Also, the conclusions are drawn for the best algorithm to be used which works for all the graph nodes with less execution time.

##### Citations

More filters

••

TL;DR: It is revealed that the appropriate sharing of shortest path information can significantly improve path-planning activities and there are significant differences between the runtime performances associated with single approaches, for differing levels of system complexity and model sizes.

Abstract: Large-scale models are currently used for the simulation, analysis and control of real systems, whether technical, biological, social or economic. In multi-agent simulations of virtual economies, it is important to schedule a large number of agents across the cities involved, in order to establish a functional supply chain network for industrial production. This study describes an experimental evaluation of path-planning approaches in the field of multi-agent modelling and simulation, applied to a large-scale setting. The experimental comparison is based on a model in which agents represent economic entities and can participate in mutual interactions. For the purposes of experiment, the model is scaled to various degrees of complexity in terms of the numbers of agents and transportation nodes. Various numbers of agents are used to explore the way in which the model's complexity influences the runtime of the path-planning task. The results indicate that there are significant differences between the runtime performances associated with single approaches, for differing levels of system complexity and model sizes. The study reveals that the appropriate sharing of shortest path information can significantly improve path-planning activities. Hence, this work extends current research in the field of path-planning for multi-agent simulations by conducting an experimental performance analysis of five distinct path-planning approaches and a statistical evaluation of the results. This statistical evaluation contrasts with performance analyses conducted on the basis of ‘Big O’ notation for algorithmic complexity, which describes the limiting behaviour of the algorithm and gives only a rough performance estimate.

8 citations

##### References

More filters

•

21 May 2012TL;DR: The experimental results prove that the parallel execution of the algorithm has good performances in terms of speed-up ratio, when compared to its serial execution, and the results show that, because of Dijkstra's algorithm in itself is sequential, and difficult to parallelize, average speed- up ratio achieved by parallelization is only 10%.

Abstract: This article introduces the problem of parallelization of Dijkstra's algorithm, a well known algorithm for computing single-source shortest path in a graph. Dijkstra's algorithm can be applied to graphs with a various number of vertices and edges. Dijkstra's shortest path algorithm is implemented and presented, and the performances of its parallel and serial execution are compared. The algorithm implementation was parallelized using OpenMP (Open Multi-Processing) and OpenCL (Open Computing Language) standards. Its performances were measured on 4 different configurations, based on dual core and i5 processors. The experimental results prove that the parallel execution of the algorithm has good performances in terms of speed-up ratio, when compared to its serial execution. Finally, the results show that, because of Dijkstra's algorithm in itself is sequential, and difficult to parallelize, average speed-up ratio achieved by parallelization is only 10%. This proves to be a huge disadvantage of this algorithm, because its use is widespread, and enhancing its performance would have great effects in its many uses.

108 citations

••

IBM

^{1}TL;DR: This paper introduces a novel parallel algorithm, derived from the Bellman-Ford and Delta-stepping algorithms, that employs various pruning techniques, such as edge classification and direction-optimization, to dramatically reduce inter-node communication traffic, and proposes load balancing strategies to handle higher-degree vertices.

Abstract: In the single-source shortest path (SSSP) problem, we have to find the shortest paths from a source vertex v to all other vertices in a graph. In this paper, we introduce a novel parallel algorithm, derived from the Bellman-Ford and Delta-stepping algorithms. We employ various pruning techniques, such as edge classification and direction-optimization, to dramatically reduce inter-node communication traffic, and we propose load balancing strategies to handle higher-degree vertices. The extensive performance analysis shows that our algorithms work well on scale-free and real-world graphs. In the largest tested configuration, an R-MAT graph with 238 vertices and 242 edges on 32,768 Blue Gene/Q nodes, we have achieved a processing rate of three Trillion Edges Per Second (TTEPS), a four orders of magnitude improvement over the best published results.

51 citations

••

TL;DR: This paper describes parallel implementations and includes performance analyses of two prominent graph algorithms (i.e., Floyd-Warshall and Dijkstra) used to solve the shortest path problem in a transportation network.

Abstract: Parallel computing has become a powerful approach for solving real-time decisions about large-scale, computing-intensive transportation problems. A frequently encountered transportation problem is the “shortest path problem;” that is, finding the shortest path between any two nodes in a transportation network. For the large transportation networks encountered in major metropolitan areas, this problem can be computationally demanding, especially if shortest paths between all the nodes in the network need to be dynamically updated (e.g., evolving traffic conditions). In such a situation, one may wish to harness parallel computing to solve this problem. However, the parallel implementations of commonly used shortest-path algorithms are computationally demanding because of the inherent sequential nature of the search process used by the algorithms. This paper describes parallel implementations and includes performance analyses of two prominent graph algorithms (i.e., Floyd-Warshall and Dijkstra) used ...

49 citations

••

25 Jun 2010TL;DR: The simulation show that the improved Dijkstra shortest path search algorithm can reduce the computation time.

Abstract: This paper presents an improved Dijkstra shortest path search algorithm. The algorithm considers the different types of weights, set the priority target search region, reduce the large number of meaningless operations, in order to improve search efficiency. We do some relevant testing based on the shortest distance and shortest time through simulation. The simulation show that the improved Dijkstra shortest path search algorithm can reduce the computation time.

48 citations

••

IBM

^{1}TL;DR: This paper introduces a novel parallel algorithm, derived from the Bellman-Ford and Delta-stepping algorithms, to dramatically reduce inter-node communication traffic, and proposes load balancing strategies to handle higher-degree vertices.

Abstract: We consider the single-source shortest path (SSSP) problem: given an undirected graph with integer edge weights and a source vertex $v$ , find the shortest paths from $v$ to all other vertices. In this paper, we introduce a novel parallel algorithm, derived from the Bellman-Ford and Delta-stepping algorithms. We employ various pruning techniques, such as edge classification and direction-optimization, to dramatically reduce inter-node communication traffic, and we propose load balancing strategies to handle higher-degree vertices. These techniques are particularly effective on power-law graphs, as demonstrated by our extensive performance analysis. In the largest tested configuration, an R-MAT graph with $2^{38}$ vertices and $2^{42}$ edges on 32,768 Blue Gene/Q nodes, we have achieved a processing rate of three Trillion Edges Per Second (TTEPS), a four orders of magnitude improvement over the best published results.

44 citations