Struct NVCVWorkspaceRec

Struct Documentation

struct NVCVWorkspaceRec

Aggregates multiple resources into a single workspace objects

Public Members

NVCVWorkspaceMem hostMem

Plain host memory. This should not be used in any GPU code.

On systems with a discrete GPU, this kind of memory doesn’t need a CUDA event. On systems with integrated GPU or HMM systems, there’s no difference between plain and pinned host memory with respect to synchronization.

NVCVWorkspaceMem pinnedMem

Pinned host memory.

cudaXxxAsync operations on this kind of memory are performed truly asynchronously, which calls for synchronization. When used as a staging buffer for passing data to a CUDA kernel, a typical synchronization scheme would be to wait for the ready event on host (cudaEventSynchronize), issue H2D copy and record the ready event.

NVCVWorkspaceMem cudaMem

GPU memory