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,5 +1,9 @@
# Level zero loader changelog

## v1.22.0
* Update to support v1.13.1 of the Level Zero Spec
* Add testing stdout from zeInitDrivers in CI
* Only Enable Teardown thread on windows and remove debug on success
## v1.21.9
* Fix init checks when sorting legacy drivers
* Fix MSVC Link optimization flags
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.21.9)
project(level-zero VERSION 1.22.0)

include(GNUInstallDirs)

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.21.9
01037281-c9ef-43cf-bc65-f72fb3438788
1.22.0
144d1a88-75bd-4f4a-8871-3660a84f7380
Comment thread
rwmcguir marked this conversation as resolved.
388 changes: 388 additions & 0 deletions include/layers/zel_tracing_register_cb.h

Large diffs are not rendered by default.

815 changes: 806 additions & 9 deletions include/ze.py

Large diffs are not rendered by default.

1,808 changes: 1,493 additions & 315 deletions include/ze_api.h

Large diffs are not rendered by default.

164 changes: 163 additions & 1 deletion include/ze_ddi.h
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
* SPDX-License-Identifier: MIT
*
* @file ze_ddi.h
* @version v1.12-r1.12.15
* @version v1.13-r1.13.1
*
*/
#ifndef _ZE_DDI_H
Expand All @@ -19,6 +19,88 @@
extern "C" {
#endif

///////////////////////////////////////////////////////////////////////////////
/// @brief Function-pointer for zeRTASBuilderCreateExt
typedef ze_result_t (ZE_APICALL *ze_pfnRTASBuilderCreateExt_t)(
ze_driver_handle_t,
const ze_rtas_builder_ext_desc_t*,
ze_rtas_builder_ext_handle_t*
);

///////////////////////////////////////////////////////////////////////////////
/// @brief Function-pointer for zeRTASBuilderGetBuildPropertiesExt
typedef ze_result_t (ZE_APICALL *ze_pfnRTASBuilderGetBuildPropertiesExt_t)(
ze_rtas_builder_ext_handle_t,
const ze_rtas_builder_build_op_ext_desc_t*,
ze_rtas_builder_ext_properties_t*
);

///////////////////////////////////////////////////////////////////////////////
/// @brief Function-pointer for zeRTASBuilderBuildExt
typedef ze_result_t (ZE_APICALL *ze_pfnRTASBuilderBuildExt_t)(
ze_rtas_builder_ext_handle_t,
const ze_rtas_builder_build_op_ext_desc_t*,
void*,
size_t,
void*,
size_t,
ze_rtas_parallel_operation_ext_handle_t,
void*,
ze_rtas_aabb_ext_t*,
size_t*
);

///////////////////////////////////////////////////////////////////////////////
/// @brief Function-pointer for zeRTASBuilderCommandListAppendCopyExt
typedef ze_result_t (ZE_APICALL *ze_pfnRTASBuilderCommandListAppendCopyExt_t)(
ze_command_list_handle_t,
void*,
const void*,
size_t,
ze_event_handle_t,
uint32_t,
ze_event_handle_t*
);

///////////////////////////////////////////////////////////////////////////////
/// @brief Function-pointer for zeRTASBuilderDestroyExt
typedef ze_result_t (ZE_APICALL *ze_pfnRTASBuilderDestroyExt_t)(
ze_rtas_builder_ext_handle_t
);

///////////////////////////////////////////////////////////////////////////////
/// @brief Table of RTASBuilder functions pointers
typedef struct _ze_rtas_builder_dditable_t
{
ze_pfnRTASBuilderCreateExt_t pfnCreateExt;
ze_pfnRTASBuilderGetBuildPropertiesExt_t pfnGetBuildPropertiesExt;
ze_pfnRTASBuilderBuildExt_t pfnBuildExt;
ze_pfnRTASBuilderCommandListAppendCopyExt_t pfnCommandListAppendCopyExt;
ze_pfnRTASBuilderDestroyExt_t pfnDestroyExt;
} ze_rtas_builder_dditable_t;

///////////////////////////////////////////////////////////////////////////////
/// @brief Exported function for filling application's RTASBuilder table
/// with current process' addresses
///
/// @returns
/// - ::ZE_RESULT_SUCCESS
/// - ::ZE_RESULT_ERROR_UNINITIALIZED
/// - ::ZE_RESULT_ERROR_INVALID_NULL_POINTER
/// - ::ZE_RESULT_ERROR_UNSUPPORTED_VERSION
ZE_DLLEXPORT ze_result_t ZE_APICALL
zeGetRTASBuilderProcAddrTable(
ze_api_version_t version, ///< [in] API version requested
ze_rtas_builder_dditable_t* pDdiTable ///< [in,out] pointer to table of DDI function pointers
);

///////////////////////////////////////////////////////////////////////////////
/// @brief Function-pointer for zeGetRTASBuilderProcAddrTable
typedef ze_result_t (ZE_APICALL *ze_pfnGetRTASBuilderProcAddrTable_t)(
ze_api_version_t,
ze_rtas_builder_dditable_t*
);

///////////////////////////////////////////////////////////////////////////////
/// @brief Function-pointer for zeRTASBuilderCreateExp
typedef ze_result_t (ZE_APICALL *ze_pfnRTASBuilderCreateExp_t)(
Expand Down Expand Up @@ -88,6 +170,64 @@ typedef ze_result_t (ZE_APICALL *ze_pfnGetRTASBuilderExpProcAddrTable_t)(
ze_rtas_builder_exp_dditable_t*
);

///////////////////////////////////////////////////////////////////////////////
/// @brief Function-pointer for zeRTASParallelOperationCreateExt
typedef ze_result_t (ZE_APICALL *ze_pfnRTASParallelOperationCreateExt_t)(
ze_driver_handle_t,
ze_rtas_parallel_operation_ext_handle_t*
);

///////////////////////////////////////////////////////////////////////////////
/// @brief Function-pointer for zeRTASParallelOperationGetPropertiesExt
typedef ze_result_t (ZE_APICALL *ze_pfnRTASParallelOperationGetPropertiesExt_t)(
ze_rtas_parallel_operation_ext_handle_t,
ze_rtas_parallel_operation_ext_properties_t*
);

///////////////////////////////////////////////////////////////////////////////
/// @brief Function-pointer for zeRTASParallelOperationJoinExt
typedef ze_result_t (ZE_APICALL *ze_pfnRTASParallelOperationJoinExt_t)(
ze_rtas_parallel_operation_ext_handle_t
);

///////////////////////////////////////////////////////////////////////////////
/// @brief Function-pointer for zeRTASParallelOperationDestroyExt
typedef ze_result_t (ZE_APICALL *ze_pfnRTASParallelOperationDestroyExt_t)(
ze_rtas_parallel_operation_ext_handle_t
);

///////////////////////////////////////////////////////////////////////////////
/// @brief Table of RTASParallelOperation functions pointers
typedef struct _ze_rtas_parallel_operation_dditable_t
{
ze_pfnRTASParallelOperationCreateExt_t pfnCreateExt;
ze_pfnRTASParallelOperationGetPropertiesExt_t pfnGetPropertiesExt;
ze_pfnRTASParallelOperationJoinExt_t pfnJoinExt;
ze_pfnRTASParallelOperationDestroyExt_t pfnDestroyExt;
} ze_rtas_parallel_operation_dditable_t;

///////////////////////////////////////////////////////////////////////////////
/// @brief Exported function for filling application's RTASParallelOperation table
/// with current process' addresses
///
/// @returns
/// - ::ZE_RESULT_SUCCESS
/// - ::ZE_RESULT_ERROR_UNINITIALIZED
/// - ::ZE_RESULT_ERROR_INVALID_NULL_POINTER
/// - ::ZE_RESULT_ERROR_UNSUPPORTED_VERSION
ZE_DLLEXPORT ze_result_t ZE_APICALL
zeGetRTASParallelOperationProcAddrTable(
ze_api_version_t version, ///< [in] API version requested
ze_rtas_parallel_operation_dditable_t* pDdiTable ///< [in,out] pointer to table of DDI function pointers
);

///////////////////////////////////////////////////////////////////////////////
/// @brief Function-pointer for zeGetRTASParallelOperationProcAddrTable
typedef ze_result_t (ZE_APICALL *ze_pfnGetRTASParallelOperationProcAddrTable_t)(
ze_api_version_t,
ze_rtas_parallel_operation_dditable_t*
);

///////////////////////////////////////////////////////////////////////////////
/// @brief Function-pointer for zeRTASParallelOperationCreateExp
typedef ze_result_t (ZE_APICALL *ze_pfnRTASParallelOperationCreateExp_t)(
Expand Down Expand Up @@ -241,6 +381,14 @@ typedef ze_result_t (ZE_APICALL *ze_pfnDriverGetLastErrorDescription_t)(
const char**
);

///////////////////////////////////////////////////////////////////////////////
/// @brief Function-pointer for zeDriverRTASFormatCompatibilityCheckExt
typedef ze_result_t (ZE_APICALL *ze_pfnDriverRTASFormatCompatibilityCheckExt_t)(
ze_driver_handle_t,
ze_rtas_format_ext_t,
ze_rtas_format_ext_t
);

///////////////////////////////////////////////////////////////////////////////
/// @brief Table of Driver functions pointers
typedef struct _ze_driver_dditable_t
Expand All @@ -252,6 +400,7 @@ typedef struct _ze_driver_dditable_t
ze_pfnDriverGetExtensionProperties_t pfnGetExtensionProperties;
ze_pfnDriverGetExtensionFunctionAddress_t pfnGetExtensionFunctionAddress;
ze_pfnDriverGetLastErrorDescription_t pfnGetLastErrorDescription;
ze_pfnDriverRTASFormatCompatibilityCheckExt_t pfnRTASFormatCompatibilityCheckExt;
} ze_driver_dditable_t;

///////////////////////////////////////////////////////////////////////////////
Expand Down Expand Up @@ -470,6 +619,14 @@ typedef ze_result_t (ZE_APICALL *ze_pfnDeviceReleaseExternalSemaphoreExt_t)(
ze_external_semaphore_ext_handle_t
);

///////////////////////////////////////////////////////////////////////////////
/// @brief Function-pointer for zeDeviceGetVectorWidthPropertiesExt
typedef ze_result_t (ZE_APICALL *ze_pfnDeviceGetVectorWidthPropertiesExt_t)(
ze_device_handle_t,
uint32_t*,
ze_device_vector_width_properties_ext_t*
);

///////////////////////////////////////////////////////////////////////////////
/// @brief Table of Device functions pointers
typedef struct _ze_device_dditable_t
Expand All @@ -495,6 +652,7 @@ typedef struct _ze_device_dditable_t
ze_pfnDeviceGetRootDevice_t pfnGetRootDevice;
ze_pfnDeviceImportExternalSemaphoreExt_t pfnImportExternalSemaphoreExt;
ze_pfnDeviceReleaseExternalSemaphoreExt_t pfnReleaseExternalSemaphoreExt;
ze_pfnDeviceGetVectorWidthPropertiesExt_t pfnGetVectorWidthPropertiesExt;
} ze_device_dditable_t;

///////////////////////////////////////////////////////////////////////////////
Expand Down Expand Up @@ -2588,7 +2746,9 @@ typedef ze_result_t (ZE_APICALL *ze_pfnGetFabricEdgeExpProcAddrTable_t)(
/// @brief Container for all DDI tables
typedef struct _ze_dditable_t
{
ze_rtas_builder_dditable_t RTASBuilder;
ze_rtas_builder_exp_dditable_t RTASBuilderExp;
ze_rtas_parallel_operation_dditable_t RTASParallelOperation;
ze_rtas_parallel_operation_exp_dditable_t RTASParallelOperationExp;
ze_global_dditable_t Global;
ze_driver_dditable_t Driver;
Expand Down Expand Up @@ -2622,7 +2782,9 @@ typedef struct _ze_dditable_driver_t
{
ze_api_version_t version;
uint8_t isValidFlag;
ze_rtas_builder_dditable_t * RTASBuilder;
ze_rtas_builder_exp_dditable_t * RTASBuilderExp;
ze_rtas_parallel_operation_dditable_t * RTASParallelOperation;
ze_rtas_parallel_operation_exp_dditable_t * RTASParallelOperationExp;
ze_global_dditable_t * Global;
ze_driver_dditable_t * Driver;
Expand Down
2 changes: 1 addition & 1 deletion include/ze_ddi_common.h
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
* SPDX-License-Identifier: MIT
*
* @file ze_ddi_common.h
* @version v1.12-r1.12.15
* @version v1.13-r1.13.1
*
*/
#ifndef _ZE_DDI_COMMON_H
Expand Down
29 changes: 28 additions & 1 deletion include/zes.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
SPDX-License-Identifier: MIT

@file zes.py
@version v1.12-r1.12.15
@version v1.13-r1.13.1

"""
import platform
Expand Down Expand Up @@ -169,6 +169,7 @@ class zes_structure_type_v(IntEnum):
VF_UTIL_MEM_EXP2 = 0x00020009 ## ::zes_vf_util_mem_exp2_t
VF_UTIL_ENGINE_EXP2 = 0x00020010 ## ::zes_vf_util_engine_exp2_t
VF_EXP2_CAPABILITIES = 0x00020011 ## ::zes_vf_exp2_capabilities_t
DEVICE_ECC_DEFAULT_PROPERTIES_EXT = 0x00020012 ## ::zes_device_ecc_default_properties_ext_t

class zes_structure_type_t(c_int):
def __str__(self):
Expand Down Expand Up @@ -2147,6 +2148,32 @@ class zes_temp_config_t(Structure):
## driver.
]

###############################################################################
## @brief Device ECC default properties Extension Name
ZES_DEVICE_ECC_DEFAULT_PROPERTIES_EXT_NAME = "ZES_extension_device_ecc_default_properties"

###############################################################################
## @brief Device ECC default properties Extension Version(s)
class zes_device_ecc_default_properties_ext_version_v(IntEnum):
_1_0 = ZE_MAKE_VERSION( 1, 0 ) ## version 1.0
CURRENT = ZE_MAKE_VERSION( 1, 0 ) ## latest known version

class zes_device_ecc_default_properties_ext_version_t(c_int):
def __str__(self):
return str(zes_device_ecc_default_properties_ext_version_v(self.value))


###############################################################################
## @brief This structure may be passed to ::zesDeviceGetEccState as pNext member
## of ::zes_device_ecc_properties_t.
class zes_device_ecc_default_properties_ext_t(Structure):
_fields_ = [
("stype", zes_structure_type_t), ## [in] type of this structure
("pNext", c_void_p), ## [in,out][optional] must be null or a pointer to an extension-specific
## structure (i.e. contains stype and pNext).
("defaultState", zes_device_ecc_state_t) ## [out] Default ECC state
]

###############################################################################
## @brief Power Limits Extension Name
ZES_POWER_LIMITS_EXT_NAME = "ZES_extension_power_limits"
Expand Down
Loading
Loading