Skip to content

[SYCL] Add new descriptors based on sycl_ext_intel_device_info extension #17492

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 7 commits into from
Mar 20, 2025
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
9 changes: 8 additions & 1 deletion llvm/include/llvm/SYCLLowerIR/DeviceConfigFile.td
Original file line number Diff line number Diff line change
Expand Up @@ -88,6 +88,10 @@ def AspectExt_oneapi_atomic16 : Aspect<"ext_oneapi_atomic16">;
def AspectExt_oneapi_virtual_functions : Aspect<"ext_oneapi_virtual_functions">;
def AspectExt_intel_spill_memory_size : Aspect<"ext_intel_spill_memory_size">;
def AspectExt_oneapi_bindless_images_gather : Aspect<"ext_oneapi_bindless_images_gather">;
def AspectExt_intel_current_clock_throttle_reasons : Aspect<"ext_intel_current_clock_throttle_reasons">;
def AspectExt_intel_fan_speed : Aspect<"ext_intel_fan_speed">;
def AspectExt_intel_power_limits : Aspect<"ext_intel_power_limits">;

// Deprecated aspects
def AspectInt64_base_atomics : Aspect<"int64_base_atomics">;
def AspectInt64_extended_atomics : Aspect<"int64_extended_atomics">;
Expand Down Expand Up @@ -154,7 +158,10 @@ def : TargetInfo<"__TestAspectList",
AspectExt_intel_fpga_task_sequence,
AspectExt_oneapi_atomic16,
AspectExt_oneapi_virtual_functions,
AspectExt_intel_spill_memory_size],
AspectExt_intel_spill_memory_size,
AspectExt_intel_current_clock_throttle_reasons,
AspectExt_intel_fan_speed,
AspectExt_intel_power_limits],
[]>;
// This definition serves the only purpose of testing whether the deprecated aspect list defined in here and in SYCL RT
// match.
Expand Down
4 changes: 4 additions & 0 deletions sycl/include/sycl/info/aspects.def
Original file line number Diff line number Diff line change
Expand Up @@ -74,3 +74,7 @@ __SYCL_ASPECT(ext_oneapi_atomic16, 80)
__SYCL_ASPECT(ext_oneapi_virtual_functions, 81)
__SYCL_ASPECT(ext_intel_spill_memory_size, 82)
__SYCL_ASPECT(ext_oneapi_bindless_images_gather, 83)
__SYCL_ASPECT(ext_intel_current_clock_throttle_reasons, 84)
__SYCL_ASPECT(ext_intel_fan_speed, 85)
__SYCL_ASPECT(ext_intel_power_limits, 86)

4 changes: 4 additions & 0 deletions sycl/include/sycl/info/ext_intel_device_traits.def
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,10 @@ __SYCL_PARAM_TRAITS_SPEC(ext::intel, device, memory_clock_rate, uint32_t, UR_DEV
__SYCL_PARAM_TRAITS_SPEC(ext::intel, device, memory_bus_width, uint32_t, UR_DEVICE_INFO_MEMORY_BUS_WIDTH)
__SYCL_PARAM_TRAITS_SPEC(ext::intel, device, max_compute_queue_indices, int32_t, UR_DEVICE_INFO_MAX_COMPUTE_QUEUE_INDICES)
__SYCL_PARAM_TRAITS_SPEC(ext::intel::esimd, device, has_2d_block_io_support, bool, UR_DEVICE_INFO_2D_BLOCK_ARRAY_CAPABILITIES_EXP)
__SYCL_PARAM_TRAITS_SPEC(ext::intel, device, current_clock_throttle_reasons, std::vector<ext::intel::throttle_reason>, UR_DEVICE_INFO_CURRENT_CLOCK_THROTTLE_REASONS)
__SYCL_PARAM_TRAITS_SPEC(ext::intel, device, fan_speed, int32_t, UR_DEVICE_INFO_FAN_SPEED)
__SYCL_PARAM_TRAITS_SPEC(ext::intel, device, min_power_limit, int32_t, UR_DEVICE_INFO_MIN_POWER_LIMIT)
__SYCL_PARAM_TRAITS_SPEC(ext::intel, device, max_power_limit, int32_t, UR_DEVICE_INFO_MAX_POWER_LIMIT)
#ifdef __SYCL_PARAM_TRAITS_TEMPLATE_SPEC_NEEDS_UNDEF
#undef __SYCL_PARAM_TRAITS_TEMPLATE_SPEC
#undef __SYCL_PARAM_TRAITS_TEMPLATE_SPEC_NEEDS_UNDEF
Expand Down
13 changes: 13 additions & 0 deletions sycl/include/sycl/info/info_desc.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -259,6 +259,19 @@ template <ext::oneapi::experimental::execution_scope CoordinationScope>
struct work_item_progress_capabilities;

} // namespace ext::oneapi::experimental::info::device

