Analysis and Optimization of Explicitly Parallel Programs Using the Parallel Program Graph Representation