
Fermi Asynchronous
Texture Transfers
Shalini Venkataraman
29.1 Introduction
Many real-world graphics applications need to transfer textures efficiently in and
out of the GPU memory in the form of 2D images, 2.5D terrains, or 3D volumes
and their time-varying counterparts. In the pre-Fermi generation of NVIDIA hard-
ware, any data transfer would stall the GPU from rendering because the GPU had
a single hardware execution thread that could either execute transfers or rendering.
The OpenGL pixel buffer object (PBO) [ARB 04] provides a mechanism to optimize
transfers, but it is CPU asynchronous in that it allows for concurrent CPU processing
while the GPU