namespace ext::intel {
enum class throttle_reason {
power_cap,
current_limit,
thermal_limit,
psu_alert,
sw_range,
hw_range,
other
};
} // namespace ext::intel

#include <sycl/info/ext_codeplay_device_traits.def>
#include <sycl/info/ext_intel_device_traits.def>
#include <sycl/info/ext_intel_kernel_info_traits.def>
Expand Down
15 changes: 15 additions & 0 deletions sycl/source/detail/device_impl.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -476,6 +476,21 @@ bool device_impl::has(aspect Aspect) const {
case aspect::ext_intel_max_mem_bandwidth:
// currently not supported
return false;
case aspect::ext_intel_current_clock_throttle_reasons:
return getAdapter()->call_nocheck<UrApiKind::urDeviceGetInfo>(
MDevice, UR_DEVICE_INFO_CURRENT_CLOCK_THROTTLE_REASONS, 0,
nullptr, &return_size) == UR_RESULT_SUCCESS;
case aspect::ext_intel_fan_speed:
return getAdapter()->call_nocheck<UrApiKind::urDeviceGetInfo>(
MDevice, UR_DEVICE_INFO_FAN_SPEED, 0, nullptr, &return_size) ==
UR_RESULT_SUCCESS;
case aspect::ext_intel_power_limits:
return (getAdapter()->call_nocheck<UrApiKind::urDeviceGetInfo>(
MDevice, UR_DEVICE_INFO_MIN_POWER_LIMIT, 0, nullptr,
&return_size) == UR_RESULT_SUCCESS) &&
(getAdapter()->call_nocheck<UrApiKind::urDeviceGetInfo>(
MDevice, UR_DEVICE_INFO_MAX_POWER_LIMIT, 0, nullptr,
&return_size) == UR_RESULT_SUCCESS);
case aspect::ext_oneapi_srgb:
return get_info<info::device::ext_oneapi_srgb>();
case aspect::ext_oneapi_native_assert:
Expand Down
75 changes: 75 additions & 0 deletions sycl/source/detail/device_info.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -1637,6 +1637,81 @@ get_device_info<ext::intel::esimd::info::device::has_2d_block_io_support>(
UR_EXP_DEVICE_2D_BLOCK_ARRAY_CAPABILITY_FLAG_STORE);
}

template <>
inline ext::intel::info::device::current_clock_throttle_reasons::return_type
get_device_info<ext::intel::info::device::current_clock_throttle_reasons>(
const DeviceImplPtr &Dev) {
if (!Dev->has(aspect::ext_intel_current_clock_throttle_reasons))
throw exception(make_error_code(errc::feature_not_supported),
"The device does not have the "
"ext_intel_current_clock_throttle_reasons aspect");

ur_device_throttle_reasons_flags_t UrThrottleReasons;
Dev->getAdapter()->call<UrApiKind::urDeviceGetInfo>(
Dev->getHandleRef(),
UrInfoCode<
ext::intel::info::device::current_clock_throttle_reasons>::value,
sizeof(UrThrottleReasons), &UrThrottleReasons, nullptr);
std::vector<ext::intel::throttle_reason> ThrottleReasons;
constexpr std::pair<ur_device_throttle_reasons_flags_t,
ext::intel::throttle_reason>
UR2SYCLMappings[] = {{UR_DEVICE_THROTTLE_REASONS_FLAG_POWER_CAP,
ext::intel::throttle_reason::power_cap},
{UR_DEVICE_THROTTLE_REASONS_FLAG_CURRENT_LIMIT,
ext::intel::throttle_reason::current_limit},
{UR_DEVICE_THROTTLE_REASONS_FLAG_THERMAL_LIMIT,
ext::intel::throttle_reason::thermal_limit},
{UR_DEVICE_THROTTLE_REASONS_FLAG_PSU_ALERT,
ext::intel::throttle_reason::psu_alert},
{UR_DEVICE_THROTTLE_REASONS_FLAG_SW_RANGE,
ext::intel::throttle_reason::sw_range},
{UR_DEVICE_THROTTLE_REASONS_FLAG_HW_RANGE,
ext::intel::throttle_reason::hw_range},
{UR_DEVICE_THROTTLE_REASONS_FLAG_OTHER,
ext::intel::throttle_reason::other}};

for (const auto &[UrFlag, SyclReason] : UR2SYCLMappings) {
if (UrThrottleReasons & UrFlag) {
ThrottleReasons.push_back(SyclReason);
}
}
return ThrottleReasons;
}

