• DocumentCode
    1998784
  • Title

    Distributed Memory Breadth-First Search Revisited: Enabling Bottom-Up Search

  • Author

    Beamer, Scott ; Buluc, Aydin ; Asanovic, Krste ; Patterson, Dean

  • Author_Institution
    EECS Dept., Univ. of California, Berkeley, Berkeley, CA, USA
  • fYear
    2013
  • fDate
    20-24 May 2013
  • Firstpage
    1618
  • Lastpage
    1627
  • Abstract
    Breadth-first search (BFS) is a fundamental graph primitive frequently used as a building block for many complex graph algorithms. In the worst case, the complexity of BFS is linear in the number of edges and vertices, and the conventional top-down approach always takes as much time as the worst case. A recently discovered bottom-up approach manages to cut down the complexity all the way to the number of vertices in the best case, which is typically at least an order of magnitude less than the number of edges. The bottom-up approach is not always advantageous, so it is combined with the top-down approach to make the direction-optimizing algorithm which adaptively switches from top-down to bottom-up as the frontier expands. We present a scalable distributed-memory parallelization of this challenging algorithm and show up to an order of magnitude speedups compared to an earlier purely top-down code. Our approach also uses a 2D decomposition of the graph that has previously been shown to be superior to a 1D decomposition. Using the default parameters of the Graph500 benchmark, our new algorithm achieves a performance rate of over 240 billion edges per second on 115 thousand cores of a Cray XE6, which makes it over 7× faster than a conventional top-down algorithm using the same set of optimizations and data distribution.
  • Keywords
    distributed memory systems; parallel algorithms; tree searching; 1D decomposition; 2D graph decomposition; BFS; Cray XE6; Graph500 benchmark; bottom-up search; complex graph algorithms; data distribution; distributed memory breadth-first search; graph primitive; scalable distributed-memory parallelization; Algorithm design and analysis; Complexity theory; Parallel processing; Partitioning algorithms; Sparse matrices; Syntactics; Vectors; breadth-first search; direction-optimizing; distributed;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Parallel and Distributed Processing Symposium Workshops & PhD Forum (IPDPSW), 2013 IEEE 27th International
  • Conference_Location
    Cambridge, MA
  • Print_ISBN
    978-0-7695-4979-8
  • Type

    conf

  • DOI
    10.1109/IPDPSW.2013.159
  • Filename
    6651058