## Critical Links Detection using CUDA

Vienna University of Technology, Institute of Computer Graphics and Algorithms

Vienna University of Technology, Institute of Computer Graphics and Algorithms, 2013

@article{schnabl2013critical,

title={Critical Links Detection using CUDA},

author={Schnabl, Thomas},

year={2013}

}

The Critical Links Detection (CLD) Problem consists of finding for the smallest set of edges in a graph to be protected so that if a given number of unprotected edges are removed the diameter does not exceed a given value. The diameter of a graph is defined as the length of the All-PairShortest-Path (APSP). This thesis presents an algorithm that takes an instance of a graph and calculates the minimal set of protected edges. For k simultaneously failing edges it checks all possible tuples of k edges if after temporarily removing them the diameter of the graph exceeds the limit. Afterwards a Integer Linear Programming (ILP) model is built up and solved, which is equivalent to choosing the minimal amount of edges from these sets to get a feasible solution. Since the calculation of diameters takes most of the process time, the thesis presents an improvement on the performance of the algorithm. A massive parallel approach is implemented using CUDA, a framework to run calculations on graphic cards, also called GPGPU. The chosen algorithm solves one Single Start Shortest Paths (SSSP) algorithm on one GPU processor, running one thread per vertex of the graph. The performance of the algorithm shows a speedup of 30% using this approach on small instances and 70% improvement on large instances with over 1000 edges.

May 7, 2013 by hgpu