template <>
inline ext::intel::info::device::fan_speed::return_type
get_device_info<ext::intel::info::device::fan_speed>(const DeviceImplPtr &Dev) {
if (!Dev->has(aspect::ext_intel_fan_speed))
throw exception(make_error_code(errc::feature_not_supported),
"The device does not have the ext_intel_fan_speed aspect");
using Param = ext::intel::info::device::fan_speed;
return get_device_info_impl<Param::return_type, Param>::get(Dev);
}

template <>
inline ext::intel::info::device::max_power_limit::return_type
get_device_info<ext::intel::info::device::max_power_limit>(
const DeviceImplPtr &Dev) {
if (!Dev->has(aspect::ext_intel_power_limits))
throw exception(
make_error_code(errc::feature_not_supported),
"The device does not have the ext_intel_power_limits aspect");
using Param = ext::intel::info::device::max_power_limit;
return get_device_info_impl<Param::return_type, Param>::get(Dev);
}

template <>
inline ext::intel::info::device::min_power_limit::return_type
get_device_info<ext::intel::info::device::min_power_limit>(
const DeviceImplPtr &Dev) {
if (!Dev->has(aspect::ext_intel_power_limits))
throw exception(
make_error_code(errc::feature_not_supported),
"The device does not have the ext_intel_power_limits aspect");
using Param = ext::intel::info::device::min_power_limit;
return get_device_info_impl<Param::return_type, Param>::get(Dev);
}

