diff --git a/include/ur.py b/include/ur.py index c9b5e3c8c6..2b49088119 100644 --- a/include/ur.py +++ b/include/ur.py @@ -832,6 +832,7 @@ class ur_device_info_v(IntEnum): ## is implementation-defined, but newer devices should have a higher ## version than older devices. VIRTUAL_MEMORY_SUPPORT = 114 ## [::ur_bool_t] return true if the device supports virtual memory. + ESIMD_SUPPORT = 115 ## [::ur_bool_t] return true if the device supports ESIMD. BINDLESS_IMAGES_SUPPORT_EXP = 0x2000 ## [::ur_bool_t] returns true if the device supports the creation of ## bindless images BINDLESS_IMAGES_SHARED_USM_SUPPORT_EXP = 0x2001 ## [::ur_bool_t] returns true if the device supports the creation of diff --git a/include/ur_api.h b/include/ur_api.h index b26981d1e6..677c31005f 100644 --- a/include/ur_api.h +++ b/include/ur_api.h @@ -1461,6 +1461,7 @@ typedef enum ur_device_info_t { ///< is implementation-defined, but newer devices should have a higher ///< version than older devices. UR_DEVICE_INFO_VIRTUAL_MEMORY_SUPPORT = 114, ///< [::ur_bool_t] return true if the device supports virtual memory. + UR_DEVICE_INFO_ESIMD_SUPPORT = 115, ///< [::ur_bool_t] return true if the device supports ESIMD. UR_DEVICE_INFO_BINDLESS_IMAGES_SUPPORT_EXP = 0x2000, ///< [::ur_bool_t] returns true if the device supports the creation of ///< bindless images UR_DEVICE_INFO_BINDLESS_IMAGES_SHARED_USM_SUPPORT_EXP = 0x2001, ///< [::ur_bool_t] returns true if the device supports the creation of diff --git a/scripts/core/device.yml b/scripts/core/device.yml index 0442b776bb..27f2100feb 100644 --- a/scripts/core/device.yml +++ b/scripts/core/device.yml @@ -390,6 +390,8 @@ etors: desc: "[uint32_t] The device IP version. The meaning of the device IP version is implementation-defined, but newer devices should have a higher version than older devices." - name: VIRTUAL_MEMORY_SUPPORT desc: "[$x_bool_t] return true if the device supports virtual memory." + - name: ESIMD_SUPPORT + desc: "[$x_bool_t] return true if the device supports ESIMD." --- #-------------------------------------------------------------------------- type: function desc: "Retrieves various information about device" diff --git a/source/common/ur_params.hpp b/source/common/ur_params.hpp index a10f054266..4c1c90e993 100644 --- a/source/common/ur_params.hpp +++ b/source/common/ur_params.hpp @@ -2854,6 +2854,10 @@ inline std::ostream &operator<<(std::ostream &os, enum ur_device_info_t value) { os << "UR_DEVICE_INFO_VIRTUAL_MEMORY_SUPPORT"; break; + case UR_DEVICE_INFO_ESIMD_SUPPORT: + os << "UR_DEVICE_INFO_ESIMD_SUPPORT"; + break; + case UR_DEVICE_INFO_BINDLESS_IMAGES_SUPPORT_EXP: os << "UR_DEVICE_INFO_BINDLESS_IMAGES_SUPPORT_EXP"; break; @@ -4492,6 +4496,20 @@ inline void serializeTagged(std::ostream &os, const void *ptr, os << ")"; } break; + case UR_DEVICE_INFO_ESIMD_SUPPORT: { + const ur_bool_t *tptr = (const ur_bool_t *)ptr; + if (sizeof(ur_bool_t) > size) { + os << "invalid size (is: " << size + << ", expected: >=" << sizeof(ur_bool_t) << ")"; + return; + } + os << (void *)(tptr) << " ("; + + os << *tptr; + + os << ")"; + } break; + case UR_DEVICE_INFO_BINDLESS_IMAGES_SUPPORT_EXP: { const ur_bool_t *tptr = (const ur_bool_t *)ptr; if (sizeof(ur_bool_t) > size) {