Patterns for Parallel Programming on GPUs: 34 (Computational Science, Engineering & Technology Series) - Softcover

 
9781874672579: Patterns for Parallel Programming on GPUs: 34 (Computational Science, Engineering & Technology Series)

Synopsis

With contributions from: M. Amini, C. Ancourt, F. Andzembe, V. Arslan, R. Barrere, M. Barreteau, J.-M. Batto, F. Boumezbeur, M. Bourgoin, F. Catthoor, E. Chailloux, H.-P. Charles, J.M. Chauvet, A. Cohen, S. Contassot-Vivier, R. Couturier, B. Creusillet, G.C. de Verdiere, V. Ducrot, J.I. Gomez, D.R.C. Hill, F. Irigoin, J.C. Juega, R. Keryell, J. Koko, J.-L. Lamotte, E. Lenormand, V. Lomuller, F. Magoules, E. Mahe, S. Monot, J. Passerat-Palmbach, T. Saidani, B. Starynkevitch, F. Tahi, D. Tello, S. Tempel, C. Tenllado, V.D. Tran, S. Verdoolaege, S. Vialle and L. Ziane Khodja. Multi-core and many-core platforms lead the computer industry, forcing software developers to adopt new programming paradigms, in order to fully exploit their computing capabilities such as graphics processing units (GPUs). GPU-based application development requires a great effort from application programmers. On one hand, they must take advantage of the massively parallel platform in the problem modeling. On the other hand, the applications have to make an efficient use of the heterogeneous memory system, managing several levels that are software or hardware controlled. Generally the programmers' methodology consists in evaluating several mapping alternatives, guided by their experience and intuition, which becomes inefficient for software development and maintenance.This volume presents in thirteen chapters some methodologies and design patterns for parallel programing on GPUs, to help programmers make good choices. Each chapter, written by different authors, presents a state-of-the-art of some innovative methods, techniques or algorithms useful for GPU computing. A bibliography is included at the end of each chapter.The main topics considered in the book include: CUDA and OpenCL programming language, parallelizing compilers generating code, dynamic code generation, parallel skeletons, high level data flow models, optimizing source code, and numerical methods. The book includes details of the implementation of the algorithms as well as both academic and real engineering examples.

"synopsis" may belong to another edition of this title.

About the Author

Frederic Magoules is Professor at Ecole Centrale Paris, leading the High Performance Computing research group at the Applied Mathematics and Systems laboratory.

"About this title" may belong to another edition of this title.