// Returns the list of all progress guarantees that can be requested for
// work_groups from the coordination level of root_group when using the device
// given by Dev. First it calls getProgressGuarantee to get the strongest
Expand Down
8 changes: 8 additions & 0 deletions sycl/test/abi/sycl_symbols_linux.dump
Original file line number Diff line number Diff line change
Expand Up @@ -3684,6 +3684,8 @@ _ZNK4sycl3_V16detail11device_impl8get_infoINS0_3ext5intel4info6device10gpu_slice
_ZNK4sycl3_V16detail11device_impl8get_infoINS0_3ext5intel4info6device11free_memoryEEENT_11return_typeEv
_ZNK4sycl3_V16detail11device_impl8get_infoINS0_3ext5intel4info6device11pci_addressEEENT_11return_typeEv
_ZNK4sycl3_V16detail11device_impl8get_infoINS0_3ext5intel4info6device12gpu_eu_countEEENT_11return_typeEv
_ZNK4sycl3_V16detail11device_impl8get_infoINS0_3ext5intel4info6device15max_power_limitEEENT_11return_typeEv
_ZNK4sycl3_V16detail11device_impl8get_infoINS0_3ext5intel4info6device15min_power_limitEEENT_11return_typeEv
_ZNK4sycl3_V16detail11device_impl8get_infoINS0_3ext5intel4info6device16memory_bus_widthEEENT_11return_typeEv
_ZNK4sycl3_V16detail11device_impl8get_infoINS0_3ext5intel4info6device17gpu_eu_simd_widthEEENT_11return_typeEv
_ZNK4sycl3_V16detail11device_impl8get_infoINS0_3ext5intel4info6device17max_mem_bandwidthEEENT_11return_typeEv
Expand All @@ -3692,8 +3694,10 @@ _ZNK4sycl3_V16detail11device_impl8get_infoINS0_3ext5intel4info6device21gpu_hw_th
_ZNK4sycl3_V16detail11device_impl8get_infoINS0_3ext5intel4info6device23gpu_subslices_per_sliceEEENT_11return_typeEv
_ZNK4sycl3_V16detail11device_impl8get_infoINS0_3ext5intel4info6device25gpu_eu_count_per_subsliceEEENT_11return_typeEv
_ZNK4sycl3_V16detail11device_impl8get_infoINS0_3ext5intel4info6device25max_compute_queue_indicesEEENT_11return_typeEv
_ZNK4sycl3_V16detail11device_impl8get_infoINS0_3ext5intel4info6device30current_clock_throttle_reasonsEEENT_11return_typeEv
_ZNK4sycl3_V16detail11device_impl8get_infoINS0_3ext5intel4info6device4uuidEEENT_11return_typeEv
_ZNK4sycl3_V16detail11device_impl8get_infoINS0_3ext5intel4info6device9device_idEEENT_11return_typeEv
_ZNK4sycl3_V16detail11device_impl8get_infoINS0_3ext5intel4info6device9fan_speedEEENT_11return_typeEv
_ZNK4sycl3_V16detail11device_impl8get_infoINS0_3ext5intel5esimd4info6device23has_2d_block_io_supportEEENT_11return_typeEv
_ZNK4sycl3_V16detail11device_impl8get_infoINS0_3ext6oneapi12experimental4info6device12architectureEEENT_11return_typeEv
_ZNK4sycl3_V16detail11device_impl8get_infoINS0_3ext6oneapi12experimental4info6device15max_work_groupsILi1EEEEENT_11return_typeEv
Expand Down Expand Up @@ -3794,6 +3798,8 @@ _ZNK4sycl3_V16device13get_info_implINS0_3ext5intel4info6device10gpu_slicesEEENS0
_ZNK4sycl3_V16device13get_info_implINS0_3ext5intel4info6device11free_memoryEEENS0_6detail11ABINeutralTINS8_19is_device_info_descIT_E11return_typeEE4typeEv
_ZNK4sycl3_V16device13get_info_implINS0_3ext5intel4info6device11pci_addressEEENS0_6detail11ABINeutralTINS8_19is_device_info_descIT_E11return_typeEE4typeEv
_ZNK4sycl3_V16device13get_info_implINS0_3ext5intel4info6device12gpu_eu_countEEENS0_6detail11ABINeutralTINS8_19is_device_info_descIT_E11return_typeEE4typeEv
_ZNK4sycl3_V16device13get_info_implINS0_3ext5intel4info6device15max_power_limitEEENS0_6detail11ABINeutralTINS8_19is_device_info_descIT_E11return_typeEE4typeEv
_ZNK4sycl3_V16device13get_info_implINS0_3ext5intel4info6device15min_power_limitEEENS0_6detail11ABINeutralTINS8_19is_device_info_descIT_E11return_typeEE4typeEv
_ZNK4sycl3_V16device13get_info_implINS0_3ext5intel4info6device16memory_bus_widthEEENS0_6detail11ABINeutralTINS8_19is_device_info_descIT_E11return_typeEE4typeEv
_ZNK4sycl3_V16device13get_info_implINS0_3ext5intel4info6device17gpu_eu_simd_widthEEENS0_6detail11ABINeutralTINS8_19is_device_info_descIT_E11return_typeEE4typeEv
_ZNK4sycl3_V16device13get_info_implINS0_3ext5intel4info6device17max_mem_bandwidthEEENS0_6detail11ABINeutralTINS8_19is_device_info_descIT_E11return_typeEE4typeEv
Expand All @@ -3802,8 +3808,10 @@ _ZNK4sycl3_V16device13get_info_implINS0_3ext5intel4info6device21gpu_hw_threads_p
_ZNK4sycl3_V16device13get_info_implINS0_3ext5intel4info6device23gpu_subslices_per_sliceEEENS0_6detail11ABINeutralTINS8_19is_device_info_descIT_E11return_typeEE4typeEv
_ZNK4sycl3_V16device13get_info_implINS0_3ext5intel4info6device25gpu_eu_count_per_subsliceEEENS0_6detail11ABINeutralTINS8_19is_device_info_descIT_E11return_typeEE4typeEv
_ZNK4sycl3_V16device13get_info_implINS0_3ext5intel4info6device25max_compute_queue_indicesEEENS0_6detail11ABINeutralTINS8_19is_device_info_descIT_E11return_typeEE4typeEv
_ZNK4sycl3_V16device13get_info_implINS0_3ext5intel4info6device30current_clock_throttle_reasonsEEENS0_6detail11ABINeutralTINS8_19is_device_info_descIT_E11return_typeEE4typeEv
_ZNK4sycl3_V16device13get_info_implINS0_3ext5intel4info6device4uuidEEENS0_6detail11ABINeutralTINS8_19is_device_info_descIT_E11return_typeEE4typeEv
_ZNK4sycl3_V16device13get_info_implINS0_3ext5intel4info6device9device_idEEENS0_6detail11ABINeutralTINS8_19is_device_info_descIT_E11return_typeEE4typeEv
_ZNK4sycl3_V16device13get_info_implINS0_3ext5intel4info6device9fan_speedEEENS0_6detail11ABINeutralTINS8_19is_device_info_descIT_E11return_typeEE4typeEv
_ZNK4sycl3_V16device13get_info_implINS0_3ext5intel5esimd4info6device23has_2d_block_io_supportEEENS0_6detail11ABINeutralTINS9_19is_device_info_descIT_E11return_typeEE4typeEv
_ZNK4sycl3_V16device13get_info_implINS0_3ext6oneapi12experimental4info6device12architectureEEENS0_6detail11ABINeutralTINS9_19is_device_info_descIT_E11return_typeEE4typeEv
_ZNK4sycl3_V16device13get_info_implINS0_3ext6oneapi12experimental4info6device15max_work_groupsILi1EEEEENS0_6detail11ABINeutralTINSA_19is_device_info_descIT_E11return_typeEE4typeEv
Expand Down
8 changes: 8 additions & 0 deletions sycl/test/abi/sycl_symbols_windows.dump
Original file line number Diff line number Diff line change
Expand Up @@ -65,10 +65,12 @@
??$get_info@Ucomponent_devices@device@info@experimental@oneapi@ext@_V1@sycl@@@device_impl@detail@_V1@sycl@@QEBA?AV?$vector@Vdevice@_V1@sycl@@V?$allocator@Vdevice@_V1@sycl@@@std@@@std@@XZ
??$get_info@Ucomposite_device@device@info@experimental@oneapi@ext@_V1@sycl@@@device_impl@detail@_V1@sycl@@QEBA?AVdevice@23@XZ
??$get_info@Ucontext@queue@info@_V1@sycl@@@queue@_V1@sycl@@QEBA?AVcontext@12@XZ
??$get_info@Ucurrent_clock_throttle_reasons@device@info@intel@ext@_V1@sycl@@@device_impl@detail@_V1@sycl@@QEBA?AV?$vector@W4throttle_reason@intel@ext@_V1@sycl@@V?$allocator@W4throttle_reason@intel@ext@_V1@sycl@@@std@@@std@@XZ
??$get_info@Udevice@queue@info@_V1@sycl@@@queue@_V1@sycl@@QEBA?AVdevice@12@XZ
??$get_info@Udevice_id@device@info@intel@ext@_V1@sycl@@@device_impl@detail@_V1@sycl@@QEBAIXZ
??$get_info@Udevices@context@info@_V1@sycl@@@context@_V1@sycl@@QEBA?AV?$vector@Vdevice@_V1@sycl@@V?$allocator@Vdevice@_V1@sycl@@@std@@@std@@XZ
??$get_info@Uext_codeplay_num_regs@kernel_device_specific@info@_V1@sycl@@@kernel@_V1@sycl@@QEBAIAEBVdevice@12@@Z
??$get_info@Ufan_speed@device@info@intel@ext@_V1@sycl@@@device_impl@detail@_V1@sycl@@QEBAHXZ
??$get_info@Ufree_memory@device@info@intel@ext@_V1@sycl@@@device_impl@detail@_V1@sycl@@QEBA_KXZ
??$get_info@Uglobal_work_size@kernel_device_specific@info@_V1@sycl@@@kernel@_V1@sycl@@QEBA?AV?$range@$02@12@AEBVdevice@12@@Z
??$get_info@Ugpu_eu_count@device@info@intel@ext@_V1@sycl@@@device_impl@detail@_V1@sycl@@QEBAIXZ
Expand All @@ -87,11 +89,13 @@
??$get_info@Umax_image_linear_width@device@info@experimental@oneapi@ext@_V1@sycl@@@device_impl@detail@_V1@sycl@@QEBA_KXZ
??$get_info@Umax_mem_bandwidth@device@info@intel@ext@_V1@sycl@@@device_impl@detail@_V1@sycl@@QEBA_KXZ
??$get_info@Umax_num_sub_groups@kernel_device_specific@info@_V1@sycl@@@kernel@_V1@sycl@@QEBAIAEBVdevice@12@@Z
??$get_info@Umax_power_limit@device@info@intel@ext@_V1@sycl@@@device_impl@detail@_V1@sycl@@QEBAHXZ
??$get_info@Umax_registers_per_work_group@device@info@experimental@codeplay@ext@_V1@sycl@@@device_impl@detail@_V1@sycl@@QEBAIXZ
??$get_info@Umax_sub_group_size@kernel_device_specific@info@_V1@sycl@@@kernel@_V1@sycl@@QEBAIAEBVdevice@12@@Z
??$get_info@Umax_sub_group_size@kernel_device_specific@info@_V1@sycl@@@kernel@_V1@sycl@@QEBAIAEBVdevice@12@AEBV?$range@$02@12@@Z
??$get_info@Umemory_bus_width@device@info@intel@ext@_V1@sycl@@@device_impl@detail@_V1@sycl@@QEBAIXZ
??$get_info@Umemory_clock_rate@device@info@intel@ext@_V1@sycl@@@device_impl@detail@_V1@sycl@@QEBAIXZ
??$get_info@Umin_power_limit@device@info@intel@ext@_V1@sycl@@@device_impl@detail@_V1@sycl@@QEBAHXZ
??$get_info@Umipmap_max_anisotropy@device@info@experimental@oneapi@ext@_V1@sycl@@@device_impl@detail@_V1@sycl@@QEBAMXZ
??$get_info@Unum_compute_units@device@info@oneapi@ext@_V1@sycl@@@device_impl@detail@_V1@sycl@@QEBA_KXZ
??$get_info@Upci_address@device@info@intel@ext@_V1@sycl@@@device_impl@detail@_V1@sycl@@QEBA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ
Expand Down Expand Up @@ -132,6 +136,7 @@
??$get_info_impl@Ucomponent_devices@device@info@experimental@oneapi@ext@_V1@sycl@@@device@_V1@sycl@@AEBA?AV?$vector@Vdevice@_V1@sycl@@V?$allocator@Vdevice@_V1@sycl@@@std@@@std@@XZ
??$get_info_impl@Ucomposite_device@device@info@experimental@oneapi@ext@_V1@sycl@@@device@_V1@sycl@@AEBA?AV012@XZ
??$get_info_impl@Ucontext@kernel@info@_V1@sycl@@@kernel@_V1@sycl@@AEBA?AVcontext@12@XZ
??$get_info_impl@Ucurrent_clock_throttle_reasons@device@info@intel@ext@_V1@sycl@@@device@_V1@sycl@@AEBA?AV?$vector@W4throttle_reason@intel@ext@_V1@sycl@@V?$allocator@W4throttle_reason@intel@ext@_V1@sycl@@@std@@@std@@XZ
??$get_info_impl@Udevice_id@device@info@intel@ext@_V1@sycl@@@device@_V1@sycl@@AEBAIXZ
??$get_info_impl@Udevice_type@device@info@_V1@sycl@@@device@_V1@sycl@@AEBA?AW4device_type@info@12@XZ
??$get_info_impl@Udouble_fp_config@device@info@_V1@sycl@@@device@_V1@sycl@@AEBA?AV?$vector@W4fp_config@info@_V1@sycl@@V?$allocator@W4fp_config@info@_V1@sycl@@@std@@@std@@XZ
Expand All @@ -156,6 +161,7 @@
??$get_info_impl@Uext_oneapi_srgb@device@info@_V1@sycl@@@device@_V1@sycl@@AEBA_NXZ
??$get_info_impl@Uextensions@device@info@_V1@sycl@@@device@_V1@sycl@@AEBA?AV?$vector@Vstring@detail@_V1@sycl@@V?$allocator@Vstring@detail@_V1@sycl@@@std@@@std@@XZ
??$get_info_impl@Uextensions@platform@info@_V1@sycl@@@platform@_V1@sycl@@AEBA?AV?$vector@Vstring@detail@_V1@sycl@@V?$allocator@Vstring@detail@_V1@sycl@@@std@@@std@@XZ
??$get_info_impl@Ufan_speed@device@info@intel@ext@_V1@sycl@@@device@_V1@sycl@@AEBAHXZ
??$get_info_impl@Ufree_memory@device@info@intel@ext@_V1@sycl@@@device@_V1@sycl@@AEBA_KXZ
??$get_info_impl@Ufunction_name@kernel@info@_V1@sycl@@@kernel@_V1@sycl@@AEBA?AVstring@detail@12@XZ
??$get_info_impl@Uglobal_mem_cache_line_size@device@info@_V1@sycl@@@device@_V1@sycl@@AEBAIXZ
Expand Down Expand Up @@ -201,6 +207,7 @@
??$get_info_impl@Umax_mem_bandwidth@device@info@intel@ext@_V1@sycl@@@device@_V1@sycl@@AEBA_KXZ
??$get_info_impl@Umax_num_sub_groups@device@info@_V1@sycl@@@device@_V1@sycl@@AEBAIXZ
??$get_info_impl@Umax_parameter_size@device@info@_V1@sycl@@@device@_V1@sycl@@AEBA_KXZ
??$get_info_impl@Umax_power_limit@device@info@intel@ext@_V1@sycl@@@device@_V1@sycl@@AEBAHXZ
??$get_info_impl@Umax_read_image_args@device@info@_V1@sycl@@@device@_V1@sycl@@AEBAIXZ
??$get_info_impl@Umax_registers_per_work_group@device@info@experimental@codeplay@ext@_V1@sycl@@@device@_V1@sycl@@AEBAIXZ
??$get_info_impl@Umax_samplers@device@info@_V1@sycl@@@device@_V1@sycl@@AEBAIXZ
Expand All @@ -210,6 +217,7 @@
??$get_info_impl@Umem_base_addr_align@device@info@_V1@sycl@@@device@_V1@sycl@@AEBAIXZ
??$get_info_impl@Umemory_bus_width@device@info@intel@ext@_V1@sycl@@@device@_V1@sycl@@AEBAIXZ
??$get_info_impl@Umemory_clock_rate@device@info@intel@ext@_V1@sycl@@@device@_V1@sycl@@AEBAIXZ
??$get_info_impl@Umin_power_limit@device@info@intel@ext@_V1@sycl@@@device@_V1@sycl@@AEBAHXZ
??$get_info_impl@Umipmap_max_anisotropy@device@info@experimental@oneapi@ext@_V1@sycl@@@device@_V1@sycl@@AEBAMXZ
??$get_info_impl@Uname@device@info@_V1@sycl@@@device@_V1@sycl@@AEBA?AVstring@detail@12@XZ
??$get_info_impl@Uname@platform@info@_V1@sycl@@@platform@_V1@sycl@@AEBA?AVstring@detail@12@XZ
Expand Down
1 change: 1 addition & 0 deletions sycl/unittests/Extensions/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ add_sycl_unittest(ExtensionsTests OBJECT
BFloat16.cpp
LaunchQueries.cpp
EventMode.cpp
DeviceInfo.cpp
)

add_subdirectory(CommandGraph)
Expand Down
Loading