OpenACC for Programmers: Concepts and Strategies

OpenACC for Programmers: Concepts and Strategies

by Guido Juckeland (Author), SunitaChandrasekaran (Author)

Synopsis

The Complete, NVIDIA-Authorized Guide to OpenACC with Massively Parallel Programming

Scientists and technical professionals can use OpenACC to leverage the immense power of modern GPUs without the complexity traditionally associated with programming them. Sponsored by NVIDIA, OpenACC for Programmers is the first comprehensive and practical overview of OpenACC massively parallel programming.

OpenACC for Programmers integrates contributions from 19 leading parallel programming experts from academia, public research organizations, and industry. The authors and editors explain each key concept behind OpenACC, demonstrate how to use essential OpenACC development tools, and thoroughly explore each OpenACC feature set.

Throughout, you'll find realistic examples, hands-on exercises, and case studies showcasing the efficient use of OpenACC language constructs. You'll discover how OpenACC's language constructs can be translated to maximize application performance, and how its standard interface can target multiple platforms via widely used programming languages.

Each chapter builds on what you've already learned, helping you build practical mastery one step at a time, whether you're a GPU programmer, scientist, engineer, or student. All example code and exercise solutions are available for download at GitHub.

  • Discover how OpenACC makes scalable parallel programming easier and more practical
  • Walk through the OpenACC spec and learn how OpenACC directive syntax is structured
  • Get productive with OpenACC code editors, compilers, debuggers, and performance analysis tools
  • Build your first real-world OpenACC programs
  • Exploit loop-level parallelism in OpenACC, understand the levels of parallelism available, and maximize accuracy or performance
  • Learn how OpenACC programs are compiled
  • Master OpenACC programming best practices
  • Overcome common performance, portability, and interoperability challenges
  • Efficiently distribute tasks across multiple processors

$41.57

Quantity

2 in stock

More Information

Format: Paperback
Pages: 320
Edition: 01
Publisher: Addison Wesley
Published: 10 Sep 2017

ISBN 10: 0134694287
ISBN 13: 9780134694283

Author Bio

Sunita Chandrasekaran is assistant professor in the Computer and Information Sciences Department at the University of Delaware. Her research interests include exploring the suitability of high-level programming models and runtime systems for HPC and embedded platforms, and migrating scientific applications to heterogeneous computing systems. Dr. Chandrasekaran was a post-doctoral fellow at the University of Houston and holds a Ph.D. from Nanyang Technological University, Singapore. She is a member of OpenACC, OpenMP, MCA and SPEC HPG. She has served on the program committees of various conferences and workshops including SC, ISC, ICPP, CCGrid, Cluster, and PACT, and has co-chaired parallel programming workshops co-located with SC, ISC, IPDPS, and SIAM.


Guido Juckeland is head of the Computational Science Group, Department for Information Services and Computing, Helmholtz-Zentrum Dresden-Rossendorf, and coordinates the work of the GPU Center of Excellence at Dresden. He and also represents HZDR at the SPEC High Performance Group and OpenACC committee. He received his Ph.D. from Technische Universit (TM)t Dresden for his work on performance analysis for hardware accelerators. He was a Gordon Bell Award Finalist in 2013. Previously he worked as the IT-architect and post-doctoral researcher for the Center for Information Services and High Performance Computing (ZIH) at TU Dresden, Germany. He has served on the program committees of various conferences and workshops, including ISC, EuroPar, CCGrid, ASHES, P^3MA, PMBS, WACCPD, and PACT, and has co-chaired parallel programming workshops co-located with SC.