rocprofiler-sdk/rccl/details/api_trace.h File Reference

rocprofiler-sdk/rccl/details/api_trace.h File Reference#

Rocprofiler SDK Developer API: rocprofiler-sdk/rccl/details/api_trace.h File Reference
Rocprofiler SDK Developer API 0.5.0
ROCm Profiling API and tools
api_trace.h File Reference
#include <rocprofiler-sdk/rccl/details/rccl.h>
#include <stddef.h>
#include <stdint.h>
+ Include dependency graph for api_trace.h:

Go to the source code of this file.

Data Structures

struct  rcclApiFuncTable
 

Macros

#define ROCPROFILER_SDK_USE_SYSTEM_RCCL   0
 
#define RCCL_API_TRACE_VERSION_MAJOR   0
 
#define RCCL_API_TRACE_VERSION_PATCH   0
 
#define RCCL_EXTERN_C_INIT
 
#define RCCL_EXTERN_C_FINI
 

Typedefs

typedef uint64_t rccl_range_id_t
 
typedef ncclResult_t(* ncclAllGather_fn_t) (const void *sendbuff, void *recvbuff, unsigned long sendcount, ncclDataType_t datatype, ncclComm_t comm, hipStream_t stream)
 
typedef ncclResult_t(* ncclAllReduce_fn_t) (const void *sendbuff, void *recvbuff, unsigned long count, ncclDataType_t datatype, ncclRedOp_t op, struct ncclComm *comm, hipStream_t stream)
 
typedef ncclResult_t(* ncclAllToAll_fn_t) (const void *sendbuff, void *recvbuff, unsigned long count, ncclDataType_t datatype, ncclComm_t comm, hipStream_t stream)
 
typedef ncclResult_t(* ncclAllToAllv_fn_t) (const void *sendbuff, const unsigned long sendcounts[], const unsigned long sdispls[], void *recvbuff, const unsigned long recvcounts[], const unsigned long rdispls[], ncclDataType_t datatype, ncclComm_t comm, hipStream_t stream)
 
typedef ncclResult_t(* ncclBroadcast_fn_t) (const void *sendbuff, void *recvbuff, unsigned long count, ncclDataType_t datatype, int root, ncclComm_t comm, hipStream_t stream)
 
typedef ncclResult_t(* ncclGather_fn_t) (const void *sendbuff, void *recvbuff, unsigned long sendcount, ncclDataType_t datatype, int root, ncclComm_t comm, hipStream_t stream)
 
typedef ncclResult_t(* ncclReduce_fn_t) (const void *sendbuff, void *recvbuff, unsigned long count, ncclDataType_t datatype, ncclRedOp_t op, int root, ncclComm_t comm, hipStream_t stream)
 
typedef ncclResult_t(* ncclReduceScatter_fn_t) (const void *sendbuff, void *recvbuff, unsigned long recvcount, ncclDataType_t datatype, ncclRedOp_t op, struct ncclComm *comm, hipStream_t stream)
 
typedef ncclResult_t(* ncclScatter_fn_t) (const void *sendbuff, void *recvbuff, unsigned long recvcount, ncclDataType_t datatype, int root, ncclComm_t comm, hipStream_t stream)
 
typedef ncclResult_t(* ncclSend_fn_t) (const void *sendbuff, unsigned long count, ncclDataType_t datatype, int peer, ncclComm_t comm, hipStream_t stream)
 
typedef ncclResult_t(* ncclRecv_fn_t) (void *recvbuff, unsigned long count, ncclDataType_t datatype, int peer, ncclComm_t comm, hipStream_t stream)
 
typedef ncclResult_t(* ncclRedOpCreatePreMulSum_fn_t) (ncclRedOp_t *op, void *scalar, ncclDataType_t datatype, ncclScalarResidence_t residence, ncclComm_t comm)
 
typedef ncclResult_t(* ncclRedOpDestroy_fn_t) (ncclRedOp_t op, ncclComm_t comm)
 
typedef ncclResult_t(* ncclGroupStart_fn_t) ()
 
