# 6.56. 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.

    See also

    CUpti_ActivityMemcpyKind

  uint8_t srcKind

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

    See also

    CUpti_ActivityMemoryKind

  uint8_t dstKind

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

    See also

    CUpti_ActivityMemoryKind

  uint8_t flags

    The flags associated with the memory copy.

    See also

    CUpti_ActivityFlag

  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.

  uint8_t isDeviceLaunched

    This field is used to indicate if the memcpy operation is part of a device graph launch.

  uint8_t pad2[3]

    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.