Skip to content

Commit 3658da7

Browse files
[NFC][SYCL] Speed up slow aspects by caching
1 parent 44a1025 commit 3658da7

File tree

1 file changed

+30
-3
lines changed

1 file changed

+30
-3
lines changed

sycl/source/detail/device_impl.hpp

Lines changed: 30 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2187,12 +2187,39 @@ class device_impl : public std::enable_shared_from_this<device_impl> {
21872187
mutable JointCache<
21882188
UREagerCache<UR_DEVICE_INFO_TYPE, UR_DEVICE_INFO_USE_NATIVE_ASSERT,
21892189
UR_DEVICE_INFO_EXTENSIONS>, //
2190-
URCallOnceCache<UR_DEVICE_INFO_NAME>, //
2191-
EagerCache<InfoInitializer>, //
2190+
URCallOnceCache<UR_DEVICE_INFO_NAME,
2191+
// USM:
2192+
UR_DEVICE_INFO_USM_DEVICE_SUPPORT,
2193+
UR_DEVICE_INFO_USM_HOST_SUPPORT,
2194+
UR_DEVICE_INFO_USM_SINGLE_SHARED_SUPPORT,
2195+
UR_DEVICE_INFO_USM_CROSS_SHARED_SUPPORT,
2196+
UR_DEVICE_INFO_USM_SYSTEM_SHARED_SUPPORT,
2197+
//
2198+
UR_DEVICE_INFO_ATOMIC_64>, //
2199+
EagerCache<InfoInitializer>, //
21922200
CallOnceCache<InfoInitializer,
21932201
ext::oneapi::experimental::info::device::architecture>, //
21942202
AspectCache<EagerCache, aspect::fp16, aspect::fp64,
2195-
aspect::int64_base_atomics, aspect::int64_extended_atomics>>
2203+
aspect::int64_base_atomics, aspect::int64_extended_atomics,
2204+
aspect::ext_oneapi_atomic16>,
2205+
AspectCache<
2206+
CallOnceCache,
2207+
// Slow, >100ns (for baseline cached ~30..40ns):
2208+
aspect::ext_intel_pci_address, aspect::ext_intel_gpu_eu_count,
2209+
aspect::ext_intel_free_memory, aspect::ext_intel_fan_speed,
2210+
aspect::ext_intel_power_limits,
2211+
// medium-slow, 60-90ns (for baseline cached ~30..40ns):
2212+
aspect::ext_intel_gpu_eu_simd_width, aspect::ext_intel_gpu_slices,
2213+
aspect::ext_intel_gpu_subslices_per_slice,
2214+
aspect::ext_intel_gpu_eu_count_per_subslice,
2215+
aspect::ext_intel_device_info_uuid,
2216+
aspect::ext_intel_gpu_hw_threads_per_eu,
2217+
aspect::ext_intel_memory_clock_rate,
2218+
aspect::ext_intel_memory_bus_width,
2219+
aspect::ext_oneapi_bindless_images,
2220+
aspect::ext_oneapi_bindless_images_1d_usm,
2221+
aspect::ext_oneapi_bindless_images_2d_usm,
2222+
aspect::ext_oneapi_is_composite, aspect::ext_oneapi_is_component>>
21962223
MCache;
21972224

21982225
}; // class device_impl

0 commit comments

Comments
 (0)