Automatic Parallelization An Overview of Fundamental Compiler Techniques

by Samuel Midkiff

Part of the Synthesis Lectures on Computer Architecture Series

Automatic Parallelization An Overview of Fundamental Compiler Techniques Synopsis

Compiling for parallelism is a longstanding topic of compiler research. This book describes the fundamental principles of compiling regular numerical programs for parallelism. We begin with an explanation of analyses that allow a compiler to understand the interaction of data reads and writes in different statements and loop iterations during program execution. These analyses include dependence analysis, use-def analysis and pointer analysis. Next, we describe how the results of these analyses are used to enable transformations that make loops more amenable to parallelization, and discuss transformations that expose parallelism to target shared memory multicore and vector processors. We then discuss some problems that arise when parallelizing programs for execution on distributed memory machines. Finally, we conclude with an overview of solving Diophantine equations and suggestions for further readings in the topics of this book to enable the interested reader to delve deeper into the field.

Book Information

ISBN: 9781608458417
Publication date: 1st January 2012
Author: Samuel Midkiff
Publisher: Morgan & Claypool Publishers
Format: Paperback
Pagination: 169 pages
Categories: Computer science,

About Samuel Midkiff

More About Samuel Midkiff

Share this book