Chapter 6. Best Programming Practices

David Gutzwiller, NUMECA

Previous chapters have shown the details of how OpenACC can be used to identify and express parallelism in an algorithm, allowing portable heterogeneous execution. However, most real-world programming problems are far more complex than the provided code snippets and examples. Accelerating an existing application is often a bewildering and complex tradeoff of application performance, maintainability, and portability. Furthermore, in a professional programming environment developer time is a finite resource that must be taken into consideration.

This chapter introduces a set of best programming practices OpenACC developers should follow to achieve the best possible performance without ...

Get OpenACC for Programmers: Concepts and Strategies, First Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.