__SYCL_PARAM_TRAITS_SPEC(device, device_type, info::device_type)
__SYCL_PARAM_TRAITS_SPEC(device, vendor_id, pi_uint32)
__SYCL_PARAM_TRAITS_SPEC(device, max_compute_units, pi_uint32)
__SYCL_PARAM_TRAITS_SPEC(device, max_work_item_dimensions, pi_uint32)
__SYCL_PARAM_TRAITS_SPEC(device, max_work_item_sizes, id<3>)
__SYCL_PARAM_TRAITS_SPEC(device, max_work_group_size, size_t)
__SYCL_PARAM_TRAITS_SPEC(device, preferred_vector_width_char, pi_uint32)
__SYCL_PARAM_TRAITS_SPEC(device, preferred_vector_width_short, pi_uint32)
__SYCL_PARAM_TRAITS_SPEC(device, preferred_vector_width_int, pi_uint32)
__SYCL_PARAM_TRAITS_SPEC(device, preferred_vector_width_long, pi_uint32)
__SYCL_PARAM_TRAITS_SPEC(device, preferred_vector_width_float, pi_uint32)
__SYCL_PARAM_TRAITS_SPEC(device, preferred_vector_width_double, pi_uint32)
__SYCL_PARAM_TRAITS_SPEC(device, preferred_vector_width_half, pi_uint32)
__SYCL_PARAM_TRAITS_SPEC(device, native_vector_width_char, pi_uint32)
__SYCL_PARAM_TRAITS_SPEC(device, native_vector_width_short, pi_uint32)
__SYCL_PARAM_TRAITS_SPEC(device, native_vector_width_int, pi_uint32)
__SYCL_PARAM_TRAITS_SPEC(device, native_vector_width_long, pi_uint32)
__SYCL_PARAM_TRAITS_SPEC(device, native_vector_width_float, pi_uint32)
__SYCL_PARAM_TRAITS_SPEC(device, native_vector_width_double, pi_uint32)
__SYCL_PARAM_TRAITS_SPEC(device, native_vector_width_half, pi_uint32)
__SYCL_PARAM_TRAITS_SPEC(device, max_clock_frequency, pi_uint32)
__SYCL_PARAM_TRAITS_SPEC(device, address_bits, pi_uint32)
__SYCL_PARAM_TRAITS_SPEC(device, max_mem_alloc_size, pi_uint64)
__SYCL_PARAM_TRAITS_SPEC(device, image_support, bool)
__SYCL_PARAM_TRAITS_SPEC(device, max_read_image_args, pi_uint32)
__SYCL_PARAM_TRAITS_SPEC(device, max_write_image_args, pi_uint32)
__SYCL_PARAM_TRAITS_SPEC(device, image2d_max_width, size_t)
__SYCL_PARAM_TRAITS_SPEC(device, image2d_max_height, size_t)
__SYCL_PARAM_TRAITS_SPEC(device, image3d_max_width, size_t)
__SYCL_PARAM_TRAITS_SPEC(device, image3d_max_height, size_t)
__SYCL_PARAM_TRAITS_SPEC(device, image3d_max_depth, size_t)
__SYCL_PARAM_TRAITS_SPEC(device, image_max_buffer_size, size_t)
__SYCL_PARAM_TRAITS_SPEC(device, image_max_array_size, size_t)
__SYCL_PARAM_TRAITS_SPEC(device, max_samplers, pi_uint32)
__SYCL_PARAM_TRAITS_SPEC(device, max_parameter_size, size_t)
__SYCL_PARAM_TRAITS_SPEC(device, mem_base_addr_align, pi_uint32)
__SYCL_PARAM_TRAITS_SPEC(device, half_fp_config, vector_class<info::fp_config>)
__SYCL_PARAM_TRAITS_SPEC(device, single_fp_config, vector_class<info::fp_config>)
__SYCL_PARAM_TRAITS_SPEC(device, double_fp_config, vector_class<info::fp_config>)
__SYCL_PARAM_TRAITS_SPEC(device, global_mem_cache_type, info::global_mem_cache_type)
__SYCL_PARAM_TRAITS_SPEC(device, global_mem_cache_line_size, pi_uint32)
__SYCL_PARAM_TRAITS_SPEC(device, global_mem_cache_size, pi_uint64)
__SYCL_PARAM_TRAITS_SPEC(device, global_mem_size, pi_uint64)
__SYCL_PARAM_TRAITS_SPEC(device, max_constant_buffer_size, pi_uint64)
__SYCL_PARAM_TRAITS_SPEC(device, max_constant_args, pi_uint32)
__SYCL_PARAM_TRAITS_SPEC(device, local_mem_type, info::local_mem_type)
__SYCL_PARAM_TRAITS_SPEC(device, local_mem_size, pi_uint64)
__SYCL_PARAM_TRAITS_SPEC(device, error_correction_support, bool)
__SYCL_PARAM_TRAITS_SPEC(device, host_unified_memory, bool)
__SYCL_PARAM_TRAITS_SPEC(device, profiling_timer_resolution, size_t)
__SYCL_PARAM_TRAITS_SPEC(device, is_endian_little, bool)
__SYCL_PARAM_TRAITS_SPEC(device, is_available, bool)
__SYCL_PARAM_TRAITS_SPEC(device, is_compiler_available, bool)
__SYCL_PARAM_TRAITS_SPEC(device, is_linker_available, bool)
__SYCL_PARAM_TRAITS_SPEC(device, execution_capabilities,
                  vector_class<info::execution_capability>)