typedef ncclResult_t(* ncclGroupEnd_fn_t) ()
 
typedef ncclResult_t(* ncclGetVersion_fn_t) (int *version)
 
typedef ncclResult_t(* ncclGetUniqueId_fn_t) (ncclUniqueId *out)
 
typedef ncclResult_t(* ncclCommInitRank_fn_t) (ncclComm_t *newcomm, int nranks, ncclUniqueId commId, int myrank)
 
typedef ncclResult_t(* ncclCommInitAll_fn_t) (ncclComm_t *comms, int ndev, const int *devlist)
 
typedef ncclResult_t(* ncclCommInitRankConfig_fn_t) (ncclComm_t *comm, int nranks, ncclUniqueId commId, int myrank, ncclConfig_t *config)
 
typedef ncclResult_t(* ncclCommFinalize_fn_t) (ncclComm_t comm)
 
typedef ncclResult_t(* ncclCommDestroy_fn_t) (ncclComm_t comm)
 
typedef ncclResult_t(* ncclCommAbort_fn_t) (ncclComm_t comm)
 
typedef ncclResult_t(* ncclCommSplit_fn_t) (ncclComm_t comm, int color, int key, ncclComm_t *newcomm, ncclConfig_t *config)
 
typedef const char *(* ncclGetErrorString_fn_t) (ncclResult_t code)
 
typedef const char *(* ncclGetLastError_fn_t) (const ncclComm_t comm)
 
typedef ncclResult_t(* ncclCommGetAsyncError_fn_t) (ncclComm_t comm, ncclResult_t *asyncError)
 
typedef ncclResult_t(* ncclCommCount_fn_t) (const ncclComm_t comm, int *count)
 
typedef ncclResult_t(* ncclCommCuDevice_fn_t) (const ncclComm_t comm, int *devid)
 
typedef ncclResult_t(* ncclCommUserRank_fn_t) (const ncclComm_t comm, int *rank)
 
typedef ncclResult_t(* ncclMemAlloc_fn_t) (void **ptr, unsigned long size)
 
typedef ncclResult_t(* ncclMemFree_fn_t) (void *ptr)
 
typedef ncclResult_t(* mscclLoadAlgo_fn_t) (const char *mscclAlgoFilePath, mscclAlgoHandle_t *mscclAlgoHandle, int rank)
 
typedef ncclResult_t(* mscclRunAlgo_fn_t) (const void *sendBuff, const unsigned long sendCounts[], const unsigned long sDisPls[], void *recvBuff, const unsigned long recvCounts[], const unsigned long rDisPls[], unsigned long count, ncclDataType_t dataType, int root, int peer, ncclRedOp_t op, mscclAlgoHandle_t mscclAlgoHandle, ncclComm_t comm, hipStream_t stream)
 
typedef ncclResult_t(* mscclUnloadAlgo_fn_t) (mscclAlgoHandle_t mscclAlgoHandle)
 
typedef ncclResult_t(* ncclCommRegister_fn_t) (const ncclComm_t comm, void *buff, unsigned long size, void **handle)
 
typedef ncclResult_t(* ncclCommDeregister_fn_t) (const ncclComm_t comm, void *handle)
 

Data Structure Documentation

◆ rcclApiFuncTable

struct rcclApiFuncTable

Definition at line 227 of file api_trace.h.

