Summary:
The wavefront size is currently only exposed as an agent level
attribute. This is not correctyl, because while the agent has a default
wave front size that is usually correct, it can easily be overridden via
options like -mwavefrontsize64 on various ISAs. The wavefrontsize
attribute is actually more of a calling convention that is consistent
within a callgraph. Because the root of each call graph is a kernel in
this architecture, we need to be able to query this on a per-kernel
basis. This information is already avialable in the kernel descriptor
packet, but it wasn't exported.
This patch adds HSA_CODE_SYMBOL_INFO_KERNEL_WAVEFRONT_SIZE as a new
option to query on the executable symbol.
Summary: The wavefront size is currently only exposed as an agent level attribute. This is not correctyl, because while the agent has a default wave front size that is usually correct, it can easily be overridden via options like
-mwavefrontsize64
on various ISAs. The wavefrontsize attribute is actually more of a calling convention that is consistent within a callgraph. Because the root of each call graph is a kernel in this architecture, we need to be able to query this on a per-kernel basis. This information is already avialable in the kernel descriptor packet, but it wasn't exported.This patch adds
HSA_CODE_SYMBOL_INFO_KERNEL_WAVEFRONT_SIZE
as a new option to query on the executable symbol.