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 The Search and Discovery of the Higgs Boson by Samuel P. Midkiff
Cover of the book Experience Design by Samuel P. Midkiff
Cover of the book String Theory and the Real World by Samuel P. Midkiff
Cover of the book Defining and Measuring Nature by Samuel P. Midkiff
Cover of the book Smarter Than Their Machines by Samuel P. Midkiff
Cover of the book Of Clocks and Time by Samuel P. Midkiff
Cover of the book Resource-Oriented Architecture Patterns for Webs of Data by Samuel P. Midkiff
Cover of the book Communities of Computing by Samuel P. Midkiff
Cover of the book Quantifying Measurement by Samuel P. Midkiff
Cover of the book Earthquakes by Samuel P. Midkiff
Cover of the book Deep Learning for Computer Architects by Samuel P. Midkiff
Cover of the book Keplerian Ellipses by Samuel P. Midkiff
Cover of the book Organ Printing by Samuel P. Midkiff
Cover of the book Visual Astronomy by Samuel P. Midkiff
Cover of the book Researching Serendipity in Digital Information Environments 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