6.54. CUpti_ActivityMemory

struct CUpti_ActivityMemory

The activity record for memory.

This activity record represents a memory allocation and free operation (CUPTI_ACTIVITY_KIND_MEMORY). This activity record provides a single record for the memory allocation and memory release operations.

Note: It is recommended to move to the new activity record CUpti_ActivityMemory3 enabled using the kind CUPTI_ACTIVITY_KIND_MEMORY2. CUpti_ActivityMemory3 provides separate records for memory allocation and memory release operations. This allows to correlate the corresponding driver and runtime API activity record with the memory operation.

Public Members

CUpti_ActivityKind kind

The activity record kind, must be CUPTI_ACTIVITY_KIND_MEMORY.

CUpti_ActivityMemoryKind memoryKind

The memory kind requested by the user.

uint64_t address

The virtual address of the allocation.

uint64_t bytes

The number of bytes of memory allocated.

uint64_t start

The start timestamp for the memory operation, i.e.

the time when memory was allocated, in ns.

uint64_t end

The end timestamp for the memory operation, i.e.

the time when memory was freed, in ns. This will be 0 if memory is not freed in the application

uint64_t allocPC

The program counter of the allocation of memory.

uint64_t freePC

The program counter of the freeing of memory.

This will be 0 if memory is not freed in the application

uint32_t processId

The ID of the process to which this record belongs to.

uint32_t deviceId

The ID of the device where the memory allocation is taking place.

uint32_t contextId

The ID of the context.

If context is NULL, contextId is set to CUPTI_INVALID_CONTEXT_ID.

uint32_t pad

Undefined.

Reserved for internal use.

const char *name

Variable name.

This name is shared across all activity records representing the same symbol, and so should not be modified.