Programming for Hybrid Multi/Manycore MPP Systems

Nonfiction, Science & Nature, Mathematics, Arithmetic, Computers, Programming, Programming Languages, General Computing
Cover of the book Programming for Hybrid Multi/Manycore MPP Systems by Aaron Vose, John Levesque, CRC Press
View on Amazon View on AbeBooks View on Kobo View on B.Depository View on eBay View on Walmart
Author: Aaron Vose, John Levesque ISBN: 9781351643368
Publisher: CRC Press Publication: October 10, 2017
Imprint: Chapman and Hall/CRC Language: English
Author: Aaron Vose, John Levesque
ISBN: 9781351643368
Publisher: CRC Press
Publication: October 10, 2017
Imprint: Chapman and Hall/CRC
Language: English

"Ask not what your compiler can do for you, ask what you can do for your compiler."
--John Levesque, Director of Cray’s Supercomputing Centers of Excellence

The next decade of computationally intense computing lies with more powerful multi/manycore nodes where processors share a large memory space. These nodes will be the building block for systems that range from a single node workstation up to systems approaching the exaflop regime. The node itself will consist of 10’s to 100’s of MIMD (multiple instruction, multiple data) processing units with SIMD (single instruction, multiple data) parallel instructions. Since a standard, affordable memory architecture will not be able to supply the bandwidth required by these cores, new memory organizations will be introduced. These new node architectures will represent a significant challenge to application developers.

Programming for Hybrid Multi/Manycore MPP Systems attempts to briefly describe the current state-of-the-art in programming these systems, and proposes an approach for developing a performance-portable application that can effectively utilize all of these systems from a single application. The book starts with a strategy for optimizing an application for multi/manycore architectures. It then looks at the three typical architectures, covering their advantages and disadvantages.

The next section of the book explores the other important component of the target—the compiler. The compiler will ultimately convert the input language to executable code on the target, and the book explores how to make the compiler do what we want. The book then talks about gathering runtime statistics from running the application on the important problem sets previously discussed.

How best to utilize available memory bandwidth and virtualization is covered next, along with hybridization of a program. The last part of the book includes several major applications, and examines future hardware advancements and how the application developer may prepare for those advancements.

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

"Ask not what your compiler can do for you, ask what you can do for your compiler."
--John Levesque, Director of Cray’s Supercomputing Centers of Excellence

The next decade of computationally intense computing lies with more powerful multi/manycore nodes where processors share a large memory space. These nodes will be the building block for systems that range from a single node workstation up to systems approaching the exaflop regime. The node itself will consist of 10’s to 100’s of MIMD (multiple instruction, multiple data) processing units with SIMD (single instruction, multiple data) parallel instructions. Since a standard, affordable memory architecture will not be able to supply the bandwidth required by these cores, new memory organizations will be introduced. These new node architectures will represent a significant challenge to application developers.

Programming for Hybrid Multi/Manycore MPP Systems attempts to briefly describe the current state-of-the-art in programming these systems, and proposes an approach for developing a performance-portable application that can effectively utilize all of these systems from a single application. The book starts with a strategy for optimizing an application for multi/manycore architectures. It then looks at the three typical architectures, covering their advantages and disadvantages.

The next section of the book explores the other important component of the target—the compiler. The compiler will ultimately convert the input language to executable code on the target, and the book explores how to make the compiler do what we want. The book then talks about gathering runtime statistics from running the application on the important problem sets previously discussed.

How best to utilize available memory bandwidth and virtualization is covered next, along with hybridization of a program. The last part of the book includes several major applications, and examines future hardware advancements and how the application developer may prepare for those advancements.

More books from CRC Press

Cover of the book Nanobiotechnology by Aaron Vose, John Levesque
Cover of the book Electronic and Optical Properties of Graphite-Related Systems by Aaron Vose, John Levesque
Cover of the book Materials Technology by Aaron Vose, John Levesque
Cover of the book The Strategic CIO by Aaron Vose, John Levesque
Cover of the book Geological Engineering by Aaron Vose, John Levesque
Cover of the book Decision Diagram Techniques for Micro- and Nanoelectronic Design Handbook by Aaron Vose, John Levesque
Cover of the book Urinalysis in Clinical Laboratory Practice by Aaron Vose, John Levesque
Cover of the book Challenges and Solutions by Aaron Vose, John Levesque
Cover of the book Design Management for Sustainability by Aaron Vose, John Levesque
Cover of the book Handbook of Biochemistry by Aaron Vose, John Levesque
Cover of the book Cement Production Technology by Aaron Vose, John Levesque
Cover of the book Geomechanics 93 - Strata Mechanics/ Numerical Methods/Water Jet Cutting by Aaron Vose, John Levesque
Cover of the book Energy in Agroecosystems by Aaron Vose, John Levesque
Cover of the book Ecohydrology of the Andes Páramo Region by Aaron Vose, John Levesque
Cover of the book Characterizations of C* Algebras by Aaron Vose, John Levesque
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