__SYCL_PARAM_TRAITS_SPEC(device, queue_profiling, bool)
__SYCL_PARAM_TRAITS_SPEC(device, built_in_kernels, vector_class<string_class>)
__SYCL_PARAM_TRAITS_SPEC(device, platform, cl::sycl::platform)
__SYCL_PARAM_TRAITS_SPEC(device, name, string_class)
__SYCL_PARAM_TRAITS_SPEC(device, vendor, string_class)
__SYCL_PARAM_TRAITS_SPEC(device, driver_version, string_class)
__SYCL_PARAM_TRAITS_SPEC(device, profile, string_class)
__SYCL_PARAM_TRAITS_SPEC(device, version, string_class)
__SYCL_PARAM_TRAITS_SPEC(device, opencl_c_version, string_class)
__SYCL_PARAM_TRAITS_SPEC(device, extensions, vector_class<string_class>)
__SYCL_PARAM_TRAITS_SPEC(device, printf_buffer_size, size_t)
__SYCL_PARAM_TRAITS_SPEC(device, preferred_interop_user_sync, bool)
__SYCL_PARAM_TRAITS_SPEC(device, parent_device, cl::sycl::device)
__SYCL_PARAM_TRAITS_SPEC(device, partition_max_sub_devices, pi_uint32)
__SYCL_PARAM_TRAITS_SPEC(device, partition_properties,
                  vector_class<info::partition_property>)
__SYCL_PARAM_TRAITS_SPEC(device, partition_affinity_domains,
                  vector_class<info::partition_affinity_domain>)
__SYCL_PARAM_TRAITS_SPEC(device, partition_type_property, info::partition_property)
__SYCL_PARAM_TRAITS_SPEC(device, partition_type_affinity_domain,
                  info::partition_affinity_domain)
__SYCL_PARAM_TRAITS_SPEC(device, reference_count, pi_uint32)
__SYCL_PARAM_TRAITS_SPEC(device, max_num_sub_groups, pi_uint32)
__SYCL_PARAM_TRAITS_SPEC(device, sub_group_independent_forward_progress, bool)
__SYCL_PARAM_TRAITS_SPEC(device, sub_group_sizes, vector_class<size_t>)
__SYCL_PARAM_TRAITS_SPEC(device, kernel_kernel_pipe_support, bool)
__SYCL_PARAM_TRAITS_SPEC(device, usm_device_allocations, bool)
__SYCL_PARAM_TRAITS_SPEC(device, usm_host_allocations, bool)
__SYCL_PARAM_TRAITS_SPEC(device, usm_shared_allocations, bool)
__SYCL_PARAM_TRAITS_SPEC(device, usm_restricted_shared_allocations, bool)
__SYCL_PARAM_TRAITS_SPEC(device, usm_system_allocator, bool)
__SYCL_PARAM_TRAITS_SPEC(device, ext_intel_pci_address, string_class)
__SYCL_PARAM_TRAITS_SPEC(device, ext_intel_gpu_eu_count, pi_uint32)
__SYCL_PARAM_TRAITS_SPEC(device, ext_intel_gpu_eu_simd_width, pi_uint32)
__SYCL_PARAM_TRAITS_SPEC(device, ext_intel_gpu_slices, pi_uint32)
__SYCL_PARAM_TRAITS_SPEC(device, ext_intel_gpu_subslices_per_slice, pi_uint32)
__SYCL_PARAM_TRAITS_SPEC(device, ext_intel_gpu_eu_count_per_subslice, pi_uint32)
__SYCL_PARAM_TRAITS_SPEC(device, ext_intel_max_mem_bandwidth, pi_uint64)
__SYCL_PARAM_TRAITS_SPEC(device, ext_intel_mem_channel, bool)
