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

## 6.11. cudaExternalSemaphoreHandleDesc Struct Reference

## [Data types used by CUDA Runtime]

External semaphore handle descriptor

### Public Variables

int fd
unsigned int flags
void * handle
const void * name
const void * nvSciSyncObj
enumcudaExternalSemaphoreHandleType type
cudaExternalSemaphoreHandleDesc::@8::@9 win32

### Variables

int cudaExternalSemaphoreHandleDesc::fd [inherited]

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

unsigned int cudaExternalSemaphoreHandleDesc::flags [inherited]

  Flags reserved for the future. Must be zero.

void * cudaExternalSemaphoreHandleDesc::handle [inherited]

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

const void * cudaExternalSemaphoreHandleDesc::name [inherited]

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

const void * cudaExternalSemaphoreHandleDesc::nvSciSyncObj [inherited]

  Valid NvSciSyncObj. Must be non NULL

enumcudaExternalSemaphoreHandleType cudaExternalSemaphoreHandleDesc::type [inherited]

  Type of the handle

cudaExternalSemaphoreHandleDesc::@8::@9 cudaExternalSemaphoreHandleDesc::win32 [inherited]

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

  - cudaExternalSemaphoreHandleTypeOpaqueWin32

  - cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt

  - cudaExternalSemaphoreHandleTypeD3D12Fence

  - cudaExternalSemaphoreHandleTypeD3D11Fence

  - cudaExternalSemaphoreHandleTypeKeyedMutex Exactly one of 'handle' and 'name' must be non-NULL. If type is one of the following: cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt cudaExternalSemaphoreHandleTypeKeyedMutexKmt then 'name' must be NULL.