+ Collaboration diagram for rcclApiFuncTable:
Data Fields
mscclLoadAlgo_fn_t mscclLoadAlgo_fn
mscclRunAlgo_fn_t mscclRunAlgo_fn
mscclUnloadAlgo_fn_t mscclUnloadAlgo_fn
ncclAllGather_fn_t ncclAllGather_fn
ncclAllReduce_fn_t ncclAllReduce_fn
ncclAllToAll_fn_t ncclAllToAll_fn
ncclAllToAllv_fn_t ncclAllToAllv_fn
ncclBroadcast_fn_t ncclBroadcast_fn
ncclCommAbort_fn_t ncclCommAbort_fn
ncclCommCount_fn_t ncclCommCount_fn
ncclCommCuDevice_fn_t ncclCommCuDevice_fn
ncclCommDeregister_fn_t ncclCommDeregister_fn
ncclCommDestroy_fn_t ncclCommDestroy_fn
ncclCommFinalize_fn_t ncclCommFinalize_fn
ncclCommGetAsyncError_fn_t ncclCommGetAsyncError_fn
ncclCommInitAll_fn_t ncclCommInitAll_fn
ncclCommInitRank_fn_t ncclCommInitRank_fn
ncclCommInitRankConfig_fn_t ncclCommInitRankConfig_fn
ncclCommRegister_fn_t ncclCommRegister_fn
ncclCommSplit_fn_t ncclCommSplit_fn
ncclCommUserRank_fn_t ncclCommUserRank_fn
ncclGather_fn_t ncclGather_fn
ncclGetErrorString_fn_t ncclGetErrorString_fn
ncclGetLastError_fn_t ncclGetLastError_fn
ncclGetUniqueId_fn_t ncclGetUniqueId_fn
ncclGetVersion_fn_t ncclGetVersion_fn
ncclGroupEnd_fn_t ncclGroupEnd_fn
ncclGroupStart_fn_t ncclGroupStart_fn
ncclMemAlloc_fn_t ncclMemAlloc_fn
ncclMemFree_fn_t ncclMemFree_fn
ncclRecv_fn_t ncclRecv_fn
ncclRedOpCreatePreMulSum_fn_t ncclRedOpCreatePreMulSum_fn
ncclRedOpDestroy_fn_t ncclRedOpDestroy_fn
ncclReduce_fn_t ncclReduce_fn
ncclReduceScatter_fn_t ncclReduceScatter_fn
ncclScatter_fn_t ncclScatter_fn
ncclSend_fn_t ncclSend_fn
uint64_t size

Macro Definition Documentation

◆ RCCL_API_TRACE_VERSION_MAJOR

#define RCCL_API_TRACE_VERSION_MAJOR   0

Definition at line 47 of file api_trace.h.

◆ RCCL_API_TRACE_VERSION_PATCH

#define RCCL_API_TRACE_VERSION_PATCH   0

Definition at line 50 of file api_trace.h.

◆ RCCL_EXTERN_C_FINI

#define RCCL_EXTERN_C_FINI

Definition at line 64 of file api_trace.h.

◆ RCCL_EXTERN_C_INIT

#define RCCL_EXTERN_C_INIT

Definition at line 56 of file api_trace.h.

◆ ROCPROFILER_SDK_USE_SYSTEM_RCCL

#define ROCPROFILER_SDK_USE_SYSTEM_RCCL   0

Definition at line 33 of file api_trace.h.

Typedef Documentation

◆ mscclLoadAlgo_fn_t

typedef ncclResult_t(* mscclLoadAlgo_fn_t) (const char *mscclAlgoFilePath, mscclAlgoHandle_t *mscclAlgoHandle, int rank)

Definition at line 199 of file api_trace.h.

◆ mscclRunAlgo_fn_t

typedef ncclResult_t(* mscclRunAlgo_fn_t) (const void *sendBuff, const unsigned long sendCounts[], const unsigned long sDisPls[], void *recvBuff, const unsigned long recvCounts[], const unsigned long rDisPls[], unsigned long count, ncclDataType_t dataType, int root, int peer, ncclRedOp_t op, mscclAlgoHandle_t mscclAlgoHandle, ncclComm_t comm, hipStream_t stream)

Definition at line 203 of file api_trace.h.

◆ mscclUnloadAlgo_fn_t

typedef ncclResult_t(* mscclUnloadAlgo_fn_t) (mscclAlgoHandle_t mscclAlgoHandle)

Definition at line 218 of file api_trace.h.

◆ ncclAllGather_fn_t

typedef ncclResult_t(* ncclAllGather_fn_t) (const void *sendbuff, void *recvbuff, unsigned long sendcount, ncclDataType_t datatype, ncclComm_t comm, hipStream_t stream)

Definition at line 71 of file api_trace.h.

