Many parallel computer architectures are especially suited for particular classes of applications. However, there are only a few parallel architectures equally well suited for standard programs. Much effort is invested into research in compiler techniques to make programming parallel machines easier. This book presents methods for automatic parallelization, so that programs need not to be tailored for specific architectures; here the focus is on fine-grain...