# CUpti_ActivityNvLink Struct Reference
[CUPTI Activity API]

NVLink information. (deprecated in CUDA 9.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 [4]
int8_t | portDev1 [4]
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_ActivityNvLink2 activity record.

## Field Documentation

uint64_t CUpti_ActivityNvLink::bandwidth

Banwidth of NVLink in kbytes/sec

uint32_t CUpti_ActivityNvLink::domainId

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

uint32_t CUpti_ActivityNvLink::flag

Flag gives capabilities of the link

See also:
  CUpti_LinkFlag

union { ... } CUpti_ActivityNvLink::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_ActivityNvLink::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_ActivityNvLink::index

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

CUpti_ActivityKind CUpti_ActivityNvLink::kind

The activity record kind, must be CUPTI_ACTIVITY_KIND_NVLINK.

uint32_t CUpti_ActivityNvLink::nvlinkVersion

NVLink version.

uint32_t CUpti_ActivityNvLink::physicalNvLinkCount

Number of physical NVLinks present between two devices.

int8_t CUpti_ActivityNvLink::portDev0[4]

Port numbers for maximum 4 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_ActivityNvLink::portDev1[4]

Port numbers for maximum 4 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_ActivityNvLink::typeDev0

Type of device 0 CUpti_DevType

CUpti_DevType CUpti_ActivityNvLink::typeDev1

Type of device 1 CUpti_DevType