◆ ncclAllReduce_fn_t

typedef ncclResult_t(* ncclAllReduce_fn_t) (const void *sendbuff, void *recvbuff, unsigned long count, ncclDataType_t datatype, ncclRedOp_t op, struct ncclComm *comm, hipStream_t stream)

Definition at line 77 of file api_trace.h.

◆ ncclAllToAll_fn_t

typedef ncclResult_t(* ncclAllToAll_fn_t) (const void *sendbuff, void *recvbuff, unsigned long count, ncclDataType_t datatype, ncclComm_t comm, hipStream_t stream)

Definition at line 84 of file api_trace.h.

◆ ncclAllToAllv_fn_t

typedef ncclResult_t(* ncclAllToAllv_fn_t) (const void *sendbuff, const unsigned long sendcounts[], const unsigned long sdispls[], void *recvbuff, const unsigned long recvcounts[], const unsigned long rdispls[], ncclDataType_t datatype, ncclComm_t comm, hipStream_t stream)

Definition at line 90 of file api_trace.h.

◆ ncclBroadcast_fn_t

typedef ncclResult_t(* ncclBroadcast_fn_t) (const void *sendbuff, void *recvbuff, unsigned long count, ncclDataType_t datatype, int root, ncclComm_t comm, hipStream_t stream)

Definition at line 99 of file api_trace.h.

◆ ncclCommAbort_fn_t

typedef ncclResult_t(* ncclCommAbort_fn_t) (ncclComm_t comm)

Definition at line 175 of file api_trace.h.

◆ ncclCommCount_fn_t

typedef ncclResult_t(* ncclCommCount_fn_t) (const ncclComm_t comm, int *count)

Definition at line 189 of file api_trace.h.

◆ ncclCommCuDevice_fn_t

typedef ncclResult_t(* ncclCommCuDevice_fn_t) (const ncclComm_t comm, int *devid)

Definition at line 191 of file api_trace.h.

◆ ncclCommDeregister_fn_t

typedef ncclResult_t(* ncclCommDeregister_fn_t) (const ncclComm_t comm, void *handle)

Definition at line 225 of file api_trace.h.

◆ ncclCommDestroy_fn_t

typedef ncclResult_t(* ncclCommDestroy_fn_t) (ncclComm_t comm)

Definition at line 173 of file api_trace.h.

◆ ncclCommFinalize_fn_t

typedef ncclResult_t(* ncclCommFinalize_fn_t) (ncclComm_t comm)

Definition at line 171 of file api_trace.h.

◆ ncclCommGetAsyncError_fn_t

typedef ncclResult_t(* ncclCommGetAsyncError_fn_t) (ncclComm_t comm, ncclResult_t *asyncError)

Definition at line 187 of file api_trace.h.

◆ ncclCommInitAll_fn_t

typedef ncclResult_t(* ncclCommInitAll_fn_t) (ncclComm_t *comms, int ndev, const int *devlist)

Definition at line 163 of file api_trace.h.

◆ ncclCommInitRank_fn_t

typedef ncclResult_t(* ncclCommInitRank_fn_t) (ncclComm_t *newcomm, int nranks, ncclUniqueId commId, int myrank)

Definition at line 158 of file api_trace.h.

◆ ncclCommInitRankConfig_fn_t

typedef ncclResult_t(* ncclCommInitRankConfig_fn_t) (ncclComm_t *comm, int nranks, ncclUniqueId commId, int myrank, ncclConfig_t *config)

Definition at line 165 of file api_trace.h.

◆ ncclCommRegister_fn_t

typedef ncclResult_t(* ncclCommRegister_fn_t) (const ncclComm_t comm, void *buff, unsigned long size, void **handle)

Definition at line 220 of file api_trace.h.

◆ ncclCommSplit_fn_t

typedef ncclResult_t(* ncclCommSplit_fn_t) (ncclComm_t comm, int color, int key, ncclComm_t *newcomm, ncclConfig_t *config)

Definition at line 177 of file api_trace.h.

◆ ncclCommUserRank_fn_t

