Cupti: CUpti_ActivityNvLink2 Struct Reference

# CUpti_ActivityNvLink2 Struct Reference
[CUPTI Activity API]

NVLink information. (deprecated in CUDA 10.0). More...

## Data Fields
uint64_t | bandwidth
uint32_t | flag
union {
} | idDev0
union {
} | idDev1
CUpti_ActivityKind | kind
uint32_t | nvlinkVersion
uint32_t | physicalNvLinkCount
int8_t | portDev0 [CUPTI_MAX_NVLINK_PORTS]
int8_t | portDev1 [CUPTI_MAX_NVLINK_PORTS]
CUpti_DevType | typeDev0
CUpti_DevType | typeDev1
uint32_t | domainId
uint32_t | index

## Detailed Description

This structure gives capabilities of each logical NVLink connection between two devices, gpu<->gpu or gpu<->CPU which can be used to understand the topology. NvLink information are now reported using the CUpti_ActivityNvLink3 activity record.

## Field Documentation

uint64_t CUpti_ActivityNvLink2::bandwidth

Banwidth of NVLink in kbytes/sec

uint32_t CUpti_ActivityNvLink2::domainId

Domain ID of NPU. On Linux, this can be queried using lspci.

uint32_t CUpti_ActivityNvLink2::flag

Flag gives capabilities of the link

See also:
  CUpti_LinkFlag

union { ... } CUpti_ActivityNvLink2::idDev0

If typeDev0 is CUPTI_DEV_TYPE_GPU, UUID for device 0. CUpti_ActivityDevice2. If typeDev0 is CUPTI_DEV_TYPE_NPU, struct npu for NPU.

union { ... } CUpti_ActivityNvLink2::idDev1

If typeDev1 is CUPTI_DEV_TYPE_GPU, UUID for device 1. CUpti_ActivityDevice2. If typeDev1 is CUPTI_DEV_TYPE_NPU, struct npu for NPU.

uint32_t CUpti_ActivityNvLink2::index

Index of the NPU. First index will always be zero.

CUpti_ActivityKind CUpti_ActivityNvLink2::kind

The activity record kind, must be CUPTI_ACTIVITY_KIND_NVLINK.

uint32_t CUpti_ActivityNvLink2::nvlinkVersion

NvLink version.

uint32_t CUpti_ActivityNvLink2::physicalNvLinkCount

Number of physical NVLinks present between two devices.

int8_t CUpti_ActivityNvLink2::portDev0[CUPTI_MAX_NVLINK_PORTS]

Port numbers for maximum 16 NVLinks connected to device 0. If typeDev0 is CUPTI_DEV_TYPE_NPU, ignore this field. In case of invalid/unknown port number, this field will be set to value CUPTI_NVLINK_INVALID_PORT. This will be used to correlate the metric values to individual physical link and attribute traffic to the logical NVLink in the topology.

int8_t CUpti_ActivityNvLink2::portDev1[CUPTI_MAX_NVLINK_PORTS]

Port numbers for maximum 16 NVLinks connected to device 1. If typeDev1 is CUPTI_DEV_TYPE_NPU, ignore this field. In case of invalid/unknown port number, this field will be set to value CUPTI_NVLINK_INVALID_PORT. This will be used to correlate the metric values to individual physical link and attribute traffic to the logical NVLink in the topology.

CUpti_DevType CUpti_ActivityNvLink2::typeDev0

Type of device 0 CUpti_DevType

CUpti_DevType CUpti_ActivityNvLink2::typeDev1

Type of device 1 CUpti_DevType