6.38. CUpti_ActivityKernel2

struct CUpti_ActivityKernel2

内核的活动记录。

(已弃用)

此活动记录表示内核执行 (CUPTI_ACTIVITY_KIND_KERNEL 和 CUPTI_ACTIVITY_KIND_CONCURRENT_KERNEL),但 CUPTI 不再生成此记录。内核活动现在使用 CUpti_ActivityKernel9 活动记录报告。

公共成员

CUpti_ActivityKind kind

活动记录类型,必须为 CUPTI_ACTIVITY_KIND_KERNEL 或 CUPTI_ACTIVITY_KIND_CONCURRENT_KERNEL。

uint8_t requested

内核请求的缓存配置。

该值是来自 cuda.h 的 CUfunc_cache 枚举值之一。

uint8_t executed

用于内核的缓存配置。

该值是来自 cuda.h 的 CUfunc_cache 枚举值之一。

uint8_t sharedMemoryConfig

用于内核的共享内存配置。

该值是来自 cuda.h 的 CUsharedconfig 枚举值之一。

uint16_t registersPerThread

每个执行内核的线程所需的寄存器数量。

uint64_t start

内核执行的开始时间戳,单位为纳秒 (ns)。

开始和结束时间戳均为 0 值表示无法收集内核的时间戳信息。

uint64_t end

内核执行的结束时间戳,单位为纳秒 (ns)。

开始和结束时间戳均为 0 值表示无法收集内核的时间戳信息。

uint64_t completed

内核执行的完成时间戳,单位为纳秒 (ns)。

它表示所有子内核和内核自身的完成。CUPTI_TIMESTAMP_UNKNOWN 值表示完成时间未知。

uint32_t deviceId

内核正在执行的设备的 ID。

uint32_t contextId

内核正在执行的上下文的 ID。

uint32_t streamId

内核正在执行的流的 ID。

int32_t gridX

内核的 X 维度网格大小。

int32_t gridY

内核的 Y 维度网格大小。

int32_t gridZ

内核的 Z 维度网格大小。

int32_t blockX

内核的 X 维度块大小。

int32_t blockY

内核的 Y 维度块大小。

int32_t blockZ

内核的 Z 维度网格大小。

int32_t staticSharedMemory

为内核分配的静态共享内存大小,单位为字节。

int32_t dynamicSharedMemory

为内核保留的动态共享内存大小,单位为字节。

uint32_t localMemoryPerThread

为每个线程保留的本地内存量,单位为字节。

uint32_t localMemoryTotal

为内核保留的本地内存总量,单位为字节。

uint32_t correlationId

内核的相关 ID。

每个内核执行都分配有一个唯一的 correlation ID(相关 ID),该 ID 与启动内核的驱动程序或运行时 API 活动记录中的相关 ID 相同。

int64_t gridId

内核的网格 ID。

每个内核在运行时都会分配一个唯一的网格 ID。

const char *name

内核的名称。

此名称在表示同一内核的所有活动记录之间共享,因此不应修改。

void *reserved0

未定义。

保留供内部使用。