CUDA Driver API (PDF) - v11.0.207 (older) - Last updated June 29, 2020 - Send Feedback

## 6.7. CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC Struct Reference

## [Data types used by CUDA driver]

External semaphore handle descriptor

### Public Variables

int fd
unsigned int flags
void * handle
const void * name
const void * nvSciSyncObj
CUexternalSemaphoreHandleType type
CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC::@12::@13 win32

### Variables

int CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC::fd [inherited]

  File descriptor referencing the semaphore object. Valid when type is CU_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD

unsigned int CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC::flags [inherited]

  Flags reserved for the future. Must be zero.

void * CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC::handle [inherited]

  Valid NT handle. Must be NULL if 'name' is non-NULL

const void * CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC::name [inherited]

  Name of a valid synchronization primitive. Must be NULL if 'handle' is non-NULL.

const void * CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC::nvSciSyncObj [inherited]

  Valid NvSciSyncObj. Must be non NULL

CUexternalSemaphoreHandleType CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC::type [inherited]

  Type of the handle

CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC::@12::@13 CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC::win32 [inherited]

  Win32 handle referencing the semaphore object. Valid when type is one of the following:

  - CU_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32

  - CU_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT

  - CU_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE

  - CU_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D11_FENCE

  - CU_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D11_KEYED_MUTEX Exactly one of 'handle' and 'name' must be non-NULL. If type is one of the following: CU_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT CU_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D11_KEYED_MUTEX_KMT then 'name' must be NULL.