Title :
An Efficient Graph Isomorphism Algorithm Based on Canonical Labeling and Its Parallel Implementation on GPU
Author :
Renda Wang ; Longjiang Guo ; Chunyu Ai ; Jinbao Li ; Meirui Ren ; Keqin Li
Author_Institution :
Sch. of Comput. Sci. & Technol., Heilongjiang Univ., Harbin, China
Abstract :
The Graph Isomorphism (GI) problem has been extensively studied due to its significant applications. The most effective class of GI algorithms, i.e., canonical labeling algorithms, are suitable for either graphs with high randomness or symmetry, or graphs for which both of them are not strongly held. Also, the core operations of canonical labeling algorithms, i.e., individuation-refinement (IR) and certificate comparison, usually occupy more than 70% of the total running time. How to weaken the limitations of structures and improve the efficiency of these operations are challenges. In this paper, we present an efficient GI algorithm called PEACE, which is particularly suitable for graphs with high randomness or symmetry. We present a parallel implementation of our algorithm on GPUs. We design some new techniques and also use some existing methods to speed up calculations under CUDA. More importantly, these techniques can be applied to all IR-based GI algorithms. We evaluate the proposed algorithm on various graphs to make comprehensive comparison with currently the most efficient canonical labeling algorithms on CPUs. Experimental results show that PEACE is superior to other algorithms on graphs with high symmetry or many automorphisms, and up to 50% performance increase can be achieved in the best case. We also apply our parallel techniques on these algorithms, and compare the performance on CPU and multiple GPU devices. The results show that the techniques make all algorithms gain 15~55 speedup.
Keywords :
graph theory; graphics processing units; mathematics computing; multiprocessing systems; parallel algorithms; parallel architectures; CPU; CUDA; GI algorithms; GPU; PEACE; canonical labeling algorithms; graph automorphisms; graph isomorphism algorithm; graph randomness; graph symmetry; graphic processing unit; individuation-refinement; parallel implementation; Algorithm design and analysis; Arrays; Graphics processing units; Indexes; Instruction sets; Labeling; Partitioning algorithms; CUDA; Canonical labeling; GPU; Graph isomorphism;
Conference_Titel :
High Performance Computing and Communications & 2013 IEEE International Conference on Embedded and Ubiquitous Computing (HPCC_EUC), 2013 IEEE 10th International Conference on
Conference_Location :
Zhangjiajie
DOI :
10.1109/HPCC.and.EUC.2013.154