NVTX C API Reference v3
NVIDIA Tools Extension Library
|
Data Structures | |
struct | nvtxSyncUserAttributes_t |
User Defined Synchronization Object Attributes Structure. . More... | |
Typedefs | |
typedef enum nvtxResourceSyncLinuxType_t | nvtxResourceSyncAndroidType_t |
Resource type values for Android come from Linux. More... | |
typedef struct nvtxSyncUser * | nvtxSyncUser_t |
User Defined Synchronization Object Handle . . More... | |
Enumerations | |
enum | nvtxResourceSyncPosixThreadType_t { NVTX_RESOURCE_TYPE_SYNC_PTHREAD_MUTEX = NVTX_RESOURCE_MAKE_TYPE(SYNC_PTHREAD, 1) , NVTX_RESOURCE_TYPE_SYNC_PTHREAD_CONDITION = NVTX_RESOURCE_MAKE_TYPE(SYNC_PTHREAD, 2) , NVTX_RESOURCE_TYPE_SYNC_PTHREAD_RWLOCK = NVTX_RESOURCE_MAKE_TYPE(SYNC_PTHREAD, 3) , NVTX_RESOURCE_TYPE_SYNC_PTHREAD_BARRIER = NVTX_RESOURCE_MAKE_TYPE(SYNC_PTHREAD, 4) , NVTX_RESOURCE_TYPE_SYNC_PTHREAD_SPINLOCK = NVTX_RESOURCE_MAKE_TYPE(SYNC_PTHREAD, 5) , NVTX_RESOURCE_TYPE_SYNC_PTHREAD_ONCE = NVTX_RESOURCE_MAKE_TYPE(SYNC_PTHREAD, 6) } |
Resource type values for OSs with POSIX Thread API support. More... | |
enum | nvtxResourceSyncWindowsType_t { NVTX_RESOURCE_TYPE_SYNC_WINDOWS_MUTEX = NVTX_RESOURCE_MAKE_TYPE(SYNC_OS, 1) , NVTX_RESOURCE_TYPE_SYNC_WINDOWS_SEMAPHORE = NVTX_RESOURCE_MAKE_TYPE(SYNC_OS, 2) , NVTX_RESOURCE_TYPE_SYNC_WINDOWS_EVENT = NVTX_RESOURCE_MAKE_TYPE(SYNC_OS, 3) , NVTX_RESOURCE_TYPE_SYNC_WINDOWS_CRITICAL_SECTION = NVTX_RESOURCE_MAKE_TYPE(SYNC_OS, 4) , NVTX_RESOURCE_TYPE_SYNC_WINDOWS_SRWLOCK = NVTX_RESOURCE_MAKE_TYPE(SYNC_OS, 5) } |
Resource type values for Windows OSs. More... | |
enum | nvtxResourceSyncLinuxType_t { NVTX_RESOURCE_TYPE_SYNC_LINUX_MUTEX = NVTX_RESOURCE_MAKE_TYPE(SYNC_OS, 1) , NVTX_RESOURCE_TYPE_SYNC_LINUX_FUTEX = NVTX_RESOURCE_MAKE_TYPE(SYNC_OS, 2) , NVTX_RESOURCE_TYPE_SYNC_LINUX_SEMAPHORE = NVTX_RESOURCE_MAKE_TYPE(SYNC_OS, 3) , NVTX_RESOURCE_TYPE_SYNC_LINUX_COMPLETION = NVTX_RESOURCE_MAKE_TYPE(SYNC_OS, 4) , NVTX_RESOURCE_TYPE_SYNC_LINUX_SPINLOCK = NVTX_RESOURCE_MAKE_TYPE(SYNC_OS, 5) , NVTX_RESOURCE_TYPE_SYNC_LINUX_SEQLOCK = NVTX_RESOURCE_MAKE_TYPE(SYNC_OS, 6) , NVTX_RESOURCE_TYPE_SYNC_LINUX_RCU = NVTX_RESOURCE_MAKE_TYPE(SYNC_OS, 7) } |
Resource type values for Linux and Linux derived OSs such as Android. More... | |
Functions | |
NVTX_DECLSPEC nvtxSyncUser_t NVTX_API | nvtxDomainSyncUserCreate (nvtxDomainHandle_t domain, const nvtxSyncUserAttributes_t *attribs) |
Create a user defined synchronization object This is used to track non-OS synchronization working with spinlocks and atomics. More... | |
NVTX_DECLSPEC void NVTX_API | nvtxDomainSyncUserDestroy (nvtxSyncUser_t handle) |
Destroy a user defined synchronization object This is used to track non-OS synchronization working with spinlocks and atomics. More... | |
NVTX_DECLSPEC void NVTX_API | nvtxDomainSyncUserAcquireStart (nvtxSyncUser_t handle) |
Signal to tools that an attempt to acquire a user defined synchronization object. More... | |
NVTX_DECLSPEC void NVTX_API | nvtxDomainSyncUserAcquireFailed (nvtxSyncUser_t handle) |
Signal to tools of failure in acquiring a user defined synchronization object This should be called after nvtxDomainSyncUserAcquireStart. More... | |
NVTX_DECLSPEC void NVTX_API | nvtxDomainSyncUserAcquireSuccess (nvtxSyncUser_t handle) |
Signal to tools of success in acquiring a user defined synchronization object This should be called after nvtxDomainSyncUserAcquireStart. More... | |
NVTX_DECLSPEC void NVTX_API | nvtxDomainSyncUserReleasing (nvtxSyncUser_t handle) |
Signal to tools of releasing a reservation on user defined synchronization object This should be called after nvtxDomainSyncUserAcquireSuccess. More... | |
See page Synchronization.
typedef enum nvtxResourceSyncLinuxType_t nvtxResourceSyncAndroidType_t |
Resource type values for Android come from Linux.
Definition at line 142 of file nvToolsExtSync.h.
typedef struct nvtxSyncUser* nvtxSyncUser_t |
User Defined Synchronization Object Handle . .
This structure is opaque to the user and is used as a handle to reference a user defined syncrhonization object. The tools will return a pointer through the API for the application to hold on it's behalf to reference the string in the future.
Definition at line 152 of file nvToolsExtSync.h.
Resource type values for Linux and Linux derived OSs such as Android.
Definition at line 126 of file nvToolsExtSync.h.
Resource type values for OSs with POSIX Thread API support.
Definition at line 101 of file nvToolsExtSync.h.
Resource type values for Windows OSs.
Definition at line 113 of file nvToolsExtSync.h.
NVTX_DECLSPEC void NVTX_API nvtxDomainSyncUserAcquireFailed | ( | nvtxSyncUser_t | handle | ) |
Signal to tools of failure in acquiring a user defined synchronization object This should be called after nvtxDomainSyncUserAcquireStart.
handle | - A handle to the object to operate on. |
NVTX_DECLSPEC void NVTX_API nvtxDomainSyncUserAcquireStart | ( | nvtxSyncUser_t | handle | ) |
Signal to tools that an attempt to acquire a user defined synchronization object.
handle | - A handle to the object to operate on. |
NVTX_DECLSPEC void NVTX_API nvtxDomainSyncUserAcquireSuccess | ( | nvtxSyncUser_t | handle | ) |
Signal to tools of success in acquiring a user defined synchronization object This should be called after nvtxDomainSyncUserAcquireStart.
handle | - A handle to the object to operate on. |
NVTX_DECLSPEC nvtxSyncUser_t NVTX_API nvtxDomainSyncUserCreate | ( | nvtxDomainHandle_t | domain, |
const nvtxSyncUserAttributes_t * | attribs | ||
) |
Create a user defined synchronization object This is used to track non-OS synchronization working with spinlocks and atomics.
domain | - Domain to own the resource |
attribs | - A structure to assign multiple attributes to the object. |
NVTX_DECLSPEC void NVTX_API nvtxDomainSyncUserDestroy | ( | nvtxSyncUser_t | handle | ) |
Destroy a user defined synchronization object This is used to track non-OS synchronization working with spinlocks and atomics.
handle | - A handle to the object to operate on. |
NVTX_DECLSPEC void NVTX_API nvtxDomainSyncUserReleasing | ( | nvtxSyncUser_t | handle | ) |
Signal to tools of releasing a reservation on user defined synchronization object This should be called after nvtxDomainSyncUserAcquireSuccess.
handle | - A handle to the object to operate on. |