Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,8 @@
# Level zero loader changelog
## v1.29.0
* Update to L0 Zero Spec v1.16.24: https://oneapi-src.github.io/level-zero-spec/releases/index.html#level-zero-v1-16-24
* fix: CONTRIBUTING.md to correct command line for updating spec
* Add to_string support support for callbacks (#463)
## v1.28.6
* Remove level-zero* (non-Canonical) package names when building DEBs with CPack
* Allow pkgconfig file isntallation with Window MSI Installer
Expand Down
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ if(MSVC AND (MSVC_VERSION LESS 1900))
endif()

# This project follows semantic versioning (https://semver.org/)
project(level-zero VERSION 1.28.6)
project(level-zero VERSION 1.29.0)
include(GNUInstallDirs)

find_package(Git)
Expand Down
8 changes: 4 additions & 4 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,11 +39,11 @@ To generate the code from the scripts, run the following commands:
* `git checkout v1.12.15`
* Generate the specification JSON file and Headers:
* `cd level-zero-spec/scripts`
* `python3 ./run.py --debug '--!html' '--!rst' '--!build' --ver 1.12`
* `python3 ./run.py --debug '--!html' '--!rst' '--!build' --ver 1.16`
* Copy the Headers From Spec to Loader repo
* `cp level-zero-spec/include/* level-zero/include/`
* Execute the json2src script in the level-zero repo with the input.json in the specification repo with the corresponding spec version, for example:
* `./level-zero/scripts/json2src.py --ver 1.12 --api-json level-zero-spec/scripts/input.json .`
* Execute the json2src script in the level-zero repo with the input.json in the specification repo with the corresponding spec version, for example (be sure you're inside the level-zero repository folder)
* `./scripts/json2src.py --ver 1.16 --api-json ../level-zero-spec/scripts/input.json .`

These scripts update the code with what would be generated in the next specification update.

Expand All @@ -56,7 +56,7 @@ When releasing a new version of the Level Zero Loader, the following steps must
The loader version is defined in the root [CMakeLists.txt](CMakeLists.txt) file using semantic versioning (https://semver.org/):

```cmake
project(level-zero VERSION 1.28.3)
project(level-zero VERSION 1.29.0)
```

Update the version number according to the type of changes:
Expand Down
4 changes: 2 additions & 2 deletions PRODUCT_GUID.txt
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
1.28.6
a106cfaa-e584-4194-9651-9da17307f50b
1.29.0
22be7d28-d853-4d43-95c8-074d8b96fc0e
225 changes: 225 additions & 0 deletions include/layers/zel_tracing_register_cb.h
Original file line number Diff line number Diff line change
Expand Up @@ -808,6 +808,87 @@ typedef void (ZE_APICALL *ze_pfnDeviceGetAggregatedCopyOffloadIncrementValueCb_t
void** ppTracerInstanceUserData
);

///////////////////////////////////////////////////////////////////////////////
/// @brief Callback function parameters for zeDeviceGetRuntimeRequirements
/// @details Each entry is a pointer to the parameter passed to the function;
/// allowing the callback the ability to modify the parameter's value

typedef struct _ze_device_get_runtime_requirements_params_t
{
ze_device_handle_t* phDevice;
const void** ppObjDesc;
size_t** ppSize;
char** ppRequirements;
} ze_device_get_runtime_requirements_params_t;


///////////////////////////////////////////////////////////////////////////////
/// @brief Callback function-pointer for zeDeviceGetRuntimeRequirements
/// @param[in] params Parameters passed to this instance
/// @param[in] result Return value
/// @param[in] pTracerUserData Per-Tracer user data
/// @param[in,out] ppTracerInstanceUserData Per-Tracer, Per-Instance user data

typedef void (ZE_APICALL *ze_pfnDeviceGetRuntimeRequirementsCb_t)(
ze_device_get_runtime_requirements_params_t* params,
ze_result_t result,
void* pTracerUserData,
void** ppTracerInstanceUserData
);

///////////////////////////////////////////////////////////////////////////////
/// @brief Callback function parameters for zeDeviceGetRuntimeRequirementsKey
/// @details Each entry is a pointer to the parameter passed to the function;
/// allowing the callback the ability to modify the parameter's value

typedef struct _ze_device_get_runtime_requirements_key_params_t
{
ze_device_handle_t* phDevice;
const char*** ppKey;
} ze_device_get_runtime_requirements_key_params_t;


///////////////////////////////////////////////////////////////////////////////
/// @brief Callback function-pointer for zeDeviceGetRuntimeRequirementsKey
/// @param[in] params Parameters passed to this instance
/// @param[in] result Return value
/// @param[in] pTracerUserData Per-Tracer user data
/// @param[in,out] ppTracerInstanceUserData Per-Tracer, Per-Instance user data

typedef void (ZE_APICALL *ze_pfnDeviceGetRuntimeRequirementsKeyCb_t)(
ze_device_get_runtime_requirements_key_params_t* params,
ze_result_t result,
void* pTracerUserData,
void** ppTracerInstanceUserData
);

///////////////////////////////////////////////////////////////////////////////
/// @brief Callback function parameters for zeDeviceValidateRuntimeRequirements
/// @details Each entry is a pointer to the parameter passed to the function;
/// allowing the callback the ability to modify the parameter's value

typedef struct _ze_device_validate_runtime_requirements_params_t
{
ze_device_handle_t* phDevice;
const char** ppRequirements;
ze_validate_runtime_requirements_output_t** ppOut;
} ze_device_validate_runtime_requirements_params_t;


///////////////////////////////////////////////////////////////////////////////
/// @brief Callback function-pointer for zeDeviceValidateRuntimeRequirements
/// @param[in] params Parameters passed to this instance
/// @param[in] result Return value
/// @param[in] pTracerUserData Per-Tracer user data
/// @param[in,out] ppTracerInstanceUserData Per-Tracer, Per-Instance user data

typedef void (ZE_APICALL *ze_pfnDeviceValidateRuntimeRequirementsCb_t)(
ze_device_validate_runtime_requirements_params_t* params,
ze_result_t result,
void* pTracerUserData,
void** ppTracerInstanceUserData
);

///////////////////////////////////////////////////////////////////////////////
/// @brief Callback function parameters for zeDeviceReserveCacheExt
/// @details Each entry is a pointer to the parameter passed to the function;
Expand Down Expand Up @@ -1205,6 +1286,102 @@ typedef void (ZE_APICALL *ze_pfnCommandListAppendLaunchKernelWithArgumentsCb_t)(
void** ppTracerInstanceUserData
);

///////////////////////////////////////////////////////////////////////////////
/// @brief Callback function parameters for zeCommandListAppendMemoryCopyWithParameters
/// @details Each entry is a pointer to the parameter passed to the function;
/// allowing the callback the ability to modify the parameter's value

typedef struct _ze_command_list_append_memory_copy_with_parameters_params_t
{
ze_command_list_handle_t* phCommandList;
void** pdstptr;
const void** psrcptr;
size_t* psize;
const void** ppNext;
ze_event_handle_t* phSignalEvent;
uint32_t* pnumWaitEvents;
ze_event_handle_t** pphWaitEvents;
} ze_command_list_append_memory_copy_with_parameters_params_t;


///////////////////////////////////////////////////////////////////////////////
/// @brief Callback function-pointer for zeCommandListAppendMemoryCopyWithParameters
/// @param[in] params Parameters passed to this instance
/// @param[in] result Return value
/// @param[in] pTracerUserData Per-Tracer user data
/// @param[in,out] ppTracerInstanceUserData Per-Tracer, Per-Instance user data

typedef void (ZE_APICALL *ze_pfnCommandListAppendMemoryCopyWithParametersCb_t)(
ze_command_list_append_memory_copy_with_parameters_params_t* params,
ze_result_t result,
void* pTracerUserData,
void** ppTracerInstanceUserData
);

///////////////////////////////////////////////////////////////////////////////
/// @brief Callback function parameters for zeCommandListAppendMemoryFillWithParameters
/// @details Each entry is a pointer to the parameter passed to the function;
/// allowing the callback the ability to modify the parameter's value

typedef struct _ze_command_list_append_memory_fill_with_parameters_params_t
{
ze_command_list_handle_t* phCommandList;
void** pptr;
const void** ppattern;
size_t* ppattern_size;
size_t* psize;
const void** ppNext;
ze_event_handle_t* phSignalEvent;
uint32_t* pnumWaitEvents;
ze_event_handle_t** pphWaitEvents;
} ze_command_list_append_memory_fill_with_parameters_params_t;


///////////////////////////////////////////////////////////////////////////////
/// @brief Callback function-pointer for zeCommandListAppendMemoryFillWithParameters
/// @param[in] params Parameters passed to this instance
/// @param[in] result Return value
/// @param[in] pTracerUserData Per-Tracer user data
/// @param[in,out] ppTracerInstanceUserData Per-Tracer, Per-Instance user data

typedef void (ZE_APICALL *ze_pfnCommandListAppendMemoryFillWithParametersCb_t)(
ze_command_list_append_memory_fill_with_parameters_params_t* params,
ze_result_t result,
void* pTracerUserData,
void** ppTracerInstanceUserData
);

///////////////////////////////////////////////////////////////////////////////
/// @brief Callback function parameters for zeCommandListImmediateAppendCommandListsWithParameters
/// @details Each entry is a pointer to the parameter passed to the function;
/// allowing the callback the ability to modify the parameter's value

typedef struct _ze_command_list_immediate_append_command_lists_with_parameters_params_t
{
ze_command_list_handle_t* phCommandListImmediate;
uint32_t* pnumCommandLists;
ze_command_list_handle_t** pphCommandLists;
const void** ppNext;
ze_event_handle_t* phSignalEvent;
uint32_t* pnumWaitEvents;
ze_event_handle_t** pphWaitEvents;
} ze_command_list_immediate_append_command_lists_with_parameters_params_t;


///////////////////////////////////////////////////////////////////////////////
/// @brief Callback function-pointer for zeCommandListImmediateAppendCommandListsWithParameters
/// @param[in] params Parameters passed to this instance
/// @param[in] result Return value
/// @param[in] pTracerUserData Per-Tracer user data
/// @param[in,out] ppTracerInstanceUserData Per-Tracer, Per-Instance user data

typedef void (ZE_APICALL *ze_pfnCommandListImmediateAppendCommandListsWithParametersCb_t)(
ze_command_list_immediate_append_command_lists_with_parameters_params_t* params,
ze_result_t result,
void* pTracerUserData,
void** ppTracerInstanceUserData
);

///////////////////////////////////////////////////////////////////////////////
/// @brief Callback function parameters for zeCommandListAppendImageCopyToMemoryExt
/// @details Each entry is a pointer to the parameter passed to the function;
Expand Down Expand Up @@ -2992,6 +3169,30 @@ zelTracerDeviceGetAggregatedCopyOffloadIncrementValueRegisterCallback(
);


ZE_APIEXPORT ze_result_t ZE_APICALL
zelTracerDeviceGetRuntimeRequirementsRegisterCallback(
zel_tracer_handle_t hTracer,
zel_tracer_reg_t callback_type,
ze_pfnDeviceGetRuntimeRequirementsCb_t pfnGetRuntimeRequirementsCb
);


ZE_APIEXPORT ze_result_t ZE_APICALL
zelTracerDeviceGetRuntimeRequirementsKeyRegisterCallback(
zel_tracer_handle_t hTracer,
zel_tracer_reg_t callback_type,
ze_pfnDeviceGetRuntimeRequirementsKeyCb_t pfnGetRuntimeRequirementsKeyCb
);


ZE_APIEXPORT ze_result_t ZE_APICALL
zelTracerDeviceValidateRuntimeRequirementsRegisterCallback(
zel_tracer_handle_t hTracer,
zel_tracer_reg_t callback_type,
ze_pfnDeviceValidateRuntimeRequirementsCb_t pfnValidateRuntimeRequirementsCb
);


ZE_APIEXPORT ze_result_t ZE_APICALL
zelTracerContextCreateRegisterCallback(
zel_tracer_handle_t hTracer,
Expand Down Expand Up @@ -3200,6 +3401,14 @@ zelTracerCommandListAppendMemoryCopyRegisterCallback(
);


ZE_APIEXPORT ze_result_t ZE_APICALL
zelTracerCommandListAppendMemoryCopyWithParametersRegisterCallback(
zel_tracer_handle_t hTracer,
zel_tracer_reg_t callback_type,
ze_pfnCommandListAppendMemoryCopyWithParametersCb_t pfnAppendMemoryCopyWithParametersCb
);


ZE_APIEXPORT ze_result_t ZE_APICALL
zelTracerCommandListAppendMemoryFillRegisterCallback(
zel_tracer_handle_t hTracer,
Expand All @@ -3208,6 +3417,14 @@ zelTracerCommandListAppendMemoryFillRegisterCallback(
);


ZE_APIEXPORT ze_result_t ZE_APICALL
zelTracerCommandListAppendMemoryFillWithParametersRegisterCallback(
zel_tracer_handle_t hTracer,
zel_tracer_reg_t callback_type,
ze_pfnCommandListAppendMemoryFillWithParametersCb_t pfnAppendMemoryFillWithParametersCb
);


ZE_APIEXPORT ze_result_t ZE_APICALL
zelTracerCommandListAppendMemoryCopyRegionRegisterCallback(
zel_tracer_handle_t hTracer,
Expand Down Expand Up @@ -4448,6 +4665,14 @@ zelTracerCommandListImmediateAppendCommandListsExpRegisterCallback(
);


ZE_APIEXPORT ze_result_t ZE_APICALL
zelTracerCommandListImmediateAppendCommandListsWithParametersRegisterCallback(
zel_tracer_handle_t hTracer,
zel_tracer_reg_t callback_type,
ze_pfnCommandListImmediateAppendCommandListsWithParametersCb_t pfnImmediateAppendCommandListsWithParametersCb
);


ZE_APIEXPORT ze_result_t ZE_APICALL
zelTracerCommandListGetNextCommandIdExpRegisterCallback(
zel_tracer_handle_t hTracer,
Expand Down
Loading
Loading