Chapter 4

Pipelining data transfers with OpenACC

Jeff Larkin     NVIDIA, Santa Clara, CA, United States

Abstract

The purpose of this chapter is to introduce asynchronous programming with OpenACC, particularly in regards to a technique known as pipelining. This chapter will accelerate an existing OpenACC code by enabling the overlap of computation and data transfers.

At the end of this chapter the reader will have an understanding of:

 Asynchronous execution within OpenACC

 Pipelining as a technique to overlap data transfers with computation

 How to use the OpenACC routine directive.

Keywords

Asynchronous programming; Pipelining; Visual Profiler; Blocking; Tiling

The purpose of this chapter is to introduce asynchronous ...

Get Parallel Programming with OpenACC 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.