Synopsis
Readership This book is devoted to the study of compiler transformations that are needed to expose the parallelism hiddenin a program. This book is notan introductory book to parallel processing, nor is it an introductory book to parallelizing compilers. Weassume thatreaders are familiar withthebooks High Performance Compilers for Parallel Computingby Wolfe [121] and Super compilers for Parallel and Vector Computers by Zima and Chapman [125], and that they want to know more about scheduling transformations. In this book we describe both task graph scheduling and loop nest scheduling. Taskgraphschedulingaims atexecuting tasks linked by prece dence constraints; it is a run-time activity. Loop nest scheduling aims at ex ecutingstatementinstances linked bydata dependences;it is a compile-time activity. We are mostly interested in loop nestscheduling,butwe also deal with task graph scheduling for two main reasons: (i) Beautiful algorithms and heuristics have been reported in the literature recently; and (ii) Several graphscheduling, like list scheduling, are the basis techniques used in task ofthe loop transformations implemented in loop nest scheduling. As for loop nest scheduling our goal is to capture in a single place the fantastic developments of the last decade or so. Dozens of loop trans formations have been introduced (loop interchange, skewing, fusion, dis tribution, etc.) before a unifying theory emerged. The theory builds upon the pioneering papers of Karp, Miller, and Winograd [65] and of Lam port [75], and it relies on sophisticated mathematical tools (unimodular transformations, parametric integer linear programming, Hermite decom position, Smithdecomposition, etc.).
Product Description
Scheduling and Automatic Parallelization This book offers a detailed and self-contained presentation for studyi ng loop transformations, the detection of parallel loops, and how to u se them to detect parallelism in a specific program. It provides caref ul explanation and exposition for all parallel-loop algorithms that ha ve been designed recently in a framework of scheduling algorithms on c yclic graphs, primarily task graph scheduling and loop nest scheduling perspectives. The book is an essential text/reference for the latest developments in automatic parallelization methods used for scheduling, compilers, and program transformations. Professionals, researchers an d graduates in computer scienc...
"About this title" may belong to another edition of this title.