Program analysis and synthesis for parallel computing David Padua University of Illinois at Urbana-Champaign.