• DocumentCode
    688263
  • 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
  • fYear
    2013
  • fDate
    13-15 Nov. 2013
  • Firstpage
    1089
  • Lastpage
    1096
  • 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;
  • fLanguage
    English
  • Publisher
    ieee
  • 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
  • Type

    conf

  • DOI
    10.1109/HPCC.and.EUC.2013.154
  • Filename
    6832036