Bamboo: translating MPI applications to a latency-tolerant, data-driven form
Tan Nguyen, Pietro Cicotti, Eric J. Bylaska, Dan Quinlan, Scott B. Baden · 2012
Abstract — We present Bamboo, a custom source-to-source translator that transforms MPI C source into a data-driven form that automatically overlaps communication with available computation. Running on up to 98304 processors of NERSC’s Hopper system, we observe that Bamboo’s overlap capability speeds up MPI implementations of a 3D Jacobi iterative solver and Cannon’s matrix multiplication. Bamboo’s generated code meets or exceeds the performance of hand optimized MPI, which includes split-phase coding, the method classically employed to hide communication. We achieved our results with only modest amounts of programmer annotation and no intrusive reprogramming of the original application source. I.