Automatic Parallelization

An Overview of Fundamental Compiler Techniques

Nonfiction, Computers, Advanced Computing, Parallel Processing, Engineering, Computer Architecture, Database Management, Data Processing
Cover of the book Automatic Parallelization by Samuel P. Midkiff, Morgan & Claypool Publishers
View on Amazon View on AbeBooks View on Kobo View on B.Depository View on eBay View on Walmart
Author: Samuel P. Midkiff ISBN: 9781608458424
Publisher: Morgan & Claypool Publishers Publication: January 1, 2012
Imprint: Morgan & Claypool Publishers Language: English
Author: Samuel P. Midkiff
ISBN: 9781608458424
Publisher: Morgan & Claypool Publishers
Publication: January 1, 2012
Imprint: Morgan & Claypool Publishers
Language: English

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. Table of Contents: Introduction and overview / Dependence analysis, dependence graphs and alias analysis / Program parallelization / Transformations to modify and eliminate dependences / Transformation of iterative and recursive constructs / Compiling for distributed memory machines / Solving Diophantine equations / A guide to further reading

View on Amazon View on AbeBooks View on Kobo View on B.Depository View on eBay View on Walmart

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. Table of Contents: Introduction and overview / Dependence analysis, dependence graphs and alias analysis / Program parallelization / Transformations to modify and eliminate dependences / Transformation of iterative and recursive constructs / Compiling for distributed memory machines / Solving Diophantine equations / A guide to further reading

More books from Morgan & Claypool Publishers

Cover of the book Women and Physics by Samuel P. Midkiff
Cover of the book Testing iOS Apps with HadoopUnit by Samuel P. Midkiff
Cover of the book Python and Matplotlib Essentials for Scientists and Engineers by Samuel P. Midkiff
Cover of the book Crystal Engineering by Samuel P. Midkiff
Cover of the book Logic for Physicists by Samuel P. Midkiff
Cover of the book Markov Logic by Samuel P. Midkiff
Cover of the book Musical Sound, Instruments, and Equipment by Samuel P. Midkiff
Cover of the book Nanomaterials by Samuel P. Midkiff
Cover of the book An Introduction to the Gas Phase by Samuel P. Midkiff
Cover of the book Atomic Structure by Samuel P. Midkiff
Cover of the book Modeling Self-Heating Effects in Nanoscale Devices by Samuel P. Midkiff
Cover of the book An Introduction to Quantum Monte Carlo Methods by Samuel P. Midkiff
Cover of the book Introduction to Nanomaterials in Medicine by Samuel P. Midkiff
Cover of the book Exploring physics with computer animation and PhysGL by Samuel P. Midkiff
Cover of the book Customizable Computing by Samuel P. Midkiff
We use our own "cookies" and third party cookies to improve services and to see statistical information. By using this website, you agree to our Privacy Policy