Kernel#
oneAPI Level Zero Specification - Version 1.18.31
Kernel Functions#
zetKernelGetProfileInfo#
Added in version 1.0
-
ZE_APIEXPORT ze_result_t ZE_APICALL zetKernelGetProfileInfo(zet_kernel_handle_t hKernel, zet_profile_properties_t *pProfileProperties)#
Retrieve profiling information generated for the kernel.
Module must be created using the following build option:
”-zet-profile-flags <n>” - enable generation of profile information
”<n>” must be a combination of zet_profile_flag_t, in hex
The application may call this function from simultaneous threads.
The implementation of this function should be lock-free.
- Parameters:
hKernel – [in] handle to kernel
pProfileProperties – [out] pointer to profile properties
- Returns:
ZE_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hKernel
ZE_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pProfileProperties
Kernel Enums#
zet_profile_flags_t#
Added in version 1.0
-
enum zet_profile_flag_t#
Values:
-
enumerator ZET_PROFILE_FLAG_REGISTER_REALLOCATION#
request the compiler attempt to minimize register usage as much as possible to allow for instrumentation
-
enumerator ZET_PROFILE_FLAG_FREE_REGISTER_INFO#
request the compiler generate free register info
-
enumerator ZET_PROFILE_FLAG_FORCE_UINT32#
Value marking end of ZET_PROFILE_FLAG_* ENUMs.
-
enumerator ZET_PROFILE_FLAG_REGISTER_REALLOCATION#
zet_profile_token_type_t#
Added in version 1.0
Kernel Structures#
zet_profile_properties_t#
Added in version 1.0
-
struct zet_profile_properties_t#
Profiling meta-data for instrumentation.
Public Members
-
zet_structure_type_t stype#
[in] type of this structure
-
void *pNext#
[in,out][optional] must be null or a pointer to an extension-specific structure (i.e. contains stype and pNext).
-
zet_profile_flags_t flags#
[out] indicates which flags were enabled during compilation. returns 0 (none) or a combination of zet_profile_flag_t
-
uint32_t numTokens#
[out] number of tokens immediately following this structure
-
zet_structure_type_t stype#
zet_profile_free_register_token_t#
Added in version 1.0
-
struct zet_profile_free_register_token_t#
Profile free register token detailing unused registers in the current function.
Public Members
-
zet_profile_token_type_t type#
[out] type of token
-
uint32_t size#
[out] total size of the token, in bytes
-
uint32_t count#
[out] number of register sequences immediately following this structure
-
zet_profile_token_type_t type#
zet_profile_register_sequence_t#
Added in version 1.0
-
struct zet_profile_register_sequence_t#
Profile register sequence detailing consecutive bytes, all of which are unused.