2008 · 103 citations · 9 references
ComputingComputer EngineeringComputer ScienceAlgorithmsParallel AlgorithmsParallel ComputingParallel Computing SystemsParallel Performance AnalysisParallel Programming ModelsParallel Runtime SystemsParallel Graph AlgorithmsParallel ProgrammingTermination DetectionTree AlgorithmsWork StealingWork-stealing Scheduling
Solving large, irregular graph problems efficiently is challenging. Current software systems and commodity multiprocessors do not support fine-grained, irregular parallelism well. We present XWS, the X10 Work Stealing framework, an open-source runtime for the parallel programming language X10 and a library to be used directly by application writers. XWS extends the Cilk work-stealing framework with several features necessary to efficiently implement graph algorithms, viz., support for improperly nested procedures, global termination detection, and phased computation. We also present a strategy to adaptively control the granularity of parallel tasks in the work-stealing scheme, depending on the instantaneous size of the work queue. We compare the performance of the XWS implementations of spanning tree algorithms with that of the hand-written C and Cilk implementations using various graph inputs. We show that XWS programs (written in Java) scale and exhibit comparable or better performance.
9
R-MAT: A Recursive Model for Graph Mining
Deepayan Chakrabarti, Yiping Zhan, Christos Faloutsos · 2004 · 1.3K citations · Full text
Robert D. Blumofe, Christopher F. Joerg, Bradley C. Kuszmaul et al. · 1995 · 1K citations · Full text
A comparison of parallel algorithms for connected components
John Greiner · 1994 · 125 citations