Large-scale energy-efficient graph traversal: A path to efficient data-intensive supercomputing
Authors:
- Nadathur SatishNSNadathur Satish
- Changkyu KimCKChangkyu Kim
- Jatin ChhuganiJCJatin Chhugani
- Pradeep DubeyPDPradeep Dubey
- 1 November 2012
- conference paper
- Published by Institute of Electrical and Electronics Engineers (IEEE)
- No. 21674329,p. 1-11
Abstract
Graph traversal is a widely used algorithm in a variety of fields, including social networks, business analytics, and high-performance computing among others. There has been a push for HPC machines to be rated not just in Petaflops, but also in "GigaTEPS" (billions of traversed edges per second), and the Graph500 benchmark has been established for this purpose. Graph traversal on single nodes has been well studied and optimized on modern CPU architectures. However, current cluster implementations suffer from high latency data communication with large volumes of transfers across nodes, leading to inefficiency in performance and energy consumption. In this work, we show that we can overcome these constraints using a combination of efficient low-overhead data compression techniques to reduce transfer volumes along with latency-hiding techniques. Using an optimized single node graph traversal algorithm [1], our novel cluster optimizations result in over 6.6X performance improvements over state-of-the-art data transfer techniques, and almost an order of magnitude in energy savings. Our resulting implementation of the Graph500 benchmark achieves 115 GigaTEPS on a 320-node/5120 core Intel ® Endeavor cluster with Intel ® Xeon ® processors E5-2670, which matches the second ranked result in the recent November 2011 Graph500 list [2] with about 5.6X fewer nodes. Our cluster optimizations only have a 1.8X overhead in overall performance from the performance of the optimized single-node implementation, and allows for near-linear scaling with number of nodes. Our algorithm on 1024 nodes on Intel ® Xeon ® processor X5670-based systems (with lower per-node performance) for a large multi-Terabyte graph attained 195 GigaTEPS in performance, proving the high scalability of our algorithm. Our per-node performance is the highest in the top 10 of the Nov 2011 Graph500 list.Keywords
This publication has 26 references indexed in Scilit:
- Performance characteristics of Graph500 on large-scale distributed environment2011
- The International Exascale Software Project roadmapThe International Journal of High Performance Computing Applications, 2011
- A work-efficient parallel breadth-first search algorithm (or how to cope with the nondeterminism of reducers)2010
- Overlapping communication and computation by using a hybrid MPI/SMPSs approach2010
- FAWN2009
- Efficient Breadth-First Search on the Cell/BE ProcessorIEEE Transactions on Parallel and Distributed Systems, 2008
- Worldwide electricity used in data centersEnvironmental Research Letters, 2008
- A Scalable Distributed Parallel Breadth-First Search Algorithm on BlueGene/L2005
- Compressing Integers for Fast File AccessThe Computer Journal, 1999
- The entropy of ordered sequences and order statisticsIEEE Transactions on Information Theory, 1990