typedef ncclResult_t(* ncclCommUserRank_fn_t) (const ncclComm_t comm, int *rank)

Definition at line 193 of file api_trace.h.

◆ ncclGather_fn_t

typedef ncclResult_t(* ncclGather_fn_t) (const void *sendbuff, void *recvbuff, unsigned long sendcount, ncclDataType_t datatype, int root, ncclComm_t comm, hipStream_t stream)

Definition at line 106 of file api_trace.h.

◆ ncclGetErrorString_fn_t

typedef const char *(* ncclGetErrorString_fn_t) (ncclResult_t code)

Definition at line 183 of file api_trace.h.

◆ ncclGetLastError_fn_t

typedef const char *(* ncclGetLastError_fn_t) (const ncclComm_t comm)

Definition at line 185 of file api_trace.h.

◆ ncclGetUniqueId_fn_t

typedef ncclResult_t(* ncclGetUniqueId_fn_t) (ncclUniqueId *out)

Definition at line 156 of file api_trace.h.

◆ ncclGetVersion_fn_t

typedef ncclResult_t(* ncclGetVersion_fn_t) (int *version)

Definition at line 155 of file api_trace.h.

◆ ncclGroupEnd_fn_t

typedef ncclResult_t(* ncclGroupEnd_fn_t) ()

Definition at line 154 of file api_trace.h.

◆ ncclGroupStart_fn_t

typedef ncclResult_t(* ncclGroupStart_fn_t) ()

Definition at line 153 of file api_trace.h.

◆ ncclMemAlloc_fn_t

typedef ncclResult_t(* ncclMemAlloc_fn_t) (void **ptr, unsigned long size)

Definition at line 195 of file api_trace.h.

◆ ncclMemFree_fn_t

typedef ncclResult_t(* ncclMemFree_fn_t) (void *ptr)

Definition at line 197 of file api_trace.h.

◆ ncclRecv_fn_t

typedef ncclResult_t(* ncclRecv_fn_t) (void *recvbuff, unsigned long count, ncclDataType_t datatype, int peer, ncclComm_t comm, hipStream_t stream)

Definition at line 141 of file api_trace.h.

◆ ncclRedOpCreatePreMulSum_fn_t

typedef ncclResult_t(* ncclRedOpCreatePreMulSum_fn_t) (ncclRedOp_t *op, void *scalar, ncclDataType_t datatype, ncclScalarResidence_t residence, ncclComm_t comm)

Definition at line 147 of file api_trace.h.

◆ ncclRedOpDestroy_fn_t

typedef ncclResult_t(* ncclRedOpDestroy_fn_t) (ncclRedOp_t op, ncclComm_t comm)

Definition at line 152 of file api_trace.h.

◆ ncclReduce_fn_t

typedef ncclResult_t(* ncclReduce_fn_t) (const void *sendbuff, void *recvbuff, unsigned long count, ncclDataType_t datatype, ncclRedOp_t op, int root, ncclComm_t comm, hipStream_t stream)

Definition at line 113 of file api_trace.h.

◆ ncclReduceScatter_fn_t

typedef ncclResult_t(* ncclReduceScatter_fn_t) (const void *sendbuff, void *recvbuff, unsigned long recvcount, ncclDataType_t datatype, ncclRedOp_t op, struct ncclComm *comm, hipStream_t stream)

Definition at line 121 of file api_trace.h.

◆ ncclScatter_fn_t

typedef ncclResult_t(* ncclScatter_fn_t) (const void *sendbuff, void *recvbuff, unsigned long recvcount, ncclDataType_t datatype, int root, ncclComm_t comm, hipStream_t stream)

Definition at line 128 of file api_trace.h.

◆ ncclSend_fn_t

typedef ncclResult_t(* ncclSend_fn_t) (const void *sendbuff, unsigned long count, ncclDataType_t datatype, int peer, ncclComm_t comm, hipStream_t stream)

Definition at line 135 of file api_trace.h.

◆ rccl_range_id_t

typedef uint64_t rccl_range_id_t

Definition at line 70 of file api_trace.h.