6.54. CUpti_ActivityMemcpy6

struct CUpti_ActivityMemcpy6

The activity record for memory copies.

This activity record represents a memory copy (CUPTI_ACTIVITY_KIND_MEMCPY).

Public Members

CUpti_ActivityKind kind

The activity record kind, must be CUPTI_ACTIVITY_KIND_MEMCPY.

uint8_t copyKind

The kind of the memory copy, stored as a byte to reduce record size.

uint8_t srcKind

The source memory kind read by the memory copy, stored as a byte to reduce record size.

uint8_t dstKind

The destination memory kind read by the memory copy, stored as a byte to reduce record size.

uint8_t flags

The flags associated with the memory copy.

uint64_t bytes

The number of bytes transferred by the memory copy.

uint64_t start

The start timestamp for the memory copy, in ns.

A value of 0 for both the start and end timestamps indicates that timestamp information could not be collected for the memory copy.

uint64_t end

The end timestamp for the memory copy, in ns.

A value of 0 for both the start and end timestamps indicates that timestamp information could not be collected for the memory copy.

uint32_t deviceId

The ID of the device where the memory copy is occurring.

uint32_t contextId

The ID of the context where the memory copy is occurring.

uint32_t streamId

The ID of the stream where the memory copy is occurring.

uint32_t correlationId

The correlation ID of the memory copy.

Each memory copy is assigned a unique correlation ID that is identical to the correlation ID in the driver API activity record that launched the memory copy.

uint32_t runtimeCorrelationId

The runtime correlation ID of the memory copy.

Each memory copy is assigned a unique runtime correlation ID that is identical to the correlation ID in the runtime API activity record that launched the memory copy.

uint32_t pad

Undefined.

Reserved for internal use.

void *reserved0

Undefined.

Reserved for internal use.

uint64_t graphNodeId

The unique ID of the graph node that executed this memcpy through graph launch.

This field will be 0 if the memcpy is not done through graph launch.

uint32_t graphId

The unique ID of the graph that executed this memcpy through graph launch.

This field will be 0 if the memcpy is not done through graph launch.

uint32_t channelID

The ID of the HW channel on which the memory copy is occurring.

CUpti_ChannelType channelType

The type of the channel.

uint32_t pad2

Reserved for internal use.

uint64_t copyCount

The total number of memcopy operations traced in this record.

This field is valid for memcpy operations happening using MemcpyBatchAsync APIs in CUDA. In MemcpyBatchAsync APIs, multiple memcpy operations are batched together for optimization purposes based on certain heuristics. For other memcpy operations, this field will be 1.