Parallel Graph Coloring for Manycore Architectures

被引:37
作者
Deveci, Mehmet [1 ]
Boman, Erik G. [1 ]
Devine, Karen D. [1 ]
Rajamanickam, Sivasankaran [1 ]
机构
[1] Sandia Natl Labs, POB 5800, Albuquerque, NM 87185 USA
来源
2016 IEEE 30TH INTERNATIONAL PARALLEL AND DISTRIBUTED PROCESSING SYMPOSIUM (IPDPS 2016) | 2016年
关键词
coloring; combinatorial scientific computing; GPU; Xeon Phi; manycore; MULTI-CORE; ALGORITHM;
D O I
10.1109/IPDPS.2016.54
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Graph algorithms are challenging to parallelize on manycore architectures due to complex data dependencies and irregular memory access. We consider the well studied problem of coloring the vertices of a graph. In many applications it is important to compute a coloring with few colors in near-linear time. In parallel, the optimistic (speculative) coloring method by Gebremedhin and Manne [1] is the preferred approach but it needs to be modified for manycore architectures. We discuss a range of implementation issues for this vertex-based optimistic approach. We also propose a novel edge-based optimistic approach that has more parallelism and is better suited to GPUs. We study the performance empirically on two architectures (Xeon Phi and GPU) and across many data sets (from finite element problems to social networks). Our implementation uses the Kokkos library, so it is portable across platforms. We show that on GPUs, we significantly reduce the number of colors (geometric mean 4X, but up to 48X) as compared to the widely used cuSPARSE library. In addition, our edge-based algorithm is 1.5 times faster on average than cuSPARSE, where it has speedups up to 139X on a circuit problem. We also show the effect of the coloring on a conjugate gradient solver using multi-colored Symmetric Gauss-Seidel method as preconditioner; the higher coloring quality found by the proposed methods reduces the overall solve time up to 33% compared to cuSPARSE.
引用
收藏
页码:892 / 901
页数:10
相关论文
共 21 条
  • [1] A framework for scalable greedy coloring on distributed-memory parallel computers
    Bozdag, Doruk
    Gebremedhin, Assefaw H.
    Manne, Fredrik
    Boman, Erik G.
    Catalyurek, Umit V.
    [J]. JOURNAL OF PARALLEL AND DISTRIBUTED COMPUTING, 2008, 68 (04) : 515 - 535
  • [2] Graph coloring algorithms for multi-core and massively multithreaded architectures
    Catalyuerek, Uemit V.
    Feo, John
    Gebremedhin, Assefaw H.
    Halappanavar, Mahantesh
    Pothen, Alex
    [J]. PARALLEL COMPUTING, 2012, 38 (10-11) : 576 - 594
  • [3] Graph Coloring on the GPU and Some Techniques to Improve Load Imbalance
    Che, Shuai
    Rodgers, Gregory
    Beckmann, Brad
    Reinhardt, Steve
    [J]. 2015 IEEE 29TH INTERNATIONAL PARALLEL AND DISTRIBUTED PROCESSING SYMPOSIUM WORKSHOPS, 2015, : 610 - 617
  • [4] The University of Florida Sparse Matrix Collection
    Davis, Timothy A.
    Hu, Yifan
    [J]. ACM TRANSACTIONS ON MATHEMATICAL SOFTWARE, 2011, 38 (01):
  • [5] Kokkos: Enabling manycore performance portability through polymorphic memory access patterns
    Edwards, H. Carter
    Trott, Christian R.
    Sunderland, Daniel
    [J]. JOURNAL OF PARALLEL AND DISTRIBUTED COMPUTING, 2014, 74 (12) : 3202 - 3216
  • [6] Gebremedhin AH, 2000, CONCURRENCY-PRACT EX, V12, P1131, DOI 10.1002/1096-9128(200010)12:12<1131::AID-CPE528>3.0.CO
  • [7] 2-2
  • [8] ColPack: Software for Graph Coloring and Related Problems in Scientific Computing
    Gebremedhin, Assefaw H.
    Duc Nguyen
    Patwary, Md. Mostofa Ali
    Pothen, Alex
    [J]. ACM TRANSACTIONS ON MATHEMATICAL SOFTWARE, 2013, 40 (01):
  • [9] Evaluating Graph Coloring on GPUs
    Grosset, A. V. Pascal
    Zhu, Peihong
    Liu, Shusen
    Venkatasubramanian, Suresh
    Hall, Mary
    [J]. ACM SIGPLAN NOTICES, 2011, 46 (08) : 297 - 298
  • [10] Hasenplaugh W, 2014, PROCEEDINGS OF THE 26TH ACM SYMPOSIUM ON PARALLELISM IN ALGORITHMS AND ARCHITECTURES (SPAA'14), P166