6.39. Surface Object Management
This section describes the surface object management functions of the low-level CUDA driver application programming interface.
The surface object API is only supported on devices of compute capability 3.0 or higher.
Functions
- CUresult cuSurfObjectCreate(CUsurfObject *pSurfObject, const CUDA_RESOURCE_DESC *pResDesc)
Creates a surface object.
- CUresult cuSurfObjectDestroy(CUsurfObject surfObject)
Destroys a surface object.
- CUresult cuSurfObjectGetResourceDesc(CUDA_RESOURCE_DESC *pResDesc, CUsurfObject surfObject)
Returns a surface object's resource descriptor.
6.39.1. Functions
-
CUresult cuSurfObjectCreate(CUsurfObject *pSurfObject, const CUDA_RESOURCE_DESC *pResDesc)
Creates a surface object.
Creates a surface object and returns it in
pSurfObject.pResDescdescribes the data to perform surface load/stores on. CUDA_RESOURCE_DESC::resType must be CU_RESOURCE_TYPE_ARRAY and CUDA_RESOURCE_DESC::res::array::hArray must be set to a valid CUDA array handle. CUDA_RESOURCE_DESC::flags must be set to zero.Surface objects are only supported on devices of compute capability 3.0 or higher. Additionally, a surface object is an opaque value, and, as such, should only be accessed through CUDA API calls.
See also
cuSurfObjectDestroy, ::cudaCreateSurfaceObject
- Parameters
pSurfObject – - Surface object to create
pResDesc – - Resource descriptor
- Returns
CUDA_SUCCESS, CUDA_ERROR_DEINITIALIZED, CUDA_ERROR_NOT_INITIALIZED, CUDA_ERROR_INVALID_CONTEXT, CUDA_ERROR_INVALID_VALUE
-
CUresult cuSurfObjectDestroy(CUsurfObject surfObject)
Destroys a surface object.
Destroys the surface object specified by
surfObject.See also
cuSurfObjectCreate, ::cudaDestroySurfaceObject
- Parameters
surfObject – - Surface object to destroy
- Returns
CUDA_SUCCESS, CUDA_ERROR_DEINITIALIZED, CUDA_ERROR_NOT_INITIALIZED, CUDA_ERROR_INVALID_CONTEXT, CUDA_ERROR_INVALID_VALUE
-
CUresult cuSurfObjectGetResourceDesc(CUDA_RESOURCE_DESC *pResDesc, CUsurfObject surfObject)
Returns a surface object’s resource descriptor.
Returns the resource descriptor for the surface object specified by
surfObject.See also
cuSurfObjectCreate, ::cudaGetSurfaceObjectResourceDesc
- Parameters
pResDesc – - Resource descriptor
surfObject – - Surface object
- Returns
CUDA_SUCCESS, CUDA_ERROR_DEINITIALIZED, CUDA_ERROR_NOT_INITIALIZED, CUDA_ERROR_INVALID_CONTEXT, CUDA_ERROR_INVALID_VALUE