DPC++ Runtime
Runtime libraries for oneAPI DPC++
sycl::_V1 Namespace Reference

Namespaces

 access
 
 detail
 
 ext
 
 info
 
 opencl
 
 property
 
 usm
 

Classes

struct  mode_tag_t
 
struct  mode_target_tag_t
 
struct  remove_decoration
 
struct  remove_decoration< const T >
 
struct  remove_decoration< T * >
 
struct  remove_decoration< const T * >
 
struct  remove_decoration< T & >
 
struct  remove_decoration< const T & >
 
class  accessor
 
class  local_accessor_base
 Buffer accessor. More...
 
class  accessor< DataT, Dimensions, AccessMode, access::target::local, IsPlaceholder >
 
class  accessor< DataT, Dimensions, AccessMode, access::target::host_image, IsPlaceholder >
 Host image accessor. More...
 
class  host_accessor
 
class  vec
 Provides a cross-patform vector class template that works efficiently on SYCL devices as well as in host C++ code. More...
 
class  multi_ptr
 Provides constructors for address space qualified and non address space qualified pointers to allow interoperability between plain C++ and OpenCL C. More...
 
class  atomic_ref
 
class  backend_traits
 
class  range
 Defines the iteration domain of either a single work-group in a parallel dispatch, or the overall dimensions of the dispatch. More...
 
class  buffer
 Defines a shared array that can be used by kernels in queues. More...
 
class  context
 The context class represents a SYCL context on which kernel functions may be executed. More...
 
class  id
 A unique identifier of an item in an index space. More...
 
class  marray
 Provides a cross-platform math array class template that works on SYCL devices as well as in host C++ code. More...
 
class  item
 Identifies an instance of the function object executing at each point in a range. More...
 
class  group
 
class  nd_item
 Identifies an instance of the function object executing at each point in an nd_range. More...
 
class  h_item
 Identifies an instance of a group::parallel_for_work_item function object executing at each point in a local range passed to a parallel_for_work_item call or to the corresponding parallel_for_work_group call. More...
 
class  device
 The SYCL device class encapsulates a single SYCL device on which kernels may be executed. More...
 
class  device_event
 Encapsulates a single SYCL device event which is available only within SYCL kernel functions and can be used to wait for asynchronous operations within a kernel function to complete. More...
 
class  accelerator_selector
 The default selector chooses the first available SYCL device. More...
 
class  event
 An event object can be used to synchronize memory transfers, enqueues of kernels and signaling barriers. More...
 
class  exception
 
class  exception_list
 A list of asynchronous exceptions. More...
 
struct  is_property< ext::codeplay::experimental::property::promote_private >
 
struct  is_property< ext::codeplay::experimental::property::promote_local >
 
struct  is_property< ext::codeplay::experimental::property::no_barriers >
 
struct  is_property< ext::codeplay::experimental::property::force_fusion >
 
struct  is_property< ext::codeplay::experimental::property::queue::enable_fusion >
 
struct  is_property_of< ext::codeplay::experimental::property::promote_private, buffer< T, Dimensions, AllocatorT, void > >
 
struct  is_property_of< ext::codeplay::experimental::property::promote_local, buffer< T, Dimensions, AllocatorT, void > >
 
struct  is_property_of< ext::codeplay::experimental::property::promote_private, accessor< DataT, Dimensions, AccessMode, AccessTarget, IsPlaceholder, PropertyListT > >
 
struct  is_property_of< ext::codeplay::experimental::property::promote_local, accessor< DataT, Dimensions, AccessMode, AccessTarget, IsPlaceholder, PropertyListT > >
 
struct  is_property_of< ext::codeplay::experimental::property::queue::enable_fusion, queue >
 
struct  is_property< ext::oneapi::property::usm::device_read_only >
 
struct  is_property< ext::intel::experimental::property::usm::buffer_location >
 
class  nd_range
 Defines the iteration domain of both the work-groups and the overall dispatch. More...
 
struct  is_device_copyable< ext::oneapi::experimental::properties< PropertiesT >, std::enable_if_t<!std::is_trivially_copyable< ext::oneapi::experimental::properties< PropertiesT > >::value > >
 
struct  is_device_copyable< const ext::oneapi::experimental::properties< PropertiesT >, std::enable_if_t<!std::is_trivially_copyable< const ext::oneapi::experimental::properties< PropertiesT > >::value > >
 
struct  minimum
 
struct  minimum< void >
 
struct  maximum
 
struct  maximum< void >
 
class  handler
 Command group handler class. More...
 
class  image
 Defines a shared image data. More...
 
class  interop_handle
 
class  kernel_bundle
 The kernel_bundle class represents collection of device images in a particular state. More...
 
class  kernel
 Provides an abstraction of a SYCL kernel. More...
 
class  kernel_id
 Objects of the class identify kernel is some kernel_bundle related APIs. More...
 
class  device_image
 Objects of the class represents an instance of an image in a specific state. More...
 
struct  has_known_identity
 
struct  known_identity
 
class  local_accessor
 
class  multi_ptr< const void, Space, DecorateAddress >
 Specialization of multi_ptr for const void. More...
 
class  multi_ptr< void, Space, DecorateAddress >
 
class  multi_ptr< ElementType, Space, access::decorated::legacy >
 
class  multi_ptr< void, Space, access::decorated::legacy >
 
class  multi_ptr< const void, Space, access::decorated::legacy >
 
class  platform
 Encapsulates a SYCL platform on which kernels may be executed. More...
 
struct  is_property< ext::oneapi::property::no_offset >
 
struct  is_property< ext::oneapi::property::no_alias >
 
struct  is_property< ext::intel::property::buffer_location >
 
struct  is_property_of< property::noinit, T >
 
struct  is_property_of< property::no_init, T >
 
struct  is_property_of< ext::oneapi::property::no_offset, T >
 
struct  is_property_of< ext::oneapi::property::no_alias, T >
 
struct  is_property_of< ext::intel::property::buffer_location, T >
 
struct  is_property_of< property::buffer::use_host_ptr, buffer< T, Dimensions, AllocatorT, void > >
 
struct  is_property_of< property::buffer::use_mutex, buffer< T, Dimensions, AllocatorT, void > >
 
struct  is_property_of< property::buffer::detail::buffer_location, buffer< T, Dimensions, AllocatorT, void > >
 
struct  is_property_of< property::buffer::context_bound, buffer< T, Dimensions, AllocatorT, void > >
 
struct  is_property_of< property::buffer::mem_channel, buffer< T, Dimensions, AllocatorT, void > >
 
struct  is_property_of< ext::oneapi::property::buffer::use_pinned_host_memory, buffer< T, Dimensions, AllocatorT, void > >
 
struct  is_property_of< property::context::cuda::use_primary_context, context >
 
struct  is_property_of< ext::oneapi::cuda::property::context::use_primary_context, context >
 
struct  is_property_of< property::image::use_host_ptr, image< Dimensions, AllocatorT > >
 
struct  is_property_of< property::image::use_mutex, image< Dimensions, AllocatorT > >
 
struct  is_property_of< property::image::context_bound, image< Dimensions, AllocatorT > >
 
struct  is_property
 
struct  is_property_of
 
struct  is_property_of< property::queue::in_order, queue >
 
struct  is_property_of< property::queue::enable_profiling, queue >
 
struct  is_property_of< ext::oneapi::property::queue::discard_events, queue >
 
struct  is_property_of< ext::oneapi::property::queue::priority_normal, queue >
 
struct  is_property_of< ext::oneapi::property::queue::priority_low, queue >
 
struct  is_property_of< ext::oneapi::property::queue::priority_high, queue >
 
struct  is_property_of< property::queue::cuda::use_default_stream, queue >
 
struct  is_property_of< ext::oneapi::cuda::property::queue::use_default_stream, queue >
 
class  property_list
 Objects of the property_list class are containers for the SYCL properties. More...
 
class  queue
 Encapsulates a single SYCL queue which schedules kernels on a SYCL device. More...
 
class  reducer
 Class that is used to represent objects that are passed to user's lambda functions and representing users' reduction variable. More...
 
class  reducer< T, BinaryOperation, Dims, Extent, View, std::enable_if_t< Dims==0 &&Extent==1 &&View==false &&!detail::IsKnownIdentityOp< T, BinaryOperation >::value > >
 Specialization of the generic class 'reducer'. More...
 
class  reducer< T, BinaryOperation, Dims, Extent, View, std::enable_if_t< Dims==0 &&Extent==1 &&View==false &&detail::IsKnownIdentityOp< T, BinaryOperation >::value > >
 Specialization of the generic class 'reducer'. More...
 
class  reducer< T, BinaryOperation, Dims, Extent, View, std::enable_if_t< Dims==0 &&View==true > >
 Component of 'reducer' class for array reductions, representing a single element of the span (as returned by the subscript operator). More...
 
class  reducer< T, BinaryOperation, Dims, Extent, View, std::enable_if_t< Dims==1 &&View==false &&!detail::IsKnownIdentityOp< T, BinaryOperation >::value > >
 Specialization of 'reducer' class for array reductions exposing the subscript operator. More...
 
class  reducer< T, BinaryOperation, Dims, Extent, View, std::enable_if_t< Dims==1 &&View==false &&detail::IsKnownIdentityOp< T, BinaryOperation >::value > >
 Specialization of 'reducer' class for array reductions accepting a span in cases where the identity value is known. More...
 
class  __precision_manipulator__
 
class  __width_manipulator__
 
struct  elem
 
struct  is_device_copyable
 is_device_copyable is a user specializable class template to indicate that a type T is device copyable, which means that SYCL implementation may copy objects of the type T between host and device or between two devices. More...
 
struct  is_device_copyable< T, std::enable_if_t< std::is_trivially_copyable< T >::value > >
 
struct  is_device_copyable< std::tuple<> >
 
struct  is_device_copyable< std::tuple< T, Ts... > >
 
struct  is_device_copyable< sycl::marray< T, N >, std::enable_if_t< is_device_copyable< T >::value &&!std::is_trivially_copyable< T >::value > >
 
class  usm_allocator
 

Typedefs

using access_mode = access::mode
 
template<typename T >
using remove_decoration_t = typename remove_decoration< T >::type
 
using instead = std::uint8_t
 
using schar = signed char
 
using uchar = unsigned char
 
using ushort = unsigned short
 
using uint = unsigned int
 
using ulong = unsigned long
 
using longlong = long long
 
using ulonglong = unsigned long long
 
using half = sycl::detail::half_impl::half
 
using cl_bool = bool
 
using cl_char = std::int8_t
 
using cl_uchar = std::uint8_t
 
using cl_short = std::int16_t
 
using cl_ushort = std::uint16_t
 
using cl_int = std::int32_t
 
using cl_uint = std::uint32_t
 
using cl_long = std::int64_t
 
using cl_ulong = std::uint64_t
 
using cl_half = half
 
using cl_float = float
 
using cl_double = double
 
template<backend Backend, typename SyclType >
using backend_input_t = typename backend_traits< Backend >::template input_type< SyclType >
 
template<backend Backend, typename SyclType >
using backend_return_t = typename backend_traits< Backend >::template return_type< SyclType >
 
template<typename DataT >
using buffer_allocator = detail::sycl_memory_object_allocator< DataT >
 
template<backend B>
using errc_for = typename backend_traits< B >::errc
 
using async_handler = std::function< void(sycl::exception_list)>
 
template<typename T = void>
using plus = std::plus< T >
 
template<typename T = void>
using multiplies = std::multiplies< T >
 
template<typename T = void>
using bit_and = std::bit_and< T >
 
template<typename T = void>
using bit_or = std::bit_or< T >
 
template<typename T = void>
using bit_xor = std::bit_xor< T >
 
template<typename T = void>
using logical_and = std::logical_and< T >
 
template<typename T = void>
using logical_or = std::logical_or< T >
 
using byte = unsigned char
 
using image_allocator = detail::aligned_allocator< byte >
 
template<class name , class dataT , int32_t min_capacity = 0>
using pipe = ext::intel::pipe< name, dataT, min_capacity >
 
template<typename ElementType , access::decorated IsDecorated = access::decorated::legacy>
using generic_ptr = multi_ptr< ElementType, access::address_space::generic_space, IsDecorated >
 
template<typename ElementType , access::decorated IsDecorated = access::decorated::legacy>
using global_ptr = multi_ptr< ElementType, access::address_space::global_space, IsDecorated >
 
template<typename ElementType , access::decorated IsDecorated = access::decorated::legacy>
using device_ptr = multi_ptr< ElementType, access::address_space::ext_intel_global_device_space, IsDecorated >
 
template<typename ElementType , access::decorated IsDecorated = access::decorated::legacy>
using host_ptr = multi_ptr< ElementType, access::address_space::ext_intel_global_host_space, IsDecorated >
 
template<typename ElementType , access::decorated IsDecorated = access::decorated::legacy>
using local_ptr = multi_ptr< ElementType, access::address_space::local_space, IsDecorated >
 
template<typename ElementType >
using constant_ptr = multi_ptr< ElementType, access::address_space::constant_space, access::decorated::legacy >
 
template<typename ElementType , access::decorated IsDecorated = access::decorated::legacy>
using private_ptr = multi_ptr< ElementType, access::address_space::private_space, IsDecorated >
 
template<typename ElementType >
using raw_global_ptr = multi_ptr< ElementType, access::address_space::global_space, access::decorated::no >
 
template<typename ElementType >
using raw_local_ptr = multi_ptr< ElementType, access::address_space::local_space, access::decorated::no >
 
template<typename ElementType >
using raw_private_ptr = multi_ptr< ElementType, access::address_space::private_space, access::decorated::no >
 
template<typename ElementType >
using decorated_global_ptr = multi_ptr< ElementType, access::address_space::global_space, access::decorated::yes >
 
template<typename ElementType >
using decorated_local_ptr = multi_ptr< ElementType, access::address_space::local_space, access::decorated::yes >
 
template<typename ElementType >
using decorated_private_ptr = multi_ptr< ElementType, access::address_space::private_space, access::decorated::yes >
 
template<typename T >
using vec_data = detail::vec_helper< T >
 
template<typename T >
using vec_data_t = typename detail::vec_helper< T >::RetType
 
using ContextImplPtr = std::shared_ptr< sycl::detail::context_impl >
 
using alloc = sycl::usm::alloc
 

Enumerations

enum class  backend : char {
  __SYCL2020_DEPRECATED =("'host' backend is no longer supported") = 0 , opencl = 1 , ext_oneapi_level_zero = 2 , __SYCL2020_DEPRECATED ,
  ext_oneapi_cuda = 3 , __SYCL2020_DEPRECATED =("use 'ext_oneapi_cuda' instead") = ext_oneapi_cuda , all = 4 , ext_intel_esimd_emulator = 5 ,
  __SYCL2020_DEPRECATED , ext_oneapi_hip = 6 , __SYCL2020_DEPRECATED =("use 'ext_oneapi_hip' instead") = ext_oneapi_hip
}
 
enum class  errc : unsigned int {
  success = 0 , runtime = 1 , kernel = 2 , accessor = 3 ,
  nd_range = 4 , event = 5 , kernel_argument = 6 , build = 7 ,
  invalid = 8 , memory_allocation = 9 , platform = 10 , profiling = 11 ,
  feature_not_supported = 12 , kernel_not_supported = 13 , backend_mismatch = 14
}
 
enum class  image_channel_order : unsigned int {
  a = 0 , r = 1 , rx = 2 , rg = 3 ,
  rgx = 4 , ra = 5 , rgb = 6 , rgbx = 7 ,
  rgba = 8 , argb = 9 , bgra = 10 , intensity = 11 ,
  luminance = 12 , abgr = 13 , ext_oneapi_srgba = 14
}
 
enum class  image_channel_type : unsigned int {
  snorm_int8 = 0 , snorm_int16 = 1 , unorm_int8 = 2 , unorm_int16 = 3 ,
  unorm_short_565 = 4 , unorm_short_555 = 5 , unorm_int_101010 = 6 , signed_int8 = 7 ,
  signed_int16 = 8 , signed_int32 = 9 , unsigned_int8 = 10 , unsigned_int16 = 11 ,
  unsigned_int32 = 12 , fp16 = 13 , fp32 = 14
}
 
enum class  bundle_state : char { input = 0 , object = 1 , executable = 2 }
 
enum class  memory_order : int {
  relaxed = 0 , acquire = 1 , __consume_unsupported , release = 3 ,
  acq_rel = 4 , seq_cst = 5
}
 
enum class  memory_scope : int {
  work_item = 0 , sub_group = 1 , work_group = 2 , device = 3 ,
  system = 4
}
 
enum class  addressing_mode : unsigned int {
  mirrored_repeat = PI_SAMPLER_ADDRESSING_MODE_MIRRORED_REPEAT , repeat = PI_SAMPLER_ADDRESSING_MODE_REPEAT , clamp_to_edge = PI_SAMPLER_ADDRESSING_MODE_CLAMP_TO_EDGE , clamp = PI_SAMPLER_ADDRESSING_MODE_CLAMP ,
  none = PI_SAMPLER_ADDRESSING_MODE_NONE
}
 
enum class  filtering_mode : unsigned int { nearest = PI_SAMPLER_FILTER_MODE_NEAREST , linear = PI_SAMPLER_FILTER_MODE_LINEAR }
 
enum class  coordinate_normalization_mode : unsigned int { normalized = 1 , unnormalized = 0 }
 
enum class  stream_manipulator {
  dec = 0 , hex = 1 , oct = 2 , noshowbase = 3 ,
  showbase = 4 , noshowpos = 5 , showpos = 6 , endl = 7 ,
  flush = 8 , fixed = 9 , scientific = 10 , hexfloat = 11 ,
  defaultfloat = 12
}
 
enum class  rounding_mode {
  automatic = 0 , rte = 1 , rtz = 2 , rtp = 3 ,
  rtn = 4
}
 

Functions

template<typename DataT , int Dimensions, access::mode AccessMode, access::placeholder IsPlaceholder>
class __SYCL_EBO __SYCL_SPECIAL_CLASS __SYCL_TYPE(local_accessor) local_accessor class __SYCL_EBO __SYCL_SPECIAL_CLASS __SYCL_TYPE (accessor) accessor< DataT
 Image accessors. More...
 
template<typename DataT , int Dimensions, access::mode AccessMode, access::placeholder IsPlaceholder>
class __SYCL_EBO __SYCL_SPECIAL_CLASS __SYCL_TYPE (accessor) accessor< DataT
 Image array accessor. More...
 
enum __SYCL_TYPE (aspect) aspect
 
template<typename T , access::address_space addressSpace = access::address_space::global_space>
class __SYCL2020_DEPRECATED ("sycl::atomic is deprecated since SYCL 2020") atomic
 
template<typename T , access::address_space addressSpace>
void atomic_store (atomic< T, addressSpace > Object, T Operand, memory_order MemoryOrder=memory_order::relaxed)
 
template<typename T , access::address_space addressSpace>
atomic_load (atomic< T, addressSpace > Object, memory_order MemoryOrder=memory_order::relaxed)
 
template<typename T , access::address_space addressSpace>
atomic_exchange (atomic< T, addressSpace > Object, T Operand, memory_order MemoryOrder=memory_order::relaxed)
 
template<typename T , access::address_space addressSpace>
bool atomic_compare_exchange_strong (atomic< T, addressSpace > Object, T &Expected, T Desired, memory_order SuccessOrder=memory_order::relaxed, memory_order FailOrder=memory_order::relaxed)
 
template<typename T , access::address_space addressSpace>
atomic_fetch_add (atomic< T, addressSpace > Object, T Operand, memory_order MemoryOrder=memory_order::relaxed)
 
template<typename T , access::address_space addressSpace>
atomic_fetch_sub (atomic< T, addressSpace > Object, T Operand, memory_order MemoryOrder=memory_order::relaxed)
 
template<typename T , access::address_space addressSpace>
atomic_fetch_and (atomic< T, addressSpace > Object, T Operand, memory_order MemoryOrder=memory_order::relaxed)
 
template<typename T , access::address_space addressSpace>
atomic_fetch_or (atomic< T, addressSpace > Object, T Operand, memory_order MemoryOrder=memory_order::relaxed)
 
template<typename T , access::address_space addressSpace>
atomic_fetch_xor (atomic< T, addressSpace > Object, T Operand, memory_order MemoryOrder=memory_order::relaxed)
 
template<typename T , access::address_space addressSpace>
atomic_fetch_min (atomic< T, addressSpace > Object, T Operand, memory_order MemoryOrder=memory_order::relaxed)
 
template<typename T , access::address_space addressSpace>
atomic_fetch_max (atomic< T, addressSpace > Object, T Operand, memory_order MemoryOrder=memory_order::relaxed)
 
static void atomic_fence (memory_order order, memory_scope scope)
 
template<backend BackendName, class SyclObjectT >
auto get_native (const SyclObjectT &Obj) -> backend_return_t< BackendName, SyclObjectT >
 
template<backend BackendName, bundle_state State>
auto get_native (const kernel_bundle< State > &Obj) -> backend_return_t< BackendName, kernel_bundle< State >>
 
template<backend BackendName, typename DataT , int Dimensions, typename AllocatorT >
auto get_native (const buffer< DataT, Dimensions, AllocatorT > &Obj) -> backend_return_t< BackendName, buffer< DataT, Dimensions, AllocatorT >>
 
template<>
backend_return_t< backend::opencl, eventget_native< backend::opencl, event > (const event &Obj)
 
template<backend BackendName, typename DataT , int Dimensions, access::mode AccessMode, access::target AccessTarget, access::placeholder IsPlaceholder>
auto get_native (const accessor< DataT, Dimensions, AccessMode, AccessTarget, IsPlaceholder > &Obj) -> typename detail::interop< BackendName, accessor< DataT, Dimensions, AccessMode, AccessTarget, IsPlaceholder >>::type=delete
 
template<backend Backend>
std::enable_if< detail::InteropFeatureSupportMap< Backend >::MakePlatform==true, platform >::type make_platform (const typename backend_traits< Backend >::template input_type< platform > &BackendObject)
 
template<backend Backend>
std::enable_if< detail::InteropFeatureSupportMap< Backend >::MakeDevice==true, device >::type make_device (const typename backend_traits< Backend >::template input_type< device > &BackendObject)
 
template<backend Backend>
std::enable_if< detail::InteropFeatureSupportMap< Backend >::MakeContext==true, context >::type make_context (const typename backend_traits< Backend >::template input_type< context > &BackendObject, const async_handler &Handler={})
 
template<backend Backend>
std::enable_if< detail::InteropFeatureSupportMap< Backend >::MakeQueue==true, queue >::type make_queue (const typename backend_traits< Backend >::template input_type< queue > &BackendObject, const context &TargetContext, const async_handler Handler={})
 
template<backend Backend>
std::enable_if< detail::InteropFeatureSupportMap< Backend >::MakeEvent==true, event >::type make_event (const typename backend_traits< Backend >::template input_type< event > &BackendObject, const context &TargetContext)
 
template<backend Backend>
std::enable_if< detail::InteropFeatureSupportMap< Backend >::MakeEvent==true, event >::type make_event (const typename backend_traits< Backend >::template input_type< event > &BackendObject, const context &TargetContext, bool KeepOwnership)
 
template<backend Backend, typename T , int Dimensions = 1, typename AllocatorT = buffer_allocator<std::remove_const_t<T>>>
std::enable_if< detail::InteropFeatureSupportMap< Backend >::MakeBuffer==true &&Backend !=backend::ext_oneapi_level_zero, buffer< T, Dimensions, AllocatorT > >::type make_buffer (const typename backend_traits< Backend >::template input_type< buffer< T, Dimensions, AllocatorT >> &BackendObject, const context &TargetContext, event AvailableEvent={})
 
template<backend Backend>
kernel make_kernel (const typename backend_traits< Backend >::template input_type< kernel > &BackendObject, const context &TargetContext)
 
template<backend Backend, bundle_state State>
std::enable_if< detail::InteropFeatureSupportMap< Backend >::MakeKernelBundle==true, kernel_bundle< State > >::type make_kernel_bundle (const typename backend_traits< Backend >::template input_type< kernel_bundle< State >> &BackendObject, const context &TargetContext)
 
std::ostream & operator<< (std::ostream &Out, backend be)
 
template<typename To , typename From >
To bit_cast (const From &from) noexcept
 
template<typename T , size_t N>
__SYCL_ALWAYS_INLINE std::enable_if_t< __FAST_MATH_SGENFLOAT(T), marray< T, N > > powr (marray< T, N > x, marray< T, N > y) __NOEXC
 
template<int SZ>
ESIMD_NODEBUG ESIMD_INLINE sycl::ext::intel::esimd::simd< float, SZ > cos (sycl::ext::intel::esimd::simd< float, SZ > x) __NOEXC
 
template<int SZ>
ESIMD_NODEBUG ESIMD_INLINE sycl::ext::intel::esimd::simd< float, SZ > sin (sycl::ext::intel::esimd::simd< float, SZ > x) __NOEXC
 
template<int SZ>
ESIMD_NODEBUG ESIMD_INLINE sycl::ext::intel::esimd::simd< float, SZ > exp (sycl::ext::intel::esimd::simd< float, SZ > x) __NOEXC
 
template<int SZ>
ESIMD_NODEBUG ESIMD_INLINE sycl::ext::intel::esimd::simd< float, SZ > log (sycl::ext::intel::esimd::simd< float, SZ > x) __NOEXC
 
template<backend Backend, class SyclT >
auto get_native (const SyclT &Obj) -> backend_return_t< Backend, SyclT >
 
class __SYCL2020_DEPRECATED ("Use SYCL 2020 callable device selectors instead.") device_selector
 The SYCL 1.2.1 device_selector class provides ability to choose the best SYCL device based on heuristics specified by the user. More...
 
class __SYCL2020_DEPRECATED("Host device is no longer supported.") host_selector int default_selector_v (const device &dev)
 Selects SYCL host device. More...
 
int gpu_selector_v (const device &dev)
 
int cpu_selector_v (const device &dev)
 
int accelerator_selector_v (const device &dev)
 
detail::DSelectorInvocableType aspect_selector (const std::vector< aspect > &RequireList, const std::vector< aspect > &DenyList={})
 
template<typename... AspectListT>
detail::DSelectorInvocableType aspect_selector (AspectListT... AspectList)
 
template<aspect... AspectList>
detail::DSelectorInvocableType aspect_selector ()
 
std::error_code make_error_code (sycl::errc E) noexcept
 Constructs an error code using e and sycl_category() More...
 
const std::error_category & sycl_category () noexcept
 
template<>
backend_return_t< backend::ext_oneapi_hip, deviceget_native< backend::ext_oneapi_hip, device > (const device &Obj)
 
template<>
context make_context< backend::ext_oneapi_level_zero > (const backend_input_t< backend::ext_oneapi_level_zero, context > &BackendObject, const async_handler &Handler)
 
template<>
queue make_queue< backend::ext_oneapi_level_zero > (const backend_input_t< backend::ext_oneapi_level_zero, queue > &BackendObject, const context &TargetContext, const async_handler Handler)
 
template<>
event make_event< backend::ext_oneapi_level_zero > (const backend_input_t< backend::ext_oneapi_level_zero, event > &BackendObject, const context &TargetContext)
 
template<>
kernel_bundle< bundle_state::executablemake_kernel_bundle< backend::ext_oneapi_level_zero, bundle_state::executable > (const backend_input_t< backend::ext_oneapi_level_zero, kernel_bundle< bundle_state::executable >> &BackendObject, const context &TargetContext)
 
template<>
kernel make_kernel< backend::ext_oneapi_level_zero > (const backend_input_t< backend::ext_oneapi_level_zero, kernel > &BackendObject, const context &TargetContext)
 
template<backend Backend, typename T , int Dimensions = 1, typename AllocatorT = buffer_allocator<std::remove_const_t<T>>>
std::enable_if< Backend==backend::ext_oneapi_level_zero, buffer< T, Dimensions, AllocatorT > >::type make_buffer (const backend_input_t< backend::ext_oneapi_level_zero, buffer< T, Dimensions, AllocatorT >> &BackendObject, const context &TargetContext, event AvailableEvent)
 
template<backend Backend, typename T , int Dimensions = 1, typename AllocatorT = buffer_allocator<std::remove_const_t<T>>>
std::enable_if< Backend==backend::ext_oneapi_level_zero, buffer< T, Dimensions, AllocatorT > >::type make_buffer (const backend_input_t< backend::ext_oneapi_level_zero, buffer< T, Dimensions, AllocatorT >> &BackendObject, const context &TargetContext)
 
namespace __SYCL2020_DEPRECATED ("use 'ext::oneapi::level_zero' instead") level_zero
 
template<>
auto get_native< backend::ext_oneapi_cuda, context > (const context &C) -> backend_return_t< backend::ext_oneapi_cuda, context >
 
template<>
backend_return_t< backend::ext_oneapi_cuda, contextinterop_handle::get_native_context< backend::ext_oneapi_cuda > () const
 
template<>
device make_device< backend::ext_oneapi_cuda > (const backend_input_t< backend::ext_oneapi_cuda, device > &BackendObject)
 
template<>
event make_event< backend::ext_oneapi_cuda > (const backend_input_t< backend::ext_oneapi_cuda, event > &BackendObject, const context &TargetContext)
 
template<>
queue make_queue< backend::ext_oneapi_cuda > (const backend_input_t< backend::ext_oneapi_cuda, queue > &BackendObject, const context &TargetContext, const async_handler Handler)
 
template<typename T , int Dimensions = 1>
class __SYCL_TYPE (private_memory) private_memory
 
template<int Dimensions = 1>
class __SYCL_TYPE (group) group
 Encapsulates all functionality required to represent a particular work-group within a parallel execution. More...
 
template<int Dims>
group< Dims > this_group ()
 
template<typename Group , typename T , class BinaryOperation >
std::enable_if_t<(is_group_v< std::decay_t< Group >> &&detail::is_scalar_arithmetic< T >::value &&detail::is_native_op< T, BinaryOperation >::value), T > reduce_over_group (Group, T x, BinaryOperation binary_op)
 
template<typename Group , typename T , class BinaryOperation >
std::enable_if_t<(is_group_v< std::decay_t< Group >> &&detail::is_complex< T >::value &&detail::is_native_op< T, sycl::plus< T >>::value &&detail::is_plus< T, BinaryOperation >::value), T > reduce_over_group (Group g, T x, BinaryOperation binary_op)
 
template<typename Group , typename T , class BinaryOperation >
std::enable_if_t<(is_group_v< std::decay_t< Group >> &&detail::is_vector_arithmetic< T >::value &&detail::is_native_op< T, BinaryOperation >::value), T > reduce_over_group (Group g, T x, BinaryOperation binary_op)
 
template<typename Group , typename V , typename T , class BinaryOperation >
std::enable_if_t<(is_group_v< std::decay_t< Group >> &&(detail::is_scalar_arithmetic< V >::value||detail::is_complex< V >::value) &&(detail::is_scalar_arithmetic< T >::value||detail::is_complex< T >::value) &&detail::is_native_op< V, BinaryOperation >::value &&detail::is_native_op< T, BinaryOperation >::value &&detail::is_plus_if_complex< T, BinaryOperation >::value &&detail::is_plus_if_complex< V, BinaryOperation >::value), T > reduce_over_group (Group g, V x, T init, BinaryOperation binary_op)
 
template<typename Group , typename V , typename T , class BinaryOperation >
std::enable_if_t<(is_group_v< std::decay_t< Group >> &&detail::is_vector_arithmetic< V >::value &&detail::is_vector_arithmetic< T >::value &&detail::is_native_op< V, BinaryOperation >::value &&detail::is_native_op< T, BinaryOperation >::value), T > reduce_over_group (Group g, V x, T init, BinaryOperation binary_op)
 
template<typename Group , typename Ptr , class BinaryOperation >
std::enable_if_t<(is_group_v< std::decay_t< Group >> &&detail::is_pointer< Ptr >::value &&detail::is_arithmetic_or_complex< typename detail::remove_pointer< Ptr >::type >::value &&detail::is_plus_if_complex< typename detail::remove_pointer< Ptr >::type, BinaryOperation >::value), typename detail::remove_pointer< Ptr >::type > joint_reduce (Group g, Ptr first, Ptr last, BinaryOperation binary_op)
 
template<typename Group , typename Ptr , typename T , class BinaryOperation >
std::enable_if_t<(is_group_v< std::decay_t< Group >> &&detail::is_pointer< Ptr >::value &&detail::is_arithmetic_or_complex< typename detail::remove_pointer< Ptr >::type >::value &&detail::is_arithmetic_or_complex< T >::value &&detail::is_native_op< typename detail::remove_pointer< Ptr >::type, BinaryOperation >::value &&detail::is_plus_if_complex< typename detail::remove_pointer< Ptr >::type, BinaryOperation >::value &&detail::is_plus_if_complex< T, BinaryOperation >::value &&detail::is_native_op< T, BinaryOperation >::value), T > joint_reduce (Group g, Ptr first, Ptr last, T init, BinaryOperation binary_op)
 
template<typename Group >
std::enable_if_t< is_group_v< std::decay_t< Group > >, bool > any_of_group (Group, bool pred)
 
template<typename Group , typename T , class Predicate >
std::enable_if_t< is_group_v< Group >, bool > any_of_group (Group g, T x, Predicate pred)
 
template<typename Group , typename Ptr , class Predicate >
std::enable_if_t<(is_group_v< std::decay_t< Group >> &&detail::is_pointer< Ptr >::value), bool > joint_any_of (Group g, Ptr first, Ptr last, Predicate pred)
 
template<typename Group >
std::enable_if_t< is_group_v< std::decay_t< Group > >, bool > all_of_group (Group, bool pred)
 
template<typename Group , typename T , class Predicate >
std::enable_if_t< is_group_v< std::decay_t< Group > >, bool > all_of_group (Group g, T x, Predicate pred)
 
template<typename Group , typename Ptr , class Predicate >
std::enable_if_t<(is_group_v< std::decay_t< Group >> &&detail::is_pointer< Ptr >::value), bool > joint_all_of (Group g, Ptr first, Ptr last, Predicate pred)
 
template<typename Group >
std::enable_if_t< is_group_v< std::decay_t< Group > >, bool > none_of_group (Group, bool pred)
 
template<typename Group , typename T , class Predicate >
std::enable_if_t< is_group_v< std::decay_t< Group > >, bool > none_of_group (Group g, T x, Predicate pred)
 
template<typename Group , typename Ptr , class Predicate >
std::enable_if_t<(is_group_v< std::decay_t< Group >> &&detail::is_pointer< Ptr >::value), bool > joint_none_of (Group g, Ptr first, Ptr last, Predicate pred)
 
template<typename Group , typename T >
std::enable_if_t<(std::is_same< std::decay_t< Group >, sub_group >::value &&(std::is_trivially_copyable< T >::value||detail::is_vec< T >::value)), T > shift_group_left (Group, T x, typename Group::linear_id_type delta=1)
 
template<typename Group , typename T >
std::enable_if_t<(std::is_same< std::decay_t< Group >, sub_group >::value &&(std::is_trivially_copyable< T >::value||detail::is_vec< T >::value)), T > shift_group_right (Group, T x, typename Group::linear_id_type delta=1)
 
template<typename Group , typename T >
std::enable_if_t<(std::is_same< std::decay_t< Group >, sub_group >::value &&(std::is_trivially_copyable< T >::value||detail::is_vec< T >::value)), T > permute_group_by_xor (Group, T x, typename Group::linear_id_type mask)
 
template<typename Group , typename T >
std::enable_if_t<(std::is_same< std::decay_t< Group >, sub_group >::value &&(std::is_trivially_copyable< T >::value||detail::is_vec< T >::value)), T > select_from_group (Group, T x, typename Group::id_type local_id)
 
template<typename Group , typename T >
std::enable_if_t<(is_group_v< std::decay_t< Group >> &&(std::is_trivially_copyable< T >::value||detail::is_vec< T >::value)), T > group_broadcast (Group, T x, typename Group::id_type local_id)
 
template<typename Group , typename T >
std::enable_if_t<(is_group_v< std::decay_t< Group >> &&(std::is_trivially_copyable< T >::value||detail::is_vec< T >::value)), T > group_broadcast (Group g, T x, typename Group::linear_id_type linear_local_id)
 
template<typename Group , typename T >
std::enable_if_t<(is_group_v< std::decay_t< Group >> &&(std::is_trivially_copyable< T >::value||detail::is_vec< T >::value)), T > group_broadcast (Group g, T x)
 
template<typename Group , typename T , class BinaryOperation >
std::enable_if_t<(is_group_v< std::decay_t< Group >> &&detail::is_scalar_arithmetic< T >::value &&detail::is_native_op< T, BinaryOperation >::value), T > exclusive_scan_over_group (Group, T x, BinaryOperation binary_op)
 
template<typename Group , typename T , class BinaryOperation >
std::enable_if_t<(is_group_v< std::decay_t< Group >> &&detail::is_complex< T >::value &&detail::is_native_op< T, sycl::plus< T >>::value &&detail::is_plus< T, BinaryOperation >::value), T > exclusive_scan_over_group (Group g, T x, BinaryOperation binary_op)
 
template<typename Group , typename T , class BinaryOperation >
std::enable_if_t<(is_group_v< std::decay_t< Group >> &&detail::is_vector_arithmetic< T >::value &&detail::is_native_op< T, BinaryOperation >::value), T > exclusive_scan_over_group (Group g, T x, BinaryOperation binary_op)
 
template<typename Group , typename V , typename T , class BinaryOperation >
std::enable_if_t<(is_group_v< std::decay_t< Group >> &&detail::is_vector_arithmetic< V >::value &&detail::is_vector_arithmetic< T >::value &&detail::is_native_op< V, BinaryOperation >::value &&detail::is_native_op< T, BinaryOperation >::value), T > exclusive_scan_over_group (Group g, V x, T init, BinaryOperation binary_op)
 
template<typename Group , typename V , typename T , class BinaryOperation >
std::enable_if_t<(is_group_v< std::decay_t< Group >> &&(detail::is_scalar_arithmetic< V >::value||detail::is_complex< V >::value) &&(detail::is_scalar_arithmetic< T >::value||detail::is_complex< T >::value) &&detail::is_native_op< V, BinaryOperation >::value &&detail::is_native_op< T, BinaryOperation >::value &&detail::is_plus_if_complex< V, BinaryOperation >::value &&detail::is_plus_if_complex< T, BinaryOperation >::value), T > exclusive_scan_over_group (Group g, V x, T init, BinaryOperation binary_op)
 
template<typename Group , typename InPtr , typename OutPtr , typename T , class BinaryOperation >
std::enable_if_t<(is_group_v< std::decay_t< Group >> &&detail::is_pointer< InPtr >::value &&detail::is_pointer< OutPtr >::value &&detail::is_arithmetic_or_complex< typename detail::remove_pointer< InPtr >::type >::value &&detail::is_arithmetic_or_complex< T >::value &&detail::is_native_op< typename detail::remove_pointer< InPtr >::type, BinaryOperation >::value &&detail::is_native_op< T, BinaryOperation >::value &&detail::is_plus_if_complex< typename detail::remove_pointer< InPtr >::type, BinaryOperation >::value &&detail::is_plus_if_complex< T, BinaryOperation >::value), OutPtr > joint_exclusive_scan (Group g, InPtr first, InPtr last, OutPtr result, T init, BinaryOperation binary_op)
 
template<typename Group , typename InPtr , typename OutPtr , class BinaryOperation >
std::enable_if_t<(is_group_v< std::decay_t< Group >> &&detail::is_pointer< InPtr >::value &&detail::is_pointer< OutPtr >::value &&detail::is_arithmetic_or_complex< typename detail::remove_pointer< InPtr >::type >::value &&detail::is_native_op< typename detail::remove_pointer< InPtr >::type, BinaryOperation >::value &&detail::is_plus_if_complex< typename detail::remove_pointer< InPtr >::type, BinaryOperation >::value), OutPtr > joint_exclusive_scan (Group g, InPtr first, InPtr last, OutPtr result, BinaryOperation binary_op)
 
template<typename Group , typename T , class BinaryOperation >
std::enable_if_t<(is_group_v< std::decay_t< Group >> &&detail::is_vector_arithmetic< T >::value &&detail::is_native_op< T, BinaryOperation >::value), T > inclusive_scan_over_group (Group g, T x, BinaryOperation binary_op)
 
template<typename Group , typename T , class BinaryOperation >
std::enable_if_t<(is_group_v< std::decay_t< Group >> &&detail::is_scalar_arithmetic< T >::value &&detail::is_native_op< T, BinaryOperation >::value), T > inclusive_scan_over_group (Group, T x, BinaryOperation binary_op)
 
template<typename Group , typename T , class BinaryOperation >
std::enable_if_t<(is_group_v< std::decay_t< Group >> &&detail::is_complex< T >::value &&detail::is_native_op< T, sycl::plus< T >>::value &&detail::is_plus< T, BinaryOperation >::value), T > inclusive_scan_over_group (Group g, T x, BinaryOperation binary_op)
 
template<typename Group , typename V , class BinaryOperation , typename T >
std::enable_if_t<(is_group_v< std::decay_t< Group >> &&(detail::is_scalar_arithmetic< V >::value||detail::is_complex< V >::value) &&(detail::is_scalar_arithmetic< T >::value||detail::is_complex< T >::value) &&detail::is_native_op< V, BinaryOperation >::value &&detail::is_native_op< T, BinaryOperation >::value &&detail::is_plus_if_complex< T, BinaryOperation >::value &&detail::is_plus_if_complex< V, BinaryOperation >::value), T > inclusive_scan_over_group (Group g, V x, BinaryOperation binary_op, T init)
 
template<typename Group , typename V , class BinaryOperation , typename T >
std::enable_if_t<(is_group_v< std::decay_t< Group >> &&detail::is_vector_arithmetic< V >::value &&detail::is_vector_arithmetic< T >::value &&detail::is_native_op< V, BinaryOperation >::value &&detail::is_native_op< T, BinaryOperation >::value), T > inclusive_scan_over_group (Group g, V x, BinaryOperation binary_op, T init)
 
template<typename Group , typename InPtr , typename OutPtr , class BinaryOperation , typename T >
std::enable_if_t<(is_group_v< std::decay_t< Group >> &&detail::is_pointer< InPtr >::value &&detail::is_pointer< OutPtr >::value &&detail::is_arithmetic_or_complex< typename detail::remove_pointer< InPtr >::type >::value &&detail::is_arithmetic_or_complex< T >::value &&detail::is_native_op< typename detail::remove_pointer< InPtr >::type, BinaryOperation >::value &&detail::is_native_op< T, BinaryOperation >::value &&detail::is_plus_if_complex< typename detail::remove_pointer< InPtr >::type, BinaryOperation >::value &&detail::is_plus_if_complex< T, BinaryOperation >::value), OutPtr > joint_inclusive_scan (Group g, InPtr first, InPtr last, OutPtr result, BinaryOperation binary_op, T init)
 
template<typename Group , typename InPtr , typename OutPtr , class BinaryOperation >
std::enable_if_t<(is_group_v< std::decay_t< Group >> &&detail::is_pointer< InPtr >::value &&detail::is_pointer< OutPtr >::value &&detail::is_arithmetic_or_complex< typename detail::remove_pointer< InPtr >::type >::value &&detail::is_native_op< typename detail::remove_pointer< InPtr >::type, BinaryOperation >::value &&detail::is_plus_if_complex< typename detail::remove_pointer< InPtr >::type, BinaryOperation >::value), OutPtr > joint_inclusive_scan (Group g, InPtr first, InPtr last, OutPtr result, BinaryOperation binary_op)
 
template<typename Group >
std::enable_if< is_group_v< Group > >::type group_barrier (Group, memory_scope FenceScope=Group::fence_scope)
 
template<typename T , typename Group >
 __SYCL_DEPRECATED ("use sycl::ext::oneapi::group_local_memory_for_overwrite instead") std
 
template<typename T , typename Group , typename... Args>
std::enable_if_t< std::is_trivially_destructible< T >::value &&detail::is_group< Group >::value, multi_ptr< T, access::address_space::local_space, access::decorated::legacy > > __SYCL_ALWAYS_INLINE group_local_memory (Group g, Args &&...args)
 
template<int Dims>
id< Dims > this_id ()
 
class __SYCL_DEPRECATED ("interop_handler class is deprecated, use" " interop_handle instead with host-task") interop_handler
 
template<int Dims>
item< Dims > this_item ()
 
template<typename KernelName >
kernel_id get_kernel_id ()
 
std::vector< kernel_idget_kernel_ids ()
 
template<bundle_state State>
kernel_bundle< State > get_kernel_bundle (const context &Ctx, const std::vector< device > &Devs)
 A kernel bundle in state State which contains all of the kernels in the application which are compatible with at least one of the devices in Devs. More...
 
template<bundle_state State>
kernel_bundle< State > get_kernel_bundle (const context &Ctx)
 
template<bundle_state State>
kernel_bundle< State > get_kernel_bundle (const context &Ctx, const std::vector< device > &Devs, const std::vector< kernel_id > &KernelIDs)
 
template<bundle_state State>
kernel_bundle< State > get_kernel_bundle (const context &Ctx, const std::vector< kernel_id > &KernelIDs)
 
template<typename KernelName , bundle_state State>
kernel_bundle< State > get_kernel_bundle (const context &Ctx)
 
template<typename KernelName , bundle_state State>
kernel_bundle< State > get_kernel_bundle (const context &Ctx, const std::vector< device > &Devs)
 
template<bundle_state State, typename SelectorT >
kernel_bundle< State > get_kernel_bundle (const context &Ctx, const std::vector< device > &Devs, SelectorT Selector)
 A kernel bundle in state State which contains all of the device images for which the selector returns true. More...
 
template<bundle_state State, typename SelectorT >
kernel_bundle< State > get_kernel_bundle (const context &Ctx, SelectorT Selector)
 
template<bundle_state State>
bool has_kernel_bundle (const context &Ctx, const std::vector< device > &Devs)
 
template<bundle_state State>
bool has_kernel_bundle (const context &Ctx, const std::vector< device > &Devs, const std::vector< kernel_id > &KernelIDs)
 
template<bundle_state State>
bool has_kernel_bundle (const context &Ctx)
 
template<bundle_state State>
bool has_kernel_bundle (const context &Ctx, const std::vector< kernel_id > &KernelIDs)
 
template<typename KernelName , bundle_state State>
bool has_kernel_bundle (const context &Ctx)
 
template<typename KernelName , bundle_state State>
bool has_kernel_bundle (const context &Ctx, const std::vector< device > &Devs)
 
bool is_compatible (const std::vector< kernel_id > &KernelIDs, const device &Dev)
 
template<typename KernelName >
bool is_compatible (const device &Dev)
 
template<sycl::bundle_state State>
sycl::kernel_bundle< State > join (const std::vector< sycl::kernel_bundle< State >> &Bundles)
 
kernel_bundle< bundle_state::objectcompile (const kernel_bundle< bundle_state::input > &InputBundle, const std::vector< device > &Devs, const property_list &PropList={})
 
kernel_bundle< bundle_state::objectcompile (const kernel_bundle< bundle_state::input > &InputBundle, const property_list &PropList={})
 
kernel_bundle< bundle_state::executablelink (const std::vector< kernel_bundle< bundle_state::object >> &ObjectBundles, const std::vector< device > &Devs, const property_list &PropList={})
 
kernel_bundle< bundle_state::executablelink (const kernel_bundle< bundle_state::object > &ObjectBundle, const property_list &PropList={})
 
kernel_bundle< bundle_state::executablelink (const std::vector< kernel_bundle< bundle_state::object >> &ObjectBundles, const property_list &PropList={})
 
kernel_bundle< bundle_state::executablelink (const kernel_bundle< bundle_state::object > &ObjectBundle, const std::vector< device > &Devs, const property_list &PropList={})
 
kernel_bundle< bundle_state::executablebuild (const kernel_bundle< bundle_state::input > &InputBundle, const std::vector< device > &Devs, const property_list &PropList={})
 
kernel_bundle< bundle_state::executablebuild (const kernel_bundle< bundle_state::input > &InputBundle, const property_list &PropList={})
 
class __SYCL_TYPE (kernel_handler) kernel_handler
 Reading the value of a specialization constant. More...
 
template<access::address_space Space, access::decorated DecorateAddress, typename ElementType >
multi_ptr< ElementType, Space, DecorateAddress > address_space_cast (ElementType *pointer)
 
template<typename ElementType , access::address_space Space, access::decorated DecorateAddress = access::decorated::legacy, typename = std::enable_if<DecorateAddress == access::decorated::legacy>>
 __SYCL2020_DEPRECATED ("make_ptr is deprecated since SYCL 2020. Please use " "address_space_cast instead.") multi_ptr< ElementType
 
DecorateAddress make_ptr (typename multi_ptr< ElementType, Space, DecorateAddress >::pointer_t pointer)
 
DecorateAddress make_ptr (typename multi_ptr< ElementType, Space, DecorateAddress >::pointer pointer)
 
template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool operator== (const multi_ptr< ElementType, Space, DecorateAddress > &lhs, const multi_ptr< ElementType, Space, DecorateAddress > &rhs)
 
template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool operator!= (const multi_ptr< ElementType, Space, DecorateAddress > &lhs, const multi_ptr< ElementType, Space, DecorateAddress > &rhs)
 
template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool operator< (const multi_ptr< ElementType, Space, DecorateAddress > &lhs, const multi_ptr< ElementType, Space, DecorateAddress > &rhs)
 
template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool operator> (const multi_ptr< ElementType, Space, DecorateAddress > &lhs, const multi_ptr< ElementType, Space, DecorateAddress > &rhs)
 
template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool operator<= (const multi_ptr< ElementType, Space, DecorateAddress > &lhs, const multi_ptr< ElementType, Space, DecorateAddress > &rhs)
 
template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool operator>= (const multi_ptr< ElementType, Space, DecorateAddress > &lhs, const multi_ptr< ElementType, Space, DecorateAddress > &rhs)
 
template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool operator!= (const multi_ptr< ElementType, Space, DecorateAddress > &lhs, std::nullptr_t)
 
template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool operator!= (std::nullptr_t, const multi_ptr< ElementType, Space, DecorateAddress > &rhs)
 
template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool operator== (const multi_ptr< ElementType, Space, DecorateAddress > &lhs, std::nullptr_t)
 
template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool operator== (std::nullptr_t, const multi_ptr< ElementType, Space, DecorateAddress > &rhs)
 
template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool operator> (const multi_ptr< ElementType, Space, DecorateAddress > &lhs, std::nullptr_t)
 
template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool operator> (std::nullptr_t, const multi_ptr< ElementType, Space, DecorateAddress > &)
 
template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool operator< (const multi_ptr< ElementType, Space, DecorateAddress > &, std::nullptr_t)
 
template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool operator< (std::nullptr_t, const multi_ptr< ElementType, Space, DecorateAddress > &rhs)
 
template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool operator>= (const multi_ptr< ElementType, Space, DecorateAddress > &, std::nullptr_t)
 
template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool operator>= (std::nullptr_t, const multi_ptr< ElementType, Space, DecorateAddress > &rhs)
 
template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool operator<= (const multi_ptr< ElementType, Space, DecorateAddress > &lhs, std::nullptr_t)
 
template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool operator<= (std::nullptr_t, const multi_ptr< ElementType, Space, DecorateAddress > &)
 
template<int Dims>
nd_item< Dims > this_nd_item ()
 
template<typename T , typename AllocatorT , typename BinaryOperation , typename = std::enable_if_t<has_known_identity<BinaryOperation, T>::value>>
auto reduction (buffer< T, 1, AllocatorT > Var, handler &CGH, BinaryOperation, const property_list &PropList={})
 Constructs a reduction object using the given buffer Var, handler CGH, reduction operation Combiner, and optional reduction properties. More...
 
template<typename T , typename AllocatorT , typename BinaryOperation , typename = std::enable_if_t<!has_known_identity<BinaryOperation, T>::value>>
detail::reduction_impl< T, BinaryOperation, 0, 1, accessor< T, 1, access::mode::read_write, access::target::device, access::placeholder::true_t, ext::oneapi::accessor_property_list<> > > reduction (buffer< T, 1, AllocatorT >, handler &, BinaryOperation, const property_list &PropList={})
 Constructs a reduction object using the given buffer Var, handler CGH, reduction operation Combiner, and optional reduction properties. More...
 
template<typename T , typename BinaryOperation , typename = std::enable_if_t<has_known_identity<BinaryOperation, T>::value>>
auto reduction (T *Var, BinaryOperation, const property_list &PropList={})
 Constructs a reduction object using the reduction variable referenced by the given USM pointer Var, handler CGH, reduction operation Combiner, and optional reduction properties. More...
 
template<typename T , typename BinaryOperation , typename = std::enable_if_t<!has_known_identity<BinaryOperation, T>::value>>
detail::reduction_impl< T, BinaryOperation, 0, 1, T * > reduction (T *, BinaryOperation, const property_list &PropList={})
 Constructs a reduction object using the reduction variable referenced by the given USM pointer Var, handler CGH, reduction operation Combiner, and optional reduction properties. More...
 
template<typename T , typename AllocatorT , typename BinaryOperation >
auto reduction (buffer< T, 1, AllocatorT > Var, handler &CGH, const T &Identity, BinaryOperation Combiner, const property_list &PropList={})
 Constructs a reduction object using the given buffer Var, handler CGH, reduction identity value Identity, reduction operation Combiner, and optional reduction properties. More...
 
template<typename T , typename BinaryOperation >
auto reduction (T *Var, const T &Identity, BinaryOperation Combiner, const property_list &PropList={})
 Constructs a reduction object using the reduction variable referenced by the given USM pointer Var, reduction identity value Identity, binary operation Combiner, and optional reduction properties. More...
 
template<typename T , size_t Extent, typename BinaryOperation , typename = std::enable_if_t<Extent != dynamic_extent && has_known_identity<BinaryOperation, T>::value>>
auto reduction (span< T, Extent > Span, BinaryOperation, const property_list &PropList={})
 Constructs a reduction object using the reduction variable referenced by the given sycl::span Span, reduction operation Combiner, and optional reduction properties. More...
 
template<typename T , size_t Extent, typename BinaryOperation , typename = std::enable_if_t<Extent != dynamic_extent && !has_known_identity<BinaryOperation, T>::value>>
detail::reduction_impl< T, BinaryOperation, 1, Extent, T * > reduction (span< T, Extent >, BinaryOperation, const property_list &PropList={})
 Constructs a reduction object using the reduction variable referenced by the given sycl::span Span, reduction operation Combiner, and optional reduction properties. More...
 
template<typename T , size_t Extent, typename BinaryOperation , typename = std::enable_if_t<Extent != dynamic_extent>>
auto reduction (span< T, Extent > Span, const T &Identity, BinaryOperation Combiner, const property_list &PropList={})
 Constructs a reduction object using the reduction variable referenced by the given sycl::span Span, reduction identity value Identity, reduction operation Combiner, and optional reduction properties. More...
 
class __SYCL_SPECIAL_CLASS __SYCL_TYPE (sampler) sampler
 Encapsulates a configuration for sampling an image accessor. More...
 
template<typename T >
class __SYCL_TYPE (specialization_id) specialization_id
 Declaring a specialization constant. More...
 
template<typename T , typename... ArgsT>
std::unique_ptr< T > make_unique_ptr (ArgsT &&...Args)
 
__precision_manipulator__ setprecision (int Precision)
 
__width_manipulator__ setw (int Width)
 
class __SYCL_SPECIAL_CLASS __SYCL_TYPE(stream) stream const stream & operator<< (const stream &Out, const char C)
 A buffered output stream that allows outputting the values of built-in, vector and SYCL types to the console. More...
 
const stream & operator<< (const stream &Out, const char *Str)
 
const stream & operator<< (const stream &Out, const bool &RHS)
 
template<typename ValueType >
std::enable_if_t< std::is_integral< ValueType >::value, const stream & > operator<< (const stream &Out, const ValueType &RHS)
 
const stream & operator<< (const stream &Out, const float &RHS)
 
const stream & operator<< (const stream &Out, const double &RHS)
 
const stream & operator<< (const stream &Out, const half &RHS)
 
template<typename ElementType , access::address_space Space, access::decorated IsDecorated>
const stream & operator<< (const stream &Out, const multi_ptr< ElementType, Space, IsDecorated > &RHS)
 
template<typename T >
const stream & operator<< (const stream &Out, const T *RHS)
 
const stream & operator<< (const stream &Out, const __precision_manipulator__ &RHS)
 
const stream & operator<< (const stream &Out, const __width_manipulator__ &RHS)
 
const stream & operator<< (const stream &Out, const stream_manipulator RHS)
 
template<typename T , int VectorLength>
const stream & operator<< (const stream &Out, const vec< T, VectorLength > &RHS)
 
template<int Dimensions>
const stream & operator<< (const stream &Out, const id< Dimensions > &RHS)
 
template<int Dimensions>
const stream & operator<< (const stream &Out, const range< Dimensions > &RHS)
 
template<int Dimensions>
const stream & operator<< (const stream &Out, const item< Dimensions > &RHS)
 
template<int Dimensions>
const stream & operator<< (const stream &Out, const nd_range< Dimensions > &RHS)
 
template<int Dimensions>
const stream & operator<< (const stream &Out, const nd_item< Dimensions > &RHS)
 
template<int Dimensions>
const stream & operator<< (const stream &Out, const group< Dimensions > &RHS)
 
template<int Dimensions>
const stream & operator<< (const stream &Out, const h_item< Dimensions > &RHS)
 
template<typename T , typename RT = detail::EnableIfSwizzleVec<T>>
const stream & operator<< (const stream &Out, const T &RHS)
 
void * malloc_device (size_t size, const device &dev, const context &ctxt _CODELOCPARAM(&CodeLoc))
 
void * malloc_device (size_t size, const device &dev, const context &ctxt, const property_list &propList _CODELOCPARAM(&CodeLoc))
 
void * malloc_device (size_t size, const queue &q _CODELOCPARAM(&CodeLoc))
 
void * malloc_device (size_t size, const queue &q, const property_list &propList _CODELOCPARAM(&CodeLoc))
 
void * aligned_alloc_device (size_t alignment, size_t size, const device &dev, const context &ctxt _CODELOCPARAM(&CodeLoc))
 
void * aligned_alloc_device (size_t alignment, size_t size, const device &dev, const context &ctxt, const property_list &propList _CODELOCPARAM(&CodeLoc))
 
void * aligned_alloc_device (size_t alignment, size_t size, const queue &q _CODELOCPARAM(&CodeLoc))
 
void * aligned_alloc_device (size_t alignment, size_t size, const queue &q, const property_list &propList _CODELOCPARAM(&CodeLoc))
 
void free (void *ptr, const context &ctxt _CODELOCPARAM(&CodeLoc))
 
void free (void *ptr, const queue &q _CODELOCPARAM(&CodeLoc))
 
void * malloc_host (size_t size, const context &ctxt _CODELOCPARAM(&CodeLoc))
 
void * malloc_host (size_t size, const context &ctxt, const property_list &propList _CODELOCPARAM(&CodeLoc))
 
void * malloc_host (size_t size, const queue &q _CODELOCPARAM(&CodeLoc))
 
void * malloc_host (size_t size, const queue &q, const property_list &propList _CODELOCPARAM(&CodeLoc))
 
void * malloc_shared (size_t size, const device &dev, const context &ctxt _CODELOCPARAM(&CodeLoc))
 
void * malloc_shared (size_t size, const device &dev, const context &ctxt, const property_list &propList _CODELOCPARAM(&CodeLoc))
 
void * malloc_shared (size_t size, const queue &q _CODELOCPARAM(&CodeLoc))
 
void * malloc_shared (size_t size, const queue &q, const property_list &propList _CODELOCPARAM(&CodeLoc))
 
void * aligned_alloc_host (size_t alignment, size_t size, const context &ctxt _CODELOCPARAM(&CodeLoc))
 
void * aligned_alloc_host (size_t alignment, size_t size, const context &ctxt, const property_list &propList _CODELOCPARAM(&CodeLoc))
 
void * aligned_alloc_host (size_t alignment, size_t size, const queue &q _CODELOCPARAM(&CodeLoc))
 
void * aligned_alloc_host (size_t alignment, size_t size, const queue &q, const property_list &propList _CODELOCPARAM(&CodeLoc))
 
void * aligned_alloc_shared (size_t alignment, size_t size, const device &dev, const context &ctxt _CODELOCPARAM(&CodeLoc))
 
void * aligned_alloc_shared (size_t alignment, size_t size, const device &dev, const context &ctxt, const property_list &propList _CODELOCPARAM(&CodeLoc))
 
void * aligned_alloc_shared (size_t alignment, size_t size, const queue &q _CODELOCPARAM(&CodeLoc))
 
void * aligned_alloc_shared (size_t alignment, size_t size, const queue &q, const property_list &propList _CODELOCPARAM(&CodeLoc))
 
void * malloc (size_t size, const device &dev, const context &ctxt, usm::alloc kind _CODELOCPARAM(&CodeLoc))
 
void * malloc (size_t size, const device &dev, const context &ctxt, usm::alloc kind, const property_list &propList _CODELOCPARAM(&CodeLoc))
 
void * malloc (size_t size, const queue &q, usm::alloc kind _CODELOCPARAM(&CodeLoc))
 
void * malloc (size_t size, const queue &q, usm::alloc kind, const property_list &propList _CODELOCPARAM(&CodeLoc))
 
void * aligned_alloc (size_t alignment, size_t size, const device &dev, const context &ctxt, usm::alloc kind _CODELOCPARAM(&CodeLoc))
 
void * aligned_alloc (size_t alignment, size_t size, const device &dev, const context &ctxt, usm::alloc kind, const property_list &propList _CODELOCPARAM(&CodeLoc))
 
void * aligned_alloc (size_t alignment, size_t size, const queue &q, usm::alloc kind _CODELOCPARAM(&CodeLoc))
 
void * aligned_alloc (size_t alignment, size_t size, const queue &q, usm::alloc kind, const property_list &propList _CODELOCPARAM(&CodeLoc))
 
template<typename T >
T * malloc_device (size_t Count, const device &Dev, const context &Ctxt, const property_list &PropList={} _CODELOCPARAM(&CodeLoc))
 
template<typename T >
T * malloc_device (size_t Count, const queue &Q, const property_list &PropList={} _CODELOCPARAM(&CodeLoc))
 
template<typename T >
T * aligned_alloc_device (size_t Alignment, size_t Count, const device &Dev, const context &Ctxt, const property_list &PropList={} _CODELOCPARAM(&CodeLoc))
 
template<typename T >
T * aligned_alloc_device (size_t Alignment, size_t Count, const queue &Q, const property_list &PropList={} _CODELOCPARAM(&CodeLoc))
 
template<typename T >
T * malloc_host (size_t Count, const context &Ctxt, const property_list &PropList={} _CODELOCPARAM(&CodeLoc))
 
template<typename T >
T * malloc_host (size_t Count, const queue &Q, const property_list &PropList={} _CODELOCPARAM(&CodeLoc))
 
template<typename T >
T * malloc_shared (size_t Count, const device &Dev, const context &Ctxt, const property_list &PropList={} _CODELOCPARAM(&CodeLoc))
 
template<typename T >
T * malloc_shared (size_t Count, const queue &Q, const property_list &PropList={} _CODELOCPARAM(&CodeLoc))
 
template<typename T >
T * aligned_alloc_host (size_t Alignment, size_t Count, const context &Ctxt, const property_list &PropList={} _CODELOCPARAM(&CodeLoc))
 
template<typename T >
T * aligned_alloc_host (size_t Alignment, size_t Count, const queue &Q, const property_list &PropList={} _CODELOCPARAM(&CodeLoc))
 
template<typename T >
T * aligned_alloc_shared (size_t Alignment, size_t Count, const device &Dev, const context &Ctxt, const property_list &PropList={} _CODELOCPARAM(&CodeLoc))
 
template<typename T >
T * aligned_alloc_shared (size_t Alignment, size_t Count, const queue &Q, const property_list &PropList={} _CODELOCPARAM(&CodeLoc))
 
template<typename T >
T * malloc (size_t Count, const device &Dev, const context &Ctxt, usm::alloc Kind, const property_list &PropList={} _CODELOCPARAM(&CodeLoc))
 
template<typename T >
T * malloc (size_t Count, const queue &Q, usm::alloc Kind, const property_list &PropList={} _CODELOCPARAM(&CodeLoc))
 
template<typename T >
T * aligned_alloc (size_t Alignment, size_t Count, const device &Dev, const context &Ctxt, usm::alloc Kind, const property_list &PropList={} _CODELOCPARAM(&CodeLoc))
 
template<typename T >
T * aligned_alloc (size_t Alignment, size_t Count, const queue &Q, usm::alloc Kind, const property_list &PropList={} _CODELOCPARAM(&CodeLoc))
 
usm::alloc get_pointer_type (const void *ptr, const context &ctxt)
 Query the allocation type from a USM pointer. More...
 
device get_pointer_device (const void *ptr, const context &ctxt)
 Queries the device against which the pointer was allocated Throws an invalid_object_error if ptr is a host allocation. More...
 
namespace __SYCL2020_DEPRECATED ("use 'ext::oneapi' instead") ONEAPI
 
namespace __SYCL2020_DEPRECATED ("use 'ext::intel::experimental' instead") INTEL
 
void * malloc_device (size_t Size, const device &Dev, const context &Ctxt _CODELOCPARAMDEF(&CodeLoc))
 
void * malloc_device (size_t Size, const device &Dev, const context &Ctxt, const property_list &PropList _CODELOCPARAMDEF(&CodeLoc))
 
void * malloc_device (size_t Size, const queue &Q _CODELOCPARAMDEF(&CodeLoc))
 
void * malloc_device (size_t Size, const queue &Q, const property_list &PropList _CODELOCPARAMDEF(&CodeLoc))
 
void * aligned_alloc_device (size_t Alignment, size_t Size, const device &Dev, const context &Ctxt _CODELOCPARAMDEF(&CodeLoc))
 
void * aligned_alloc_device (size_t Alignment, size_t Size, const device &Dev, const context &Ctxt, const property_list &PropList _CODELOCPARAMDEF(&CodeLoc))
 
void * aligned_alloc_device (size_t Alignment, size_t Size, const queue &Q _CODELOCPARAMDEF(&CodeLoc))
 
void * aligned_alloc_device (size_t Alignment, size_t Size, const queue &Q, const property_list &PropList _CODELOCPARAMDEF(&CodeLoc))
 
void free (void *ptr, const context &Ctxt _CODELOCPARAMDEF(&CodeLoc))
 
void free (void *ptr, const queue &Q _CODELOCPARAMDEF(&CodeLoc))
 
void * malloc_host (size_t Size, const context &Ctxt _CODELOCPARAMDEF(&CodeLoc))
 
void * malloc_host (size_t Size, const context &Ctxt, const property_list &PropList _CODELOCPARAMDEF(&CodeLoc))
 
void * malloc_host (size_t Size, const queue &Q _CODELOCPARAMDEF(&CodeLoc))
 
void * malloc_host (size_t Size, const queue &Q, const property_list &PropList _CODELOCPARAMDEF(&CodeLoc))
 
void * malloc_shared (size_t Size, const device &Dev, const context &Ctxt _CODELOCPARAMDEF(&CodeLoc))
 
void * malloc_shared (size_t Size, const device &Dev, const context &Ctxt, const property_list &PropList _CODELOCPARAMDEF(&CodeLoc))
 
void * malloc_shared (size_t Size, const queue &Q _CODELOCPARAMDEF(&CodeLoc))
 
void * malloc_shared (size_t Size, const queue &Q, const property_list &PropList _CODELOCPARAMDEF(&CodeLoc))
 
void * aligned_alloc_host (size_t Alignment, size_t Size, const context &Ctxt _CODELOCPARAMDEF(&CodeLoc))
 
void * aligned_alloc_host (size_t Alignment, size_t Size, const context &Ctxt, const property_list &PropList _CODELOCPARAMDEF(&CodeLoc))
 
void * aligned_alloc_host (size_t Alignment, size_t Size, const queue &Q _CODELOCPARAMDEF(&CodeLoc))
 
void * aligned_alloc_host (size_t Alignment, size_t Size, const queue &Q, const property_list &PropList _CODELOCPARAMDEF(&CodeLoc))
 
void * aligned_alloc_shared (size_t Alignment, size_t Size, const device &Dev, const context &Ctxt _CODELOCPARAMDEF(&CodeLoc))
 
void * aligned_alloc_shared (size_t Alignment, size_t Size, const device &Dev, const context &Ctxt, const property_list &PropList _CODELOCPARAMDEF(&CodeLoc))
 
void * aligned_alloc_shared (size_t Alignment, size_t Size, const queue &Q _CODELOCPARAMDEF(&CodeLoc))
 
void * aligned_alloc_shared (size_t Alignment, size_t Size, const queue &Q, const property_list &PropList _CODELOCPARAMDEF(&CodeLoc))
 
void * malloc (size_t Size, const device &Dev, const context &Ctxt, alloc Kind, const property_list &PropList _CODELOCPARAMDEF(&CodeLoc))
 
void * malloc (size_t Size, const device &Dev, const context &Ctxt, alloc Kind _CODELOCPARAMDEF(&CodeLoc))
 
void * malloc (size_t Size, const queue &Q, alloc Kind _CODELOCPARAMDEF(&CodeLoc))
 
void * malloc (size_t Size, const queue &Q, alloc Kind, const property_list &PropList _CODELOCPARAMDEF(&CodeLoc))
 
void * aligned_alloc (size_t Alignment, size_t Size, const device &Dev, const context &Ctxt, alloc Kind _CODELOCPARAMDEF(&CodeLoc))
 
void * aligned_alloc (size_t Alignment, size_t Size, const device &Dev, const context &Ctxt, alloc Kind, const property_list &PropList _CODELOCPARAMDEF(&CodeLoc))
 
void * aligned_alloc (size_t Alignment, size_t Size, const queue &Q, alloc Kind _CODELOCPARAMDEF(&CodeLoc))
 
void * aligned_alloc (size_t Alignment, size_t Size, const queue &Q, alloc Kind, const property_list &PropList _CODELOCPARAMDEF(&CodeLoc))
 
template std::vector< devicedevice::create_sub_devices< info::partition_property::partition_equally > (size_t ComputeUnits) const
 
template std::vector< devicedevice::create_sub_devices< info::partition_property::partition_by_counts > (const std::vector< size_t > &Counts) const
 
template std::vector< devicedevice::create_sub_devices< info::partition_property::partition_by_affinity_domain > (info::partition_affinity_domain AffinityDomain) const
 
template<>
device device::get_info< info::device::parent_device > () const
 
static void traceDeviceSelector (const std::string &DeviceType)
 default_selector_v Devices of different kinds are prioritized in the following order: More...
 
static void addArgsForGlobalAccessor (detail::Requirement *AccImpl, size_t Index, size_t &IndexShift, int Size, bool IsKernelCreatedFromSource, size_t GlobalSize, std::vector< detail::ArgDesc > &Args, bool isESIMD)
 
template uint32_t kernel::get_info< info::kernel_device_specific::max_sub_group_size > (const device &, const sycl::range< 3 > &) const
 
template bool queue::has_property< property::queue::enable_profiling > () const noexcept
 
template property::queue::enable_profiling queue::get_property< property::queue::enable_profiling > () const
 
template bool queue::has_property< property::queue::in_order > () const
 
template property::queue::in_order queue::get_property< property::queue::in_order > () const
 
static size_t CheckMaxStatementSize (const size_t &MaxStatementSize)
 

Variables

class __SYCL_EBO __SYCL_SPECIAL_CLASS __SYCL_TYPE(local_accessor) local_accessor class __SYCL_EBO __SYCL_SPECIAL_CLASS Dimensions
 
class __SYCL_EBO __SYCL_SPECIAL_CLASS __SYCL_TYPE(local_accessor) local_accessor class __SYCL_EBO __SYCL_SPECIAL_CLASS AccessMode
 
class __SYCL_EBO __SYCL_SPECIAL_CLASS __SYCL_TYPE(local_accessor) local_accessor class __SYCL_EBO __SYCL_SPECIAL_CLASS IsPlaceholder
 
template<class T >
constexpr bool is_group_v
 
template<typename BinaryOperation , typename AccumulatorT >
constexpr bool has_known_identity_v
 
template<typename BinaryOperation , typename AccumulatorT >
constexpr AccumulatorT known_identity_v
 
 Space
 
constexpr property::no_init no_init
 
constexpr property::noinit noinit
 
template<typename propertyT >
constexpr bool is_property_v = is_property<propertyT>::value
 
template<typename propertyT , typename syclObjectT >
constexpr bool is_property_of_v
 
constexpr stream_manipulator dec = stream_manipulator::dec
 
constexpr stream_manipulator hex = stream_manipulator::hex
 
constexpr stream_manipulator oct = stream_manipulator::oct
 
constexpr stream_manipulator noshowbase = stream_manipulator::noshowbase
 
constexpr stream_manipulator showbase = stream_manipulator::showbase
 
constexpr stream_manipulator noshowpos = stream_manipulator::noshowpos
 
constexpr stream_manipulator showpos = stream_manipulator::showpos
 
constexpr stream_manipulator endl = stream_manipulator::endl
 
constexpr stream_manipulator flush = stream_manipulator::flush
 
constexpr stream_manipulator fixed = stream_manipulator::fixed
 
constexpr stream_manipulator scientific = stream_manipulator::scientific
 
constexpr stream_manipulator hexfloat = stream_manipulator::hexfloat
 
constexpr stream_manipulator defaultfloat = stream_manipulator::defaultfloat
 
constexpr size_t MaxNumAdditionalArgs = 13
 
static constexpr size_t MAX_STATEMENT_SIZE
 

Typedef Documentation

◆ access_mode

Definition at line 62 of file access.hpp.

◆ alloc

using sycl::_V1::alloc = typedef sycl::usm::alloc

Definition at line 44 of file usm_impl.cpp.

◆ async_handler

using sycl::_V1::async_handler = typedef std::function<void(sycl::exception_list)>

Definition at line 54 of file exception_list.hpp.

◆ backend_input_t

template<backend Backend, typename SyclType >
using sycl::_V1::backend_input_t = typedef typename backend_traits<Backend>::template input_type<SYCLObjectT>

Definition at line 67 of file backend.hpp.

◆ backend_return_t

template<backend Backend, typename SyclType >
using sycl::_V1::backend_return_t = typedef typename backend_traits<Backend>::template return_type<SYCLObjectT>

Definition at line 71 of file backend.hpp.

◆ bit_and

template<typename T = void>
using sycl::_V1::bit_and = typedef std::bit_and<T>

Definition at line 20 of file functional.hpp.

◆ bit_or

template<typename T = void>
using sycl::_V1::bit_or = typedef std::bit_or<T>

Definition at line 21 of file functional.hpp.

◆ bit_xor

template<typename T = void>
using sycl::_V1::bit_xor = typedef std::bit_xor<T>

Definition at line 22 of file functional.hpp.

◆ buffer_allocator

template<typename DataT >
using sycl::_V1::buffer_allocator = typedef detail::sycl_memory_object_allocator<DataT>

Definition at line 31 of file buffer.hpp.

◆ byte

using sycl::_V1::byte = typedef unsigned char

Definition at line 63 of file image.hpp.

◆ cl_bool

using sycl::_V1::cl_bool = typedef bool

Definition at line 78 of file aliases.hpp.

◆ cl_char

using sycl::_V1::cl_char = typedef std::int8_t

Definition at line 79 of file aliases.hpp.

◆ cl_double

using sycl::_V1::cl_double = typedef double

Definition at line 89 of file aliases.hpp.

◆ cl_float

using sycl::_V1::cl_float = typedef float

Definition at line 88 of file aliases.hpp.

◆ cl_half

using sycl::_V1::cl_half = typedef half

Definition at line 87 of file aliases.hpp.

◆ cl_int

using sycl::_V1::cl_int = typedef std::int32_t

Definition at line 83 of file aliases.hpp.

◆ cl_long

using sycl::_V1::cl_long = typedef std::int64_t

Definition at line 85 of file aliases.hpp.

◆ cl_short

using sycl::_V1::cl_short = typedef std::int16_t

Definition at line 81 of file aliases.hpp.

◆ cl_uchar

using sycl::_V1::cl_uchar = typedef std::uint8_t

Definition at line 80 of file aliases.hpp.

◆ cl_uint

using sycl::_V1::cl_uint = typedef std::uint32_t

Definition at line 84 of file aliases.hpp.

◆ cl_ulong

using sycl::_V1::cl_ulong = typedef std::uint64_t

Definition at line 86 of file aliases.hpp.

◆ cl_ushort

using sycl::_V1::cl_ushort = typedef std::uint16_t

Definition at line 82 of file aliases.hpp.

◆ constant_ptr

template<typename ElementType >
using sycl::_V1::constant_ptr = typedef multi_ptr<ElementType, access::address_space::constant_space, access::decorated::legacy>

Definition at line 48 of file pointers.hpp.

◆ ContextImplPtr

using sycl::_V1::ContextImplPtr = typedef std::shared_ptr<sycl::detail::context_impl>

Definition at line 19 of file helpers.cpp.

◆ decorated_global_ptr

template<typename ElementType >
using sycl::_V1::decorated_global_ptr = typedef multi_ptr<ElementType, access::address_space::global_space, access::decorated::yes>

Definition at line 79 of file pointers.hpp.

◆ decorated_local_ptr

template<typename ElementType >
using sycl::_V1::decorated_local_ptr = typedef multi_ptr<ElementType, access::address_space::local_space, access::decorated::yes>

Definition at line 84 of file pointers.hpp.

◆ decorated_private_ptr

template<typename ElementType >
using sycl::_V1::decorated_private_ptr = typedef multi_ptr<ElementType, access::address_space::private_space, access::decorated::yes>

Definition at line 89 of file pointers.hpp.

◆ device_ptr

template<typename ElementType , access::decorated IsDecorated = access::decorated::legacy>
using sycl::_V1::device_ptr = typedef multi_ptr<ElementType, access::address_space::ext_intel_global_device_space, IsDecorated>

Definition at line 32 of file pointers.hpp.

◆ errc_for

template<backend B>
using sycl::_V1::errc_for = typedef typename backend_traits<B>::errc

Definition at line 46 of file exception.hpp.

◆ generic_ptr

template<typename ElementType , access::decorated IsDecorated = access::decorated::legacy>
using sycl::_V1::generic_ptr = typedef multi_ptr<ElementType, access::address_space::generic_space, IsDecorated>

Definition at line 22 of file pointers.hpp.

◆ global_ptr

template<typename ElementType , access::decorated IsDecorated = access::decorated::legacy>
using sycl::_V1::global_ptr = typedef multi_ptr<ElementType, access::address_space::global_space, IsDecorated>

Definition at line 27 of file pointers.hpp.

◆ half

Definition at line 77 of file aliases.hpp.

◆ host_ptr

template<typename ElementType , access::decorated IsDecorated = access::decorated::legacy>
using sycl::_V1::host_ptr = typedef multi_ptr<ElementType, access::address_space::ext_intel_global_host_space, IsDecorated>

Definition at line 38 of file pointers.hpp.

◆ image_allocator

Definition at line 65 of file image.hpp.

◆ instead

using sycl::_V1::instead = typedef std::uint8_t

Definition at line 69 of file aliases.hpp.

◆ local_ptr

template<typename ElementType , access::decorated IsDecorated = access::decorated::legacy>
using sycl::_V1::local_ptr = typedef multi_ptr<ElementType, access::address_space::local_space, IsDecorated>

Definition at line 44 of file pointers.hpp.

◆ logical_and

template<typename T = void>
using sycl::_V1::logical_and = typedef std::logical_and<T>

Definition at line 23 of file functional.hpp.

◆ logical_or

template<typename T = void>
using sycl::_V1::logical_or = typedef std::logical_or<T>

Definition at line 24 of file functional.hpp.

◆ longlong

using sycl::_V1::longlong = typedef long long

Definition at line 75 of file aliases.hpp.

◆ multiplies

template<typename T = void>
using sycl::_V1::multiplies = typedef std::multiplies<T>

Definition at line 19 of file functional.hpp.

◆ pipe

template<class name , class dataT , int32_t min_capacity = 0>
using sycl::_V1::pipe = typedef ext::intel::pipe<name, dataT, min_capacity>

Definition at line 16 of file pipes.hpp.

◆ plus

template<typename T = void>
using sycl::_V1::plus = typedef std::plus<T>

Definition at line 18 of file functional.hpp.

◆ private_ptr

template<typename ElementType , access::decorated IsDecorated = access::decorated::legacy>
using sycl::_V1::private_ptr = typedef multi_ptr<ElementType, access::address_space::private_space, IsDecorated>

Definition at line 54 of file pointers.hpp.

◆ raw_global_ptr

template<typename ElementType >
using sycl::_V1::raw_global_ptr = typedef multi_ptr<ElementType, access::address_space::global_space, access::decorated::no>

Definition at line 62 of file pointers.hpp.

◆ raw_local_ptr

template<typename ElementType >
using sycl::_V1::raw_local_ptr = typedef multi_ptr<ElementType, access::address_space::local_space, access::decorated::no>

Definition at line 67 of file pointers.hpp.

◆ raw_private_ptr

template<typename ElementType >
using sycl::_V1::raw_private_ptr = typedef multi_ptr<ElementType, access::address_space::private_space, access::decorated::no>

Definition at line 71 of file pointers.hpp.

◆ remove_decoration_t

template<typename T >
using sycl::_V1::remove_decoration_t = typedef typename remove_decoration<T>::type

Definition at line 321 of file access.hpp.

◆ schar

using sycl::_V1::schar = typedef signed char

Definition at line 70 of file aliases.hpp.

◆ uchar

using sycl::_V1::uchar = typedef unsigned char

Definition at line 71 of file aliases.hpp.

◆ uint

using sycl::_V1::uint = typedef unsigned int

Definition at line 73 of file aliases.hpp.

◆ ulong

using sycl::_V1::ulong = typedef unsigned long

Definition at line 74 of file aliases.hpp.

◆ ulonglong

using sycl::_V1::ulonglong = typedef unsigned long long

Definition at line 76 of file aliases.hpp.

◆ ushort

using sycl::_V1::ushort = typedef unsigned short

Definition at line 72 of file aliases.hpp.

◆ vec_data

template<typename T >
using sycl::_V1::vec_data = typedef detail::vec_helper<T>

Definition at line 528 of file types.hpp.

◆ vec_data_t

template<typename T >
using sycl::_V1::vec_data_t = typedef typename detail::vec_helper<T>::RetType

Definition at line 531 of file types.hpp.

Enumeration Type Documentation

◆ addressing_mode

enum sycl::_V1::addressing_mode : unsigned int
strong
Enumerator
mirrored_repeat 
repeat 
clamp_to_edge 
clamp 
none 

Definition at line 20 of file sampler.hpp.

◆ backend

enum sycl::_V1::backend : char
strong
Enumerator
__SYCL2020_DEPRECATED 
opencl 
ext_oneapi_level_zero 
__SYCL2020_DEPRECATED 
ext_oneapi_cuda 
__SYCL2020_DEPRECATED 
all 
ext_intel_esimd_emulator 
__SYCL2020_DEPRECATED 
ext_oneapi_hip 
__SYCL2020_DEPRECATED 

Definition at line 21 of file backend_types.hpp.

◆ bundle_state

enum sycl::_V1::bundle_state : char
strong
Enumerator
input 
object 
executable 

Definition at line 14 of file kernel_bundle_enums.hpp.

◆ coordinate_normalization_mode

enum sycl::_V1::coordinate_normalization_mode : unsigned int
strong
Enumerator
normalized 
unnormalized 

Definition at line 33 of file sampler.hpp.

◆ errc

enum sycl::_V1::errc : unsigned int
strong
Enumerator
success 
runtime 
kernel 
accessor 
nd_range 
event 
kernel_argument 
build 
invalid 
memory_allocation 
platform 
profiling 
feature_not_supported 
kernel_not_supported 
backend_mismatch 

Definition at line 28 of file exception.hpp.

◆ filtering_mode

enum sycl::_V1::filtering_mode : unsigned int
strong
Enumerator
nearest 
linear 

Definition at line 28 of file sampler.hpp.

◆ image_channel_order

enum sycl::_V1::image_channel_order : unsigned int
strong
Enumerator
rx 
rg 
rgx 
ra 
rgb 
rgbx 
rgba 
argb 
bgra 
intensity 
luminance 
abgr 
ext_oneapi_srgba 

Definition at line 27 of file image.hpp.

◆ image_channel_type

enum sycl::_V1::image_channel_type : unsigned int
strong
Enumerator
snorm_int8 
snorm_int16 
unorm_int8 
unorm_int16 
unorm_short_565 
unorm_short_555 
unorm_int_101010 
signed_int8 
signed_int16 
signed_int32 
unsigned_int8 
unsigned_int16 
unsigned_int32 
fp16 
fp32 

Definition at line 45 of file image.hpp.

◆ memory_order

enum sycl::_V1::memory_order : int
strong
Enumerator
relaxed 
acquire 
__consume_unsupported 
release 
acq_rel 
seq_cst 

Definition at line 16 of file memory_enums.hpp.

◆ memory_scope

enum sycl::_V1::memory_scope : int
strong
Enumerator
work_item 
sub_group 
work_group 
device 
system 

Definition at line 26 of file memory_enums.hpp.

◆ rounding_mode

Enumerator
automatic 
rte 
rtz 
rtp 
rtn 

Definition at line 71 of file types.hpp.

◆ stream_manipulator

Enumerator
dec 
hex 
oct 
noshowbase 
showbase 
noshowpos 
showpos 
endl 
flush 
fixed 
scientific 
hexfloat 
defaultfloat 

Definition at line 664 of file stream.hpp.

Function Documentation

◆ __SYCL2020_DEPRECATED() [1/5]

template<typename ElementType , access::address_space Space, access::decorated DecorateAddress = access::decorated::legacy, typename = std::enable_if<DecorateAddress == access::decorated::legacy>>
sycl::_V1::__SYCL2020_DEPRECATED ( "make_ptr is deprecated since SYCL 2020. Please use " "address_space_cast instead."  )

References __SYCL2020_DEPRECATED.

◆ __SYCL2020_DEPRECATED() [2/5]

template<typename T , access::address_space addressSpace = access::address_space::global_space>
class sycl::_V1::__SYCL2020_DEPRECATED ( "sycl::atomic is deprecated since SYCL 2020"  )

Definition at line 84 of file atomic.hpp.

◆ __SYCL2020_DEPRECATED() [3/5]

namespace sycl::_V1::__SYCL2020_DEPRECATED ( "use 'ext::intel::experimental' instead )

Definition at line 1 of file online_compiler.cpp.

References __SYCL_INLINE_VER_NAMESPACE.

◆ __SYCL2020_DEPRECATED() [4/5]

namespace sycl::_V1::__SYCL2020_DEPRECATED ( "use 'ext::oneapi' instead )

Definition at line 1 of file filter_selector_impl.cpp.

References __SYCL_INLINE_VER_NAMESPACE.

◆ __SYCL2020_DEPRECATED() [5/5]

namespace sycl::_V1::__SYCL2020_DEPRECATED ( "use 'ext::oneapi::level_zero' instead )

Definition at line 195 of file level_zero.hpp.

◆ __SYCL_DEPRECATED() [1/2]

class sycl::_V1::__SYCL_DEPRECATED ( "interop_handler class is  deprecated,
use" " interop_handle instead with host-task"   
)

◆ __SYCL_DEPRECATED() [2/2]

template<typename T , typename Group >
sycl::_V1::__SYCL_DEPRECATED ( "use sycl::ext::oneapi::group_local_memory_for_overwrite instead )

Definition at line 18 of file group_local_memory.hpp.

References __SYCL_DEPRECATED.

◆ __SYCL_TYPE() [1/3]

template<typename DataT , int Dimensions, access::mode AccessMode, access::placeholder IsPlaceholder>
class __SYCL_EBO __SYCL_SPECIAL_CLASS sycl::_V1::__SYCL_TYPE ( accessor  )

Image array accessor.

Available only when accessTarget == access::target::image_array and dimensions < 3.

See also
image

References AccessMode, sycl::_V1::detail::associateWithHandler(), Dimensions, and IsPlaceholder.

◆ __SYCL_TYPE() [2/3]

enum sycl::_V1::__SYCL_TYPE ( aspect  )
strong

Definition at line 1 of file aspects.hpp.

References __SYCL_INLINE_VER_NAMESPACE.

◆ __SYCL_TYPE() [3/3]

template<typename T , int Dimensions = 1>
class sycl::_V1::__SYCL_TYPE ( private_memory  )

Definition at line 1 of file group.hpp.

References __SYCL_INLINE_VER_NAMESPACE.

◆ accelerator_selector_v()

◆ addArgsForGlobalAccessor()

static void sycl::_V1::addArgsForGlobalAccessor ( detail::Requirement AccImpl,
size_t  Index,
size_t &  IndexShift,
int  Size,
bool  IsKernelCreatedFromSource,
size_t  GlobalSize,
std::vector< detail::ArgDesc > &  Args,
bool  isESIMD 
)
static

◆ address_space_cast()

template<access::address_space Space, access::decorated DecorateAddress, typename ElementType >
multi_ptr<ElementType, Space, DecorateAddress> sycl::_V1::address_space_cast ( ElementType *  pointer)

◆ aligned_alloc() [1/10]

template<typename T >
T* sycl::_V1::aligned_alloc ( size_t  Alignment,
size_t  Count,
const device Dev,
const context Ctxt,
usm::alloc  Kind,
const property_list PropList = {} _CODELOCPARAM(&CodeLoc) 
)

Definition at line 261 of file usm.hpp.

◆ aligned_alloc() [2/10]

template<typename T >
T* sycl::_V1::aligned_alloc ( size_t  Alignment,
size_t  Count,
const queue Q,
usm::alloc  Kind,
const property_list PropList = {} _CODELOCPARAM(&CodeLoc) 
)

Definition at line 272 of file usm.hpp.

◆ aligned_alloc() [3/10]

void* sycl::_V1::aligned_alloc ( size_t  Alignment,
size_t  Size,
const device Dev,
const context Ctxt,
alloc Kind _CODELOCPARAMDEF CodeLoc 
)

◆ aligned_alloc() [4/10]

void* sycl::_V1::aligned_alloc ( size_t  Alignment,
size_t  Size,
const device Dev,
const context Ctxt,
alloc  Kind,
const property_list &PropList _CODELOCPARAMDEF CodeLoc 
)

◆ aligned_alloc() [5/10]

void* sycl::_V1::aligned_alloc ( size_t  alignment,
size_t  size,
const device dev,
const context ctxt,
usm::alloc kind _CODELOCPARAM CodeLoc 
)

◆ aligned_alloc() [6/10]

void* sycl::_V1::aligned_alloc ( size_t  alignment,
size_t  size,
const device dev,
const context ctxt,
usm::alloc  kind,
const property_list &propList _CODELOCPARAM CodeLoc 
)

◆ aligned_alloc() [7/10]

void* sycl::_V1::aligned_alloc ( size_t  Alignment,
size_t  Size,
const queue Q,
alloc Kind _CODELOCPARAMDEF CodeLoc 
)

◆ aligned_alloc() [8/10]

void* sycl::_V1::aligned_alloc ( size_t  Alignment,
size_t  Size,
const queue Q,
alloc  Kind,
const property_list &PropList _CODELOCPARAMDEF CodeLoc 
)

◆ aligned_alloc() [9/10]

void* sycl::_V1::aligned_alloc ( size_t  alignment,
size_t  size,
const queue q,
usm::alloc kind _CODELOCPARAM CodeLoc 
)

◆ aligned_alloc() [10/10]

void* sycl::_V1::aligned_alloc ( size_t  alignment,
size_t  size,
const queue q,
usm::alloc  kind,
const property_list &propList _CODELOCPARAM CodeLoc 
)

◆ aligned_alloc_device() [1/10]

template<typename T >
T* sycl::_V1::aligned_alloc_device ( size_t  Alignment,
size_t  Count,
const device Dev,
const context Ctxt,
const property_list PropList = {} _CODELOCPARAM(&CodeLoc) 
)

Definition at line 151 of file usm.hpp.

◆ aligned_alloc_device() [2/10]

template<typename T >
T* sycl::_V1::aligned_alloc_device ( size_t  Alignment,
size_t  Count,
const queue Q,
const property_list PropList = {} _CODELOCPARAM(&CodeLoc) 
)

Definition at line 161 of file usm.hpp.

◆ aligned_alloc_device() [3/10]

void* sycl::_V1::aligned_alloc_device ( size_t  alignment,
size_t  size,
const device dev,
const context &ctxt _CODELOCPARAM CodeLoc 
)

◆ aligned_alloc_device() [4/10]

void* sycl::_V1::aligned_alloc_device ( size_t  Alignment,
size_t  Size,
const device Dev,
const context &Ctxt _CODELOCPARAMDEF CodeLoc 
)

Definition at line 268 of file usm_impl.cpp.

References _CODELOCARG, and sycl::_V1::detail::usm::alignedAlloc().

◆ aligned_alloc_device() [5/10]

void* sycl::_V1::aligned_alloc_device ( size_t  alignment,
size_t  size,
const device dev,
const context ctxt,
const property_list &propList _CODELOCPARAM CodeLoc 
)

◆ aligned_alloc_device() [6/10]

void* sycl::_V1::aligned_alloc_device ( size_t  Alignment,
size_t  Size,
const device Dev,
const context Ctxt,
const property_list &PropList _CODELOCPARAMDEF CodeLoc 
)

Definition at line 276 of file usm_impl.cpp.

References _CODELOCARG, and sycl::_V1::detail::usm::alignedAlloc().

◆ aligned_alloc_device() [7/10]

void* sycl::_V1::aligned_alloc_device ( size_t  alignment,
size_t  size,
const queue &q _CODELOCPARAM CodeLoc 
)

◆ aligned_alloc_device() [8/10]

void* sycl::_V1::aligned_alloc_device ( size_t  Alignment,
size_t  Size,
const queue &Q _CODELOCPARAMDEF CodeLoc 
)

◆ aligned_alloc_device() [9/10]

void* sycl::_V1::aligned_alloc_device ( size_t  alignment,
size_t  size,
const queue q,
const property_list &propList _CODELOCPARAM CodeLoc 
)

◆ aligned_alloc_device() [10/10]

void* sycl::_V1::aligned_alloc_device ( size_t  Alignment,
size_t  Size,
const queue Q,
const property_list &PropList _CODELOCPARAMDEF CodeLoc 
)

◆ aligned_alloc_host() [1/10]

template<typename T >
T* sycl::_V1::aligned_alloc_host ( size_t  Alignment,
size_t  Count,
const context Ctxt,
const property_list PropList = {} _CODELOCPARAM(&CodeLoc) 
)

Definition at line 205 of file usm.hpp.

◆ aligned_alloc_host() [2/10]

template<typename T >
T* sycl::_V1::aligned_alloc_host ( size_t  Alignment,
size_t  Count,
const queue Q,
const property_list PropList = {} _CODELOCPARAM(&CodeLoc) 
)

Definition at line 215 of file usm.hpp.

◆ aligned_alloc_host() [3/10]

void* sycl::_V1::aligned_alloc_host ( size_t  alignment,
size_t  size,
const context &ctxt _CODELOCPARAM CodeLoc 
)

◆ aligned_alloc_host() [4/10]

void* sycl::_V1::aligned_alloc_host ( size_t  Alignment,
size_t  Size,
const context &Ctxt _CODELOCPARAMDEF CodeLoc 
)

Definition at line 364 of file usm_impl.cpp.

References _CODELOCARG, and sycl::_V1::detail::usm::alignedAllocHost().

◆ aligned_alloc_host() [5/10]

void* sycl::_V1::aligned_alloc_host ( size_t  alignment,
size_t  size,
const context ctxt,
const property_list &propList _CODELOCPARAM CodeLoc 
)

◆ aligned_alloc_host() [6/10]

void* sycl::_V1::aligned_alloc_host ( size_t  Alignment,
size_t  Size,
const context Ctxt,
const property_list &PropList _CODELOCPARAMDEF CodeLoc 
)

Definition at line 372 of file usm_impl.cpp.

References _CODELOCARG, and sycl::_V1::detail::usm::alignedAllocHost().

◆ aligned_alloc_host() [7/10]

void* sycl::_V1::aligned_alloc_host ( size_t  alignment,
size_t  size,
const queue &q _CODELOCPARAM CodeLoc 
)

◆ aligned_alloc_host() [8/10]

void* sycl::_V1::aligned_alloc_host ( size_t  Alignment,
size_t  Size,
const queue &Q _CODELOCPARAMDEF CodeLoc 
)

◆ aligned_alloc_host() [9/10]

void* sycl::_V1::aligned_alloc_host ( size_t  alignment,
size_t  size,
const queue q,
const property_list &propList _CODELOCPARAM CodeLoc 
)

◆ aligned_alloc_host() [10/10]

void* sycl::_V1::aligned_alloc_host ( size_t  Alignment,
size_t  Size,
const queue Q,
const property_list &PropList _CODELOCPARAMDEF CodeLoc 
)

◆ aligned_alloc_shared() [1/10]

template<typename T >
T* sycl::_V1::aligned_alloc_shared ( size_t  Alignment,
size_t  Count,
const device Dev,
const context Ctxt,
const property_list PropList = {} _CODELOCPARAM(&CodeLoc) 
)

Definition at line 224 of file usm.hpp.

◆ aligned_alloc_shared() [2/10]

template<typename T >
T* sycl::_V1::aligned_alloc_shared ( size_t  Alignment,
size_t  Count,
const queue Q,
const property_list PropList = {} _CODELOCPARAM(&CodeLoc) 
)

Definition at line 234 of file usm.hpp.

◆ aligned_alloc_shared() [3/10]

void* sycl::_V1::aligned_alloc_shared ( size_t  alignment,
size_t  size,
const device dev,
const context &ctxt _CODELOCPARAM CodeLoc 
)

◆ aligned_alloc_shared() [4/10]

void* sycl::_V1::aligned_alloc_shared ( size_t  Alignment,
size_t  Size,
const device Dev,
const context &Ctxt _CODELOCPARAMDEF CodeLoc 
)

Definition at line 394 of file usm_impl.cpp.

References _CODELOCARG, and sycl::_V1::detail::usm::alignedAlloc().

◆ aligned_alloc_shared() [5/10]

void* sycl::_V1::aligned_alloc_shared ( size_t  alignment,
size_t  size,
const device dev,
const context ctxt,
const property_list &propList _CODELOCPARAM CodeLoc 
)

◆ aligned_alloc_shared() [6/10]

void* sycl::_V1::aligned_alloc_shared ( size_t  Alignment,
size_t  Size,
const device Dev,
const context Ctxt,
const property_list &PropList _CODELOCPARAMDEF CodeLoc 
)

Definition at line 402 of file usm_impl.cpp.

References _CODELOCARG, and sycl::_V1::detail::usm::alignedAlloc().

◆ aligned_alloc_shared() [7/10]

void* sycl::_V1::aligned_alloc_shared ( size_t  alignment,
size_t  size,
const queue &q _CODELOCPARAM CodeLoc 
)

◆ aligned_alloc_shared() [8/10]

void* sycl::_V1::aligned_alloc_shared ( size_t  Alignment,
size_t  Size,
const queue &Q _CODELOCPARAMDEF CodeLoc 
)

◆ aligned_alloc_shared() [9/10]

void* sycl::_V1::aligned_alloc_shared ( size_t  alignment,
size_t  size,
const queue q,
const property_list &propList _CODELOCPARAM CodeLoc 
)

◆ aligned_alloc_shared() [10/10]

void* sycl::_V1::aligned_alloc_shared ( size_t  Alignment,
size_t  Size,
const queue Q,
const property_list &PropList _CODELOCPARAMDEF CodeLoc 
)

◆ all_of_group() [1/2]

template<typename Group , typename T , class Predicate >
std::enable_if_t<is_group_v<std::decay_t<Group> >, bool> sycl::_V1::all_of_group ( Group  g,
x,
Predicate  pred 
)

◆ all_of_group() [2/2]

template<typename Group >
std::enable_if_t<is_group_v<std::decay_t<Group> >, bool> sycl::_V1::all_of_group ( Group  ,
bool  pred 
)

Definition at line 395 of file group_algorithm.hpp.

◆ any_of_group() [1/2]

template<typename Group , typename T , class Predicate >
std::enable_if_t<is_group_v<Group>, bool> sycl::_V1::any_of_group ( Group  g,
x,
Predicate  pred 
)

◆ any_of_group() [2/2]

template<typename Group >
std::enable_if_t<is_group_v<std::decay_t<Group> >, bool> sycl::_V1::any_of_group ( Group  ,
bool  pred 
)

Definition at line 356 of file group_algorithm.hpp.

◆ aspect_selector() [1/3]

template<aspect... AspectList>
detail::DSelectorInvocableType sycl::_V1::aspect_selector ( )

Definition at line 170 of file device_selector.hpp.

Referenced by aspect_selector().

◆ aspect_selector() [2/3]

template<typename... AspectListT>
detail::DSelectorInvocableType sycl::_V1::aspect_selector ( AspectListT...  AspectList)

◆ aspect_selector() [3/3]

detail::DSelectorInvocableType sycl::_V1::aspect_selector ( const std::vector< aspect > &  RequireList,
const std::vector< aspect > &  DenyList = {} 
)

◆ atomic_compare_exchange_strong()

template<typename T , access::address_space addressSpace>
bool sycl::_V1::atomic_compare_exchange_strong ( atomic< T, addressSpace >  Object,
T &  Expected,
Desired,
memory_order  SuccessOrder = memory_order::relaxed,
memory_order  FailOrder = memory_order::relaxed 
)

Definition at line 356 of file atomic.hpp.

◆ atomic_exchange()

template<typename T , access::address_space addressSpace>
T sycl::_V1::atomic_exchange ( atomic< T, addressSpace >  Object,
Operand,
memory_order  MemoryOrder = memory_order::relaxed 
)

Definition at line 350 of file atomic.hpp.

◆ atomic_fence()

static void sycl::_V1::atomic_fence ( memory_order  order,
memory_scope  scope 
)
inlinestatic

◆ atomic_fetch_add()

template<typename T , access::address_space addressSpace>
T sycl::_V1::atomic_fetch_add ( atomic< T, addressSpace >  Object,
Operand,
memory_order  MemoryOrder = memory_order::relaxed 
)

Definition at line 365 of file atomic.hpp.

◆ atomic_fetch_and()

template<typename T , access::address_space addressSpace>
T sycl::_V1::atomic_fetch_and ( atomic< T, addressSpace >  Object,
Operand,
memory_order  MemoryOrder = memory_order::relaxed 
)

Definition at line 377 of file atomic.hpp.

◆ atomic_fetch_max()

template<typename T , access::address_space addressSpace>
T sycl::_V1::atomic_fetch_max ( atomic< T, addressSpace >  Object,
Operand,
memory_order  MemoryOrder = memory_order::relaxed 
)

Definition at line 401 of file atomic.hpp.

◆ atomic_fetch_min()

template<typename T , access::address_space addressSpace>
T sycl::_V1::atomic_fetch_min ( atomic< T, addressSpace >  Object,
Operand,
memory_order  MemoryOrder = memory_order::relaxed 
)

Definition at line 395 of file atomic.hpp.

◆ atomic_fetch_or()

template<typename T , access::address_space addressSpace>
T sycl::_V1::atomic_fetch_or ( atomic< T, addressSpace >  Object,
Operand,
memory_order  MemoryOrder = memory_order::relaxed 
)

Definition at line 383 of file atomic.hpp.

◆ atomic_fetch_sub()

template<typename T , access::address_space addressSpace>
T sycl::_V1::atomic_fetch_sub ( atomic< T, addressSpace >  Object,
Operand,
memory_order  MemoryOrder = memory_order::relaxed 
)

Definition at line 371 of file atomic.hpp.

◆ atomic_fetch_xor()

template<typename T , access::address_space addressSpace>
T sycl::_V1::atomic_fetch_xor ( atomic< T, addressSpace >  Object,
Operand,
memory_order  MemoryOrder = memory_order::relaxed 
)

Definition at line 389 of file atomic.hpp.

◆ atomic_load()

template<typename T , access::address_space addressSpace>
T sycl::_V1::atomic_load ( atomic< T, addressSpace >  Object,
memory_order  MemoryOrder = memory_order::relaxed 
)

Definition at line 344 of file atomic.hpp.

◆ atomic_store()

template<typename T , access::address_space addressSpace>
void sycl::_V1::atomic_store ( atomic< T, addressSpace >  Object,
Operand,
memory_order  MemoryOrder = memory_order::relaxed 
)

Definition at line 338 of file atomic.hpp.

◆ bit_cast()

template<typename To , typename From >
To sycl::_V1::bit_cast ( const From &  from)
noexcept

◆ build() [1/2]

kernel_bundle<bundle_state::executable> sycl::_V1::build ( const kernel_bundle< bundle_state::input > &  InputBundle,
const property_list PropList = {} 
)
inline

Definition at line 714 of file kernel_bundle.hpp.

References build().

◆ build() [2/2]

kernel_bundle<bundle_state::executable> sycl::_V1::build ( const kernel_bundle< bundle_state::input > &  InputBundle,
const std::vector< device > &  Devs,
const property_list PropList = {} 
)
inline
Returns
a new kernel_bundle which contains device images that are translated into one ore more new device images of state bundle_state::executable. The new bundle represents all of the kernels in InputBundle that are compatible with at least one of the devices in Devs.

Definition at line 703 of file kernel_bundle.hpp.

References build().

Referenced by sycl::_V1::detail::ProgramManager::bringSYCLDeviceImagesToState(), sycl::_V1::detail::ProgramManager::build(), build(), sycl::_V1::detail::ProgramManager::compile(), sycl::_V1::detail::ProgramManager::getBuiltPIProgram(), sycl::_V1::detail::kernel_bundle_impl::kernel_bundle_impl(), sycl::_V1::detail::ProgramManager::link(), sycl::_V1::detail::make_kernel_bundle(), and sycl::_V1::detail::ProgramManager::~ProgramManager().

◆ CheckMaxStatementSize()

static size_t sycl::_V1::CheckMaxStatementSize ( const size_t &  MaxStatementSize)
static

Definition at line 25 of file stream.cpp.

References MAX_STATEMENT_SIZE.

◆ compile() [1/2]

kernel_bundle<bundle_state::object> sycl::_V1::compile ( const kernel_bundle< bundle_state::input > &  InputBundle,
const property_list PropList = {} 
)
inline

Definition at line 632 of file kernel_bundle.hpp.

◆ compile() [2/2]

kernel_bundle<bundle_state::object> sycl::_V1::compile ( const kernel_bundle< bundle_state::input > &  InputBundle,
const std::vector< device > &  Devs,
const property_list PropList = {} 
)
inline
Returns
a new kernel_bundle which contains the device images from InputBundle that are translated into one or more new device images of state bundle_state::object. The new bundle represents all of the kernels in InputBundles that are compatible with at least one of the devices in Devs.

Definition at line 621 of file kernel_bundle.hpp.

Referenced by sycl::_V1::detail::ProgramManager::bringSYCLDeviceImagesToState(), sycl::_V1::ext::intel::experimental::online_compiler< Lang >::compile(), and sycl::_V1::detail::kernel_bundle_impl::kernel_bundle_impl().

◆ cos()

template<int SZ>
ESIMD_NODEBUG ESIMD_INLINE sycl::ext::intel::esimd::simd<float, SZ> sycl::_V1::cos ( sycl::ext::intel::esimd::simd< float, SZ >  x)

Definition at line 27 of file builtins_esimd.hpp.

Referenced by __host_std::sycl_host_cos().

◆ cpu_selector_v()

◆ device::create_sub_devices< info::partition_property::partition_by_affinity_domain >()

◆ device::create_sub_devices< info::partition_property::partition_by_counts >()

template std::vector<device> sycl::_V1::device::create_sub_devices< info::partition_property::partition_by_counts > ( const std::vector< size_t > &  Counts) const

◆ device::create_sub_devices< info::partition_property::partition_equally >()

template std::vector<device> sycl::_V1::device::create_sub_devices< info::partition_property::partition_equally > ( size_t  ComputeUnits) const

◆ device::get_info< info::device::parent_device >()

template<>
device sycl::_V1::device::get_info< info::device::parent_device > ( ) const

Definition at line 132 of file device.cpp.

◆ exclusive_scan_over_group() [1/5]

template<typename Group , typename T , class BinaryOperation >
std::enable_if_t<(is_group_v<std::decay_t<Group>> && detail::is_complex<T>::value && detail::is_native_op<T, sycl::plus<T>>::value && detail::is_plus<T, BinaryOperation>::value), T> sycl::_V1::exclusive_scan_over_group ( Group  g,
x,
BinaryOperation  binary_op 
)

Definition at line 630 of file group_algorithm.hpp.

References exclusive_scan_over_group().

◆ exclusive_scan_over_group() [2/5]

template<typename Group , typename T , class BinaryOperation >
std::enable_if_t<(is_group_v<std::decay_t<Group>> && detail::is_vector_arithmetic<T>::value && detail::is_native_op<T, BinaryOperation>::value), T> sycl::_V1::exclusive_scan_over_group ( Group  g,
x,
BinaryOperation  binary_op 
)

Definition at line 650 of file group_algorithm.hpp.

References exclusive_scan_over_group().

◆ exclusive_scan_over_group() [3/5]

template<typename Group , typename V , typename T , class BinaryOperation >
std::enable_if_t<(is_group_v<std::decay_t<Group>> && detail::is_vector_arithmetic<V>::value && detail::is_vector_arithmetic<T>::value && detail::is_native_op<V, BinaryOperation>::value && detail::is_native_op<T, BinaryOperation>::value), T> sycl::_V1::exclusive_scan_over_group ( Group  g,
x,
init,
BinaryOperation  binary_op 
)

Definition at line 674 of file group_algorithm.hpp.

References exclusive_scan_over_group().

◆ exclusive_scan_over_group() [4/5]

template<typename Group , typename V , typename T , class BinaryOperation >
std::enable_if_t< (is_group_v<std::decay_t<Group>> && (detail::is_scalar_arithmetic<V>::value || detail::is_complex<V>::value) && (detail::is_scalar_arithmetic<T>::value || detail::is_complex<T>::value) && detail::is_native_op<V, BinaryOperation>::value && detail::is_native_op<T, BinaryOperation>::value && detail::is_plus_if_complex<V, BinaryOperation>::value && detail::is_plus_if_complex<T, BinaryOperation>::value), T> sycl::_V1::exclusive_scan_over_group ( Group  g,
x,
init,
BinaryOperation  binary_op 
)

◆ exclusive_scan_over_group() [5/5]

template<typename Group , typename T , class BinaryOperation >
std::enable_if_t<(is_group_v<std::decay_t<Group>> && detail::is_scalar_arithmetic<T>::value && detail::is_native_op<T, BinaryOperation>::value), T> sycl::_V1::exclusive_scan_over_group ( Group  ,
x,
BinaryOperation  binary_op 
)

Definition at line 606 of file group_algorithm.hpp.

References __spv::ExclusiveScan.

◆ exp()

template<int SZ>
ESIMD_NODEBUG ESIMD_INLINE sycl::ext::intel::esimd::simd<float, SZ> sycl::_V1::exp ( sycl::ext::intel::esimd::simd< float, SZ >  x)

Definition at line 49 of file builtins_esimd.hpp.

Referenced by __host_std::sycl_host_exp().

◆ free() [1/4]

void sycl::_V1::free ( void *  ptr,
const context &ctxt _CODELOCPARAM CodeLoc 
)

◆ free() [2/4]

void sycl::_V1::free ( void *  ptr,
const context &Ctxt _CODELOCPARAMDEF CodeLoc 
)

Definition at line 301 of file usm_impl.cpp.

References _CODELOCARG, and free().

◆ free() [3/4]

void sycl::_V1::free ( void *  ptr,
const queue &q _CODELOCPARAM CodeLoc 
)

◆ free() [4/4]

void sycl::_V1::free ( void *  ptr,
const queue &Q _CODELOCPARAMDEF CodeLoc 
)

Definition at line 306 of file usm_impl.cpp.

References _CODELOCARG, and sycl::_V1::queue::get_context().

Referenced by free().

◆ get_kernel_bundle() [1/8]

template<bundle_state State>
kernel_bundle<State> sycl::_V1::get_kernel_bundle ( const context Ctx)

Definition at line 404 of file kernel_bundle.hpp.

References sycl::_V1::context::get_devices().

◆ get_kernel_bundle() [2/8]

template<typename KernelName , bundle_state State>
kernel_bundle<State> sycl::_V1::get_kernel_bundle ( const context Ctx)

Definition at line 444 of file kernel_bundle.hpp.

References sycl::_V1::context::get_devices().

◆ get_kernel_bundle() [3/8]

template<bundle_state State>
kernel_bundle<State> sycl::_V1::get_kernel_bundle ( const context Ctx,
const std::vector< device > &  Devs 
)

A kernel bundle in state State which contains all of the kernels in the application which are compatible with at least one of the devices in Devs.

This does not include any device built-in kernels. The bundle’s set of associated devices is Devs.

Definition at line 393 of file kernel_bundle.hpp.

References sycl::_V1::detail::get_kernel_bundle_impl(), and sycl::_V1::detail::removeDuplicateDevices().

◆ get_kernel_bundle() [4/8]

template<typename KernelName , bundle_state State>
kernel_bundle<State> sycl::_V1::get_kernel_bundle ( const context Ctx,
const std::vector< device > &  Devs 
)

Definition at line 450 of file kernel_bundle.hpp.

◆ get_kernel_bundle() [5/8]

template<bundle_state State>
kernel_bundle<State> sycl::_V1::get_kernel_bundle ( const context Ctx,
const std::vector< device > &  Devs,
const std::vector< kernel_id > &  KernelIDs 
)
Returns
a kernel bundle in state State which contains all of the device images that are compatible with at least one of the devices in Devs, further filtered to contain only those device images that contain kernels with the given identifiers. These identifiers may represent kernels that are defined in the application, device built-in kernels, or a mixture of the two. Since the device images may group many kernels together, the returned bundle may contain additional kernels beyond those that are requested in KernelIDs. The bundle’s set of associated devices is Devs.

Definition at line 428 of file kernel_bundle.hpp.

References sycl::_V1::detail::get_kernel_bundle_impl(), and sycl::_V1::detail::removeDuplicateDevices().

◆ get_kernel_bundle() [6/8]

template<bundle_state State, typename SelectorT >
kernel_bundle<State> sycl::_V1::get_kernel_bundle ( const context Ctx,
const std::vector< device > &  Devs,
SelectorT  Selector 
)

A kernel bundle in state State which contains all of the device images for which the selector returns true.

Definition at line 486 of file kernel_bundle.hpp.

References sycl::_V1::detail::createSyclObjFromImpl(), sycl::_V1::detail::get_kernel_bundle_impl(), and sycl::_V1::detail::removeDuplicateDevices().

◆ get_kernel_bundle() [7/8]

template<bundle_state State>
kernel_bundle<State> sycl::_V1::get_kernel_bundle ( const context Ctx,
const std::vector< kernel_id > &  KernelIDs 
)

Definition at line 439 of file kernel_bundle.hpp.

References sycl::_V1::context::get_devices().

◆ get_kernel_bundle() [8/8]

template<bundle_state State, typename SelectorT >
kernel_bundle<State> sycl::_V1::get_kernel_bundle ( const context Ctx,
SelectorT  Selector 
)

Definition at line 504 of file kernel_bundle.hpp.

References sycl::_V1::context::get_devices().

◆ get_kernel_id()

template<typename KernelName >
kernel_id sycl::_V1::get_kernel_id ( )
Returns
the kernel_id associated with the KernelName

Definition at line 363 of file kernel_bundle.hpp.

References sycl::_V1::detail::get_kernel_id_impl().

◆ get_kernel_ids()

std::vector< kernel_id > sycl::_V1::get_kernel_ids ( )
Returns
a vector with all kernel_id's defined in the application

Definition at line 294 of file kernel_bundle.cpp.

Referenced by sycl::_V1::kernel_bundle< State >::get_kernel_ids().

◆ get_native() [1/5]

template<backend BackendName, typename DataT , int Dimensions, access::mode AccessMode, access::target AccessTarget, access::placeholder IsPlaceholder>
auto sycl::_V1::get_native ( const accessor< DataT, Dimensions, AccessMode, AccessTarget, IsPlaceholder > &  Obj) -> typename detail::interop< BackendName, accessor< DataT, Dimensions, AccessMode, AccessTarget, IsPlaceholder >>::type=delete
delete

◆ get_native() [2/5]

template<backend BackendName, typename DataT , int Dimensions, typename AllocatorT >
auto sycl::_V1::get_native ( const buffer< DataT, Dimensions, AllocatorT > &  Obj) -> backend_return_t<BackendName, buffer<DataT, Dimensions, AllocatorT>>

Definition at line 147 of file backend.hpp.

◆ get_native() [3/5]

template<backend BackendName, bundle_state State>
auto sycl::_V1::get_native ( const kernel_bundle< State > &  Obj) -> backend_return_t< BackendName, kernel_bundle< State >>

Definition at line 135 of file backend.hpp.

◆ get_native() [4/5]

template<backend BackendName, class SyclObjectT >
auto sycl::_V1::get_native ( const SyclObjectT &  Obj) -> backend_return_t< BackendName, SyclObjectT >

Definition at line 123 of file backend.hpp.

◆ get_native() [5/5]

template<backend Backend, class SyclT >
auto sycl::_V1::get_native ( const SyclT &  Obj) -> backend_return_t< Backend, SyclT >

◆ get_native< backend::ext_oneapi_cuda, context >()

Definition at line 42 of file cuda.hpp.

◆ get_native< backend::ext_oneapi_hip, device >()

◆ get_native< backend::opencl, event >()

Definition at line 147 of file backend.hpp.

◆ get_pointer_device()

device sycl::_V1::get_pointer_device ( const void *  Ptr,
const context Ctxt 
)

Queries the device against which the pointer was allocated Throws an invalid_object_error if ptr is a host allocation.

Queries the device against which the pointer was allocated.

Parameters
ptris the USM pointer to query
ctxtis the sycl context the ptr was allocated in
Ptris the USM pointer to query
Ctxtis the sycl context the ptr was allocated in

Definition at line 569 of file usm_impl.cpp.

References sycl::_V1::detail::plugin::call(), sycl::_V1::context::get_devices(), get_pointer_type(), sycl::_V1::detail::getSyclObjImpl(), PI_MEM_ALLOC_DEVICE, and piextUSMGetMemAllocInfo().

◆ get_pointer_type()

alloc sycl::_V1::get_pointer_type ( const void *  Ptr,
const context Ctxt 
)

Query the allocation type from a USM pointer.

Query the allocation type from a USM pointer Returns alloc::host for all pointers in a host context.

Parameters
ptris the USM pointer to query
ctxtis the sycl context the ptr was allocated in
Ptris the USM pointer to query
Ctxtis the sycl context the ptr was allocated in

Definition at line 518 of file usm_impl.cpp.

References sycl::_V1::detail::plugin::call_nocheck(), sycl::_V1::detail::getSyclObjImpl(), PI_MEM_ALLOC_TYPE, PI_MEM_TYPE_DEVICE, PI_MEM_TYPE_HOST, PI_MEM_TYPE_SHARED, piextUSMGetMemAllocInfo(), and sycl::_V1::detail::plugin::reportPiError().

Referenced by get_pointer_device().

◆ gpu_selector_v()

◆ group_barrier()

◆ group_broadcast() [1/3]

template<typename Group , typename T >
std::enable_if_t<(is_group_v<std::decay_t<Group>> && (std::is_trivially_copyable<T>::value || detail::is_vec<T>::value)), T> sycl::_V1::group_broadcast ( Group  g,
x 
)

◆ group_broadcast() [2/3]

template<typename Group , typename T >
std::enable_if_t<(is_group_v<std::decay_t<Group>> && (std::is_trivially_copyable<T>::value || detail::is_vec<T>::value)), T> sycl::_V1::group_broadcast ( Group  g,
x,
typename Group::linear_id_type  linear_local_id 
)

Definition at line 567 of file group_algorithm.hpp.

References group_broadcast(), and sycl::_V1::detail::linear_id_to_id().

◆ group_broadcast() [3/3]

template<typename Group , typename T >
std::enable_if_t<(is_group_v<std::decay_t<Group>> && (std::is_trivially_copyable<T>::value || detail::is_vec<T>::value)), T> sycl::_V1::group_broadcast ( Group  ,
x,
typename Group::id_type  local_id 
)

◆ group_local_memory()

template<typename T , typename Group , typename... Args>
std::enable_if_t<std::is_trivially_destructible<T>::value && detail::is_group<Group>::value, multi_ptr<T, access::address_space::local_space, access::decorated::legacy> > __SYCL_ALWAYS_INLINE sycl::_V1::group_local_memory ( Group  g,
Args &&...  args 
)

Definition at line 34 of file group_local_memory.hpp.

◆ has_kernel_bundle() [1/6]

template<bundle_state State>
bool sycl::_V1::has_kernel_bundle ( const context Ctx)

Definition at line 545 of file kernel_bundle.hpp.

References sycl::_V1::context::get_devices().

◆ has_kernel_bundle() [2/6]

template<typename KernelName , bundle_state State>
bool sycl::_V1::has_kernel_bundle ( const context Ctx)

Definition at line 556 of file kernel_bundle.hpp.

◆ has_kernel_bundle() [3/6]

template<bundle_state State>
bool sycl::_V1::has_kernel_bundle ( const context Ctx,
const std::vector< device > &  Devs 
)
Returns
true if the following is true: The application defines at least one kernel that is compatible with at least one of the devices in Devs, and that kernel can be represented in a device image of state State.

If State is bundle_state::input, all devices in Devs have aspect::online_compiler.

If State is bundle_state::object, all devices in Devs have aspect::online_linker.

Definition at line 535 of file kernel_bundle.hpp.

References sycl::_V1::detail::has_kernel_bundle_impl().

◆ has_kernel_bundle() [4/6]

template<typename KernelName , bundle_state State>
bool sycl::_V1::has_kernel_bundle ( const context Ctx,
const std::vector< device > &  Devs 
)

Definition at line 561 of file kernel_bundle.hpp.

◆ has_kernel_bundle() [5/6]

template<bundle_state State>
bool sycl::_V1::has_kernel_bundle ( const context Ctx,
const std::vector< device > &  Devs,
const std::vector< kernel_id > &  KernelIDs 
)

Definition at line 540 of file kernel_bundle.hpp.

References sycl::_V1::detail::has_kernel_bundle_impl().

◆ has_kernel_bundle() [6/6]

template<bundle_state State>
bool sycl::_V1::has_kernel_bundle ( const context Ctx,
const std::vector< kernel_id > &  KernelIDs 
)

Definition at line 550 of file kernel_bundle.hpp.

References sycl::_V1::context::get_devices().

◆ inclusive_scan_over_group() [1/5]

template<typename Group , typename T , class BinaryOperation >
std::enable_if_t<(is_group_v<std::decay_t<Group>> && detail::is_vector_arithmetic<T>::value && detail::is_native_op<T, BinaryOperation>::value), T> sycl::_V1::inclusive_scan_over_group ( Group  g,
x,
BinaryOperation  binary_op 
)

Definition at line 817 of file group_algorithm.hpp.

References inclusive_scan_over_group().

◆ inclusive_scan_over_group() [2/5]

template<typename Group , typename T , class BinaryOperation >
std::enable_if_t<(is_group_v<std::decay_t<Group>> && detail::is_complex<T>::value && detail::is_native_op<T, sycl::plus<T>>::value && detail::is_plus<T, BinaryOperation>::value), T> sycl::_V1::inclusive_scan_over_group ( Group  g,
x,
BinaryOperation  binary_op 
)

Definition at line 860 of file group_algorithm.hpp.

References inclusive_scan_over_group().

◆ inclusive_scan_over_group() [3/5]

template<typename Group , typename V , class BinaryOperation , typename T >
std::enable_if_t< (is_group_v<std::decay_t<Group>> && (detail::is_scalar_arithmetic<V>::value || detail::is_complex<V>::value) && (detail::is_scalar_arithmetic<T>::value || detail::is_complex<T>::value) && detail::is_native_op<V, BinaryOperation>::value && detail::is_native_op<T, BinaryOperation>::value && detail::is_plus_if_complex<T, BinaryOperation>::value && detail::is_plus_if_complex<V, BinaryOperation>::value), T> sycl::_V1::inclusive_scan_over_group ( Group  g,
x,
BinaryOperation  binary_op,
init 
)

◆ inclusive_scan_over_group() [4/5]

template<typename Group , typename V , class BinaryOperation , typename T >
std::enable_if_t<(is_group_v<std::decay_t<Group>> && detail::is_vector_arithmetic<V>::value && detail::is_vector_arithmetic<T>::value && detail::is_native_op<V, BinaryOperation>::value && detail::is_native_op<T, BinaryOperation>::value), T> sycl::_V1::inclusive_scan_over_group ( Group  g,
x,
BinaryOperation  binary_op,
init 
)

◆ inclusive_scan_over_group() [5/5]

template<typename Group , typename T , class BinaryOperation >
std::enable_if_t<(is_group_v<std::decay_t<Group>> && detail::is_scalar_arithmetic<T>::value && detail::is_native_op<T, BinaryOperation>::value), T> sycl::_V1::inclusive_scan_over_group ( Group  ,
x,
BinaryOperation  binary_op 
)

Definition at line 837 of file group_algorithm.hpp.

References __spv::InclusiveScan.

◆ interop_handle::get_native_context< backend::ext_oneapi_cuda >()

◆ is_compatible() [1/2]

template<typename KernelName >
bool sycl::_V1::is_compatible ( const device Dev)

Definition at line 574 of file kernel_bundle.hpp.

◆ is_compatible() [2/2]

bool sycl::_V1::is_compatible ( const std::vector< kernel_id > &  KernelIDs,
const device Dev 
)
Returns
true if all of the kernels identified by KernelIDs are compatible with the device Dev.

Definition at line 298 of file kernel_bundle.cpp.

References sycl::_V1::device::has().

◆ join()

template<sycl::bundle_state State>
sycl::kernel_bundle<State> sycl::_V1::join ( const std::vector< sycl::kernel_bundle< State >> &  Bundles)
Returns
a new kernel bundle that represents the union of all the device images in the input bundles with duplicates removed.

Definition at line 593 of file kernel_bundle.hpp.

References sycl::_V1::detail::getSyclObjImpl(), and sycl::_V1::detail::join_impl().

Referenced by ze_api_generator::snake_to_camel().

◆ joint_all_of()

template<typename Group , typename Ptr , class Predicate >
std::enable_if_t< (is_group_v<std::decay_t<Group>> && detail::is_pointer<Ptr>::value), bool> sycl::_V1::joint_all_of ( Group  g,
Ptr  first,
Ptr  last,
Predicate  pred 
)

◆ joint_any_of()

template<typename Group , typename Ptr , class Predicate >
std::enable_if_t< (is_group_v<std::decay_t<Group>> && detail::is_pointer<Ptr>::value), bool> sycl::_V1::joint_any_of ( Group  g,
Ptr  first,
Ptr  last,
Predicate  pred 
)

◆ joint_exclusive_scan() [1/2]

template<typename Group , typename InPtr , typename OutPtr , class BinaryOperation >
std::enable_if_t< (is_group_v<std::decay_t<Group>> && detail::is_pointer<InPtr>::value && detail::is_pointer<OutPtr>::value && detail::is_arithmetic_or_complex< typename detail::remove_pointer<InPtr>::type>::value && detail::is_native_op<typename detail::remove_pointer<InPtr>::type, BinaryOperation>::value && detail::is_plus_if_complex<typename detail::remove_pointer<InPtr>::type, BinaryOperation>::value), OutPtr> sycl::_V1::joint_exclusive_scan ( Group  g,
InPtr  first,
InPtr  last,
OutPtr  result,
BinaryOperation  binary_op 
)

Definition at line 793 of file group_algorithm.hpp.

Referenced by sycl::_V1::ext::oneapi::__SYCL2020_DEPRECATED().

◆ joint_exclusive_scan() [2/2]

template<typename Group , typename InPtr , typename OutPtr , typename T , class BinaryOperation >
std::enable_if_t< (is_group_v<std::decay_t<Group>> && detail::is_pointer<InPtr>::value && detail::is_pointer<OutPtr>::value && detail::is_arithmetic_or_complex< typename detail::remove_pointer<InPtr>::type>::value && detail::is_arithmetic_or_complex<T>::value && detail::is_native_op<typename detail::remove_pointer<InPtr>::type, BinaryOperation>::value && detail::is_native_op<T, BinaryOperation>::value && detail::is_plus_if_complex<typename detail::remove_pointer<InPtr>::type, BinaryOperation>::value && detail::is_plus_if_complex<T, BinaryOperation>::value), OutPtr> sycl::_V1::joint_exclusive_scan ( Group  g,
InPtr  first,
InPtr  last,
OutPtr  result,
init,
BinaryOperation  binary_op 
)

◆ joint_inclusive_scan() [1/2]

template<typename Group , typename InPtr , typename OutPtr , class BinaryOperation >
std::enable_if_t< (is_group_v<std::decay_t<Group>> && detail::is_pointer<InPtr>::value && detail::is_pointer<OutPtr>::value && detail::is_arithmetic_or_complex< typename detail::remove_pointer<InPtr>::type>::value && detail::is_native_op<typename detail::remove_pointer<InPtr>::type, BinaryOperation>::value && detail::is_plus_if_complex<typename detail::remove_pointer<InPtr>::type, BinaryOperation>::value), OutPtr> sycl::_V1::joint_inclusive_scan ( Group  g,
InPtr  first,
InPtr  last,
OutPtr  result,
BinaryOperation  binary_op 
)

Definition at line 995 of file group_algorithm.hpp.

Referenced by sycl::_V1::ext::oneapi::__SYCL2020_DEPRECATED().

◆ joint_inclusive_scan() [2/2]

template<typename Group , typename InPtr , typename OutPtr , class BinaryOperation , typename T >
std::enable_if_t< (is_group_v<std::decay_t<Group>> && detail::is_pointer<InPtr>::value && detail::is_pointer<OutPtr>::value && detail::is_arithmetic_or_complex< typename detail::remove_pointer<InPtr>::type>::value && detail::is_arithmetic_or_complex<T>::value && detail::is_native_op<typename detail::remove_pointer<InPtr>::type, BinaryOperation>::value && detail::is_native_op<T, BinaryOperation>::value && detail::is_plus_if_complex<typename detail::remove_pointer<InPtr>::type, BinaryOperation>::value && detail::is_plus_if_complex<T, BinaryOperation>::value), OutPtr> sycl::_V1::joint_inclusive_scan ( Group  g,
InPtr  first,
InPtr  last,
OutPtr  result,
BinaryOperation  binary_op,
init 
)

◆ joint_none_of()

template<typename Group , typename Ptr , class Predicate >
std::enable_if_t< (is_group_v<std::decay_t<Group>> && detail::is_pointer<Ptr>::value), bool> sycl::_V1::joint_none_of ( Group  g,
Ptr  first,
Ptr  last,
Predicate  pred 
)

Definition at line 454 of file group_algorithm.hpp.

References joint_any_of().

Referenced by sycl::_V1::ext::oneapi::__SYCL2020_DEPRECATED().

◆ joint_reduce() [1/2]

template<typename Group , typename Ptr , class BinaryOperation >
std::enable_if_t< (is_group_v<std::decay_t<Group>> && detail::is_pointer<Ptr>::value && detail::is_arithmetic_or_complex< typename detail::remove_pointer<Ptr>::type>::value && detail::is_plus_if_complex<typename detail::remove_pointer<Ptr>::type, BinaryOperation>::value), typename detail::remove_pointer<Ptr>::type> sycl::_V1::joint_reduce ( Group  g,
Ptr  first,
Ptr  last,
BinaryOperation  binary_op 
)

Definition at line 303 of file group_algorithm.hpp.

References joint_reduce().

◆ joint_reduce() [2/2]

template<typename Group , typename Ptr , typename T , class BinaryOperation >
std::enable_if_t< (is_group_v<std::decay_t<Group>> && detail::is_pointer<Ptr>::value && detail::is_arithmetic_or_complex< typename detail::remove_pointer<Ptr>::type>::value && detail::is_arithmetic_or_complex<T>::value && detail::is_native_op<typename detail::remove_pointer<Ptr>::type, BinaryOperation>::value && detail::is_plus_if_complex<typename detail::remove_pointer<Ptr>::type, BinaryOperation>::value && detail::is_plus_if_complex<T, BinaryOperation>::value && detail::is_native_op<T, BinaryOperation>::value), T> sycl::_V1::joint_reduce ( Group  g,
Ptr  first,
Ptr  last,
init,
BinaryOperation  binary_op 
)

◆ kernel::get_info< info::kernel_device_specific::max_sub_group_size >()

template uint32_t sycl::_V1::kernel::get_info< info::kernel_device_specific::max_sub_group_size > ( const device ,
const sycl::range< 3 > &   
) const

◆ link() [1/4]

kernel_bundle<bundle_state::executable> sycl::_V1::link ( const kernel_bundle< bundle_state::object > &  ObjectBundle,
const property_list PropList = {} 
)
inline

Definition at line 667 of file kernel_bundle.hpp.

◆ link() [2/4]

kernel_bundle<bundle_state::executable> sycl::_V1::link ( const kernel_bundle< bundle_state::object > &  ObjectBundle,
const std::vector< device > &  Devs,
const property_list PropList = {} 
)
inline

Definition at line 682 of file kernel_bundle.hpp.

◆ link() [3/4]

kernel_bundle<bundle_state::executable> sycl::_V1::link ( const std::vector< kernel_bundle< bundle_state::object >> &  ObjectBundles,
const property_list PropList = {} 
)
inline

Definition at line 674 of file kernel_bundle.hpp.

◆ link() [4/4]

kernel_bundle<bundle_state::executable> sycl::_V1::link ( const std::vector< kernel_bundle< bundle_state::object >> &  ObjectBundles,
const std::vector< device > &  Devs,
const property_list PropList = {} 
)
inline
Returns
a new kernel_bundle which contains the device images from the ObjectBundles that are translated into one or more new device images of state bundle_state::executable The new bundle represents all of the kernels in ObjectBundles that are compatible with at least one of the devices in Devs.

Definition at line 656 of file kernel_bundle.hpp.

Referenced by sycl::_V1::detail::ProgramManager::bringSYCLDeviceImagesToState().

◆ log()

template<int SZ>
ESIMD_NODEBUG ESIMD_INLINE sycl::ext::intel::esimd::simd<float, SZ> sycl::_V1::log ( sycl::ext::intel::esimd::simd< float, SZ >  x)

Definition at line 60 of file builtins_esimd.hpp.

◆ make_buffer() [1/3]

template<backend Backend, typename T , int Dimensions = 1, typename AllocatorT = buffer_allocator<std::remove_const_t<T>>>
std::enable_if<Backend == backend::ext_oneapi_level_zero, buffer<T, Dimensions, AllocatorT> >::type sycl::_V1::make_buffer ( const backend_input_t< backend::ext_oneapi_level_zero, buffer< T, Dimensions, AllocatorT >> &  BackendObject,
const context TargetContext 
)

Definition at line 195 of file level_zero.hpp.

◆ make_buffer() [2/3]

template<backend Backend, typename T , int Dimensions = 1, typename AllocatorT = buffer_allocator<std::remove_const_t<T>>>
std::enable_if<Backend == backend::ext_oneapi_level_zero, buffer<T, Dimensions, AllocatorT> >::type sycl::_V1::make_buffer ( const backend_input_t< backend::ext_oneapi_level_zero, buffer< T, Dimensions, AllocatorT >> &  BackendObject,
const context TargetContext,
event  AvailableEvent 
)

Definition at line 180 of file level_zero.hpp.

◆ make_buffer() [3/3]

template<backend Backend, typename T , int Dimensions = 1, typename AllocatorT = buffer_allocator<std::remove_const_t<T>>>
std::enable_if<detail::InteropFeatureSupportMap<Backend>::MakeBuffer == true && Backend != backend::ext_oneapi_level_zero, buffer<T, Dimensions, AllocatorT> >::type sycl::_V1::make_buffer ( const typename backend_traits< Backend >::template input_type< buffer< T, Dimensions, AllocatorT >> &  BackendObject,
const context TargetContext,
event  AvailableEvent = {} 
)

Definition at line 304 of file backend.hpp.

◆ make_context()

template<backend Backend>
std::enable_if< detail::InteropFeatureSupportMap<Backend>::MakeContext == true, context>::type sycl::_V1::make_context ( const typename backend_traits< Backend >::template input_type< context > &  BackendObject,
const async_handler Handler = {} 
)

Definition at line 258 of file backend.hpp.

Referenced by get_native().

◆ make_context< backend::ext_oneapi_level_zero >()

◆ make_device()

template<backend Backend>
std::enable_if< detail::InteropFeatureSupportMap<Backend>::MakeDevice == true, device>::type sycl::_V1::make_device ( const typename backend_traits< Backend >::template input_type< device > &  BackendObject)

Definition at line 248 of file backend.hpp.

Referenced by get_native().

◆ make_device< backend::ext_oneapi_cuda >()

Definition at line 70 of file cuda.hpp.

References sycl::_V1::ext::oneapi::cuda::make_device().

◆ make_error_code()

std::error_code sycl::_V1::make_error_code ( sycl::errc  E)
noexcept

Constructs an error code using e and sycl_category()

Definition at line 91 of file exception.cpp.

References sycl_category().

Referenced by sycl::_V1::detail::event_impl::checkProfilingPreconditions(), sycl::_V1::detail::ProgramManager::compile(), sycl::_V1::detail::queue_impl::createQueue(), sycl::_V1::handler::depends_on(), sycl::_V1::detail::pi::findPlugins(), sycl::_V1::detail::platform_impl::get_devices(), sycl::_V1::detail::kernel_bundle_impl::get_kernel(), sycl::_V1::detail::ProgramManager::getSYCLDeviceImages(), sycl::_V1::detail::event_impl::getWaitList(), sycl::_V1::detail::has_kernel_bundle_impl(), sycl::_V1::detail::kernel_bundle_impl::kernel_bundle_impl(), sycl::_V1::detail::ProgramManager::link(), sycl::_V1::ext::oneapi::weak_object< SYCLObjT >::lock(), sycl::_V1::ext::oneapi::weak_object< buffer< T, Dimensions, AllocatorT > >::lock(), sycl::_V1::detail::Parse_ODS_Backend(), sycl::_V1::detail::Parse_ODS_Device(), sycl::_V1::detail::Parse_ONEAPI_DEVICE_SELECTOR(), sycl::_V1::ext::intel::pipe< _name, _dataT, _min_capacity >::read(), sycl::_V1::ext::intel::kernel_readable_io_pipe< _name, _dataT, _min_capacity >::read(), sycl::_V1::ext::intel::experimental::pipe< _name, _dataT, _min_capacity, _propertiesT, std::enable_if_t< std::is_same_v< _propertiesT, decltype(oneapi::experimental::properties{})> > >::read(), sycl::_V1::detail::readConfig(), sycl::_V1::detail::SetKernelParamsAndLaunch(), sycl::_V1::detail::handler_impl::setStateExplicitKernelBundle(), sycl::_V1::detail::handler_impl::setStateSpecConstSet(), this_group(), sycl::_V1::ext::oneapi::experimental::this_group(), this_id(), sycl::_V1::ext::oneapi::experimental::this_id(), this_item(), sycl::_V1::ext::oneapi::experimental::this_item(), this_nd_item(), sycl::_V1::ext::oneapi::experimental::this_nd_item(), sycl::_V1::handler::use_kernel_bundle(), sycl::_V1::detail::event_impl::wait(), sycl::_V1::detail::event_impl::waitInternal(), sycl::_V1::ext::intel::pipe< _name, _dataT, _min_capacity >::write(), sycl::_V1::ext::intel::kernel_writeable_io_pipe< _name, _dataT, _min_capacity >::write(), and sycl::_V1::ext::intel::experimental::pipe< _name, _dataT, _min_capacity, _propertiesT, std::enable_if_t< std::is_same_v< _propertiesT, decltype(oneapi::experimental::properties{})> > >::write().

◆ make_event() [1/2]

template<backend Backend>
std::enable_if< detail::InteropFeatureSupportMap<Backend>::MakeEvent == true, event>::type sycl::_V1::make_event ( const typename backend_traits< Backend >::template input_type< event > &  BackendObject,
const context TargetContext 
)

Definition at line 279 of file backend.hpp.

References make_event().

◆ make_event() [2/2]

template<backend Backend>
std::enable_if< detail::InteropFeatureSupportMap<Backend>::MakeEvent == true, event>::type sycl::_V1::make_event ( const typename backend_traits< Backend >::template input_type< event > &  BackendObject,
const context TargetContext,
bool  KeepOwnership 
)

Definition at line 290 of file backend.hpp.

Referenced by get_native(), and make_event().

◆ make_event< backend::ext_oneapi_cuda >()

template<>
event sycl::_V1::make_event< backend::ext_oneapi_cuda > ( const backend_input_t< backend::ext_oneapi_cuda, event > &  BackendObject,
const context TargetContext 
)
inline

Definition at line 85 of file cuda.hpp.

References sycl::_V1::detail::make_event().

◆ make_event< backend::ext_oneapi_level_zero >()

template<>
event sycl::_V1::make_event< backend::ext_oneapi_level_zero > ( const backend_input_t< backend::ext_oneapi_level_zero, event > &  BackendObject,
const context TargetContext 
)
inline

Definition at line 135 of file level_zero.hpp.

References sycl::_V1::ext::oneapi::level_zero::make_event().

◆ make_kernel()

template<backend Backend>
kernel sycl::_V1::make_kernel ( const typename backend_traits< Backend >::template input_type< kernel > &  BackendObject,
const context TargetContext 
)

Definition at line 314 of file backend.hpp.

Referenced by get_native().

◆ make_kernel< backend::ext_oneapi_level_zero >()

template<>
kernel sycl::_V1::make_kernel< backend::ext_oneapi_level_zero > ( const backend_input_t< backend::ext_oneapi_level_zero, kernel > &  BackendObject,
const context TargetContext 
)
inline

Definition at line 164 of file level_zero.hpp.

References sycl::_V1::detail::make_kernel().

◆ make_kernel_bundle()

template<backend Backend, bundle_state State>
std::enable_if< detail::InteropFeatureSupportMap<Backend>::MakeKernelBundle == true, kernel_bundle<State> >::type sycl::_V1::make_kernel_bundle ( const typename backend_traits< Backend >::template input_type< kernel_bundle< State >> &  BackendObject,
const context TargetContext 
)

Definition at line 325 of file backend.hpp.

Referenced by get_native().

◆ make_kernel_bundle< backend::ext_oneapi_level_zero, bundle_state::executable >()

◆ make_platform()

template<backend Backend>
std::enable_if< detail::InteropFeatureSupportMap<Backend>::MakePlatform == true, platform>::type sycl::_V1::make_platform ( const typename backend_traits< Backend >::template input_type< platform > &  BackendObject)

Definition at line 238 of file backend.hpp.

Referenced by get_native().

◆ make_ptr() [1/2]

DecorateAddress sycl::_V1::make_ptr ( typename multi_ptr< ElementType, Space, DecorateAddress >::pointer  pointer)

Definition at line 1322 of file multi_ptr.hpp.

◆ make_ptr() [2/2]

DecorateAddress sycl::_V1::make_ptr ( typename multi_ptr< ElementType, Space, DecorateAddress >::pointer_t  pointer)

Definition at line 1310 of file multi_ptr.hpp.

◆ make_queue()

template<backend Backend>
std::enable_if< detail::InteropFeatureSupportMap<Backend>::MakeQueue == true, queue>::type sycl::_V1::make_queue ( const typename backend_traits< Backend >::template input_type< queue > &  BackendObject,
const context TargetContext,
const async_handler  Handler = {} 
)

Definition at line 269 of file backend.hpp.

Referenced by get_native().

◆ make_queue< backend::ext_oneapi_cuda >()

template<>
queue sycl::_V1::make_queue< backend::ext_oneapi_cuda > ( const backend_input_t< backend::ext_oneapi_cuda, queue > &  BackendObject,
const context TargetContext,
const async_handler  Handler 
)
inline

Definition at line 95 of file cuda.hpp.

References sycl::_V1::opencl::make_queue().

◆ make_queue< backend::ext_oneapi_level_zero >()

template<>
queue sycl::_V1::make_queue< backend::ext_oneapi_level_zero > ( const backend_input_t< backend::ext_oneapi_level_zero, queue > &  BackendObject,
const context TargetContext,
const async_handler  Handler 
)
inline

Definition at line 122 of file level_zero.hpp.

References Device, and sycl::_V1::ext::oneapi::level_zero::make_queue().

◆ make_unique_ptr()

template<typename T , typename... ArgsT>
std::unique_ptr<T> sycl::_V1::make_unique_ptr ( ArgsT &&...  Args)

Definition at line 52 of file stl.hpp.

◆ malloc() [1/10]

template<typename T >
T* sycl::_V1::malloc ( size_t  Count,
const device Dev,
const context Ctxt,
usm::alloc  Kind,
const property_list PropList = {} _CODELOCPARAM(&CodeLoc) 
)

Definition at line 243 of file usm.hpp.

◆ malloc() [2/10]

template<typename T >
T* sycl::_V1::malloc ( size_t  Count,
const queue Q,
usm::alloc  Kind,
const property_list PropList = {} _CODELOCPARAM(&CodeLoc) 
)

Definition at line 252 of file usm.hpp.

◆ malloc() [3/10]

void* sycl::_V1::malloc ( size_t  Size,
const device Dev,
const context Ctxt,
alloc Kind _CODELOCPARAMDEF CodeLoc 
)

◆ malloc() [4/10]

void* sycl::_V1::malloc ( size_t  Size,
const device Dev,
const context Ctxt,
alloc  Kind,
const property_list &PropList _CODELOCPARAMDEF CodeLoc 
)

◆ malloc() [5/10]

void* sycl::_V1::malloc ( size_t  size,
const device dev,
const context ctxt,
usm::alloc kind _CODELOCPARAM CodeLoc 
)

◆ malloc() [6/10]

void* sycl::_V1::malloc ( size_t  size,
const device dev,
const context ctxt,
usm::alloc  kind,
const property_list &propList _CODELOCPARAM CodeLoc 
)

◆ malloc() [7/10]

void* sycl::_V1::malloc ( size_t  Size,
const queue Q,
alloc Kind _CODELOCPARAMDEF CodeLoc 
)

◆ malloc() [8/10]

void* sycl::_V1::malloc ( size_t  Size,
const queue Q,
alloc  Kind,
const property_list &PropList _CODELOCPARAMDEF CodeLoc 
)

◆ malloc() [9/10]

void* sycl::_V1::malloc ( size_t  size,
const queue q,
usm::alloc kind _CODELOCPARAM CodeLoc 
)

◆ malloc() [10/10]

void* sycl::_V1::malloc ( size_t  size,
const queue q,
usm::alloc  kind,
const property_list &propList _CODELOCPARAM CodeLoc 
)

◆ malloc_device() [1/10]

template<typename T >
T* sycl::_V1::malloc_device ( size_t  Count,
const device Dev,
const context Ctxt,
const property_list PropList = {} _CODELOCPARAM(&CodeLoc) 
)

Definition at line 133 of file usm.hpp.

◆ malloc_device() [2/10]

template<typename T >
T* sycl::_V1::malloc_device ( size_t  Count,
const queue Q,
const property_list PropList = {} _CODELOCPARAM(&CodeLoc) 
)

Definition at line 142 of file usm.hpp.

◆ malloc_device() [3/10]

void* sycl::_V1::malloc_device ( size_t  size,
const device dev,
const context &ctxt _CODELOCPARAM CodeLoc 
)

◆ malloc_device() [4/10]

void* sycl::_V1::malloc_device ( size_t  Size,
const device Dev,
const context &Ctxt _CODELOCPARAMDEF CodeLoc 
)

Definition at line 241 of file usm_impl.cpp.

References _CODELOCARG, and sycl::_V1::detail::usm::alignedAlloc().

◆ malloc_device() [5/10]

void* sycl::_V1::malloc_device ( size_t  size,
const device dev,
const context ctxt,
const property_list &propList _CODELOCPARAM CodeLoc 
)

◆ malloc_device() [6/10]

void* sycl::_V1::malloc_device ( size_t  Size,
const device Dev,
const context Ctxt,
const property_list &PropList _CODELOCPARAMDEF CodeLoc 
)

Definition at line 248 of file usm_impl.cpp.

References _CODELOCARG, and sycl::_V1::detail::usm::alignedAlloc().

◆ malloc_device() [7/10]

void* sycl::_V1::malloc_device ( size_t  size,
const queue &q _CODELOCPARAM CodeLoc 
)

◆ malloc_device() [8/10]

void* sycl::_V1::malloc_device ( size_t  Size,
const queue &Q _CODELOCPARAMDEF CodeLoc 
)

Definition at line 255 of file usm_impl.cpp.

References _CODELOCARG, and sycl::_V1::detail::usm::alignedAlloc().

◆ malloc_device() [9/10]

void* sycl::_V1::malloc_device ( size_t  size,
const queue q,
const property_list &propList _CODELOCPARAM CodeLoc 
)

◆ malloc_device() [10/10]

void* sycl::_V1::malloc_device ( size_t  Size,
const queue Q,
const property_list &PropList _CODELOCPARAMDEF CodeLoc 
)

◆ malloc_host() [1/10]

template<typename T >
T* sycl::_V1::malloc_host ( size_t  Count,
const context Ctxt,
const property_list PropList = {} _CODELOCPARAM(&CodeLoc) 
)

Definition at line 170 of file usm.hpp.

◆ malloc_host() [2/10]

template<typename T >
T* sycl::_V1::malloc_host ( size_t  Count,
const queue Q,
const property_list PropList = {} _CODELOCPARAM(&CodeLoc) 
)

Definition at line 179 of file usm.hpp.

◆ malloc_host() [3/10]

void* sycl::_V1::malloc_host ( size_t  size,
const context &ctxt _CODELOCPARAM CodeLoc 
)

◆ malloc_host() [4/10]

void* sycl::_V1::malloc_host ( size_t  Size,
const context &Ctxt _CODELOCPARAMDEF CodeLoc 
)

Definition at line 311 of file usm_impl.cpp.

References _CODELOCARG, and sycl::_V1::detail::usm::alignedAllocHost().

◆ malloc_host() [5/10]

void* sycl::_V1::malloc_host ( size_t  size,
const context ctxt,
const property_list &propList _CODELOCPARAM CodeLoc 
)

◆ malloc_host() [6/10]

void* sycl::_V1::malloc_host ( size_t  Size,
const context Ctxt,
const property_list &PropList _CODELOCPARAMDEF CodeLoc 
)

Definition at line 317 of file usm_impl.cpp.

References _CODELOCARG, and sycl::_V1::detail::usm::alignedAllocHost().

◆ malloc_host() [7/10]

void* sycl::_V1::malloc_host ( size_t  size,
const queue &q _CODELOCPARAM CodeLoc 
)

◆ malloc_host() [8/10]

void* sycl::_V1::malloc_host ( size_t  Size,
const queue &Q _CODELOCPARAMDEF CodeLoc 
)

◆ malloc_host() [9/10]

void* sycl::_V1::malloc_host ( size_t  size,
const queue q,
const property_list &propList _CODELOCPARAM CodeLoc 
)

◆ malloc_host() [10/10]

void* sycl::_V1::malloc_host ( size_t  Size,
const queue Q,
const property_list &PropList _CODELOCPARAMDEF CodeLoc 
)

◆ malloc_shared() [1/10]

template<typename T >
T* sycl::_V1::malloc_shared ( size_t  Count,
const device Dev,
const context Ctxt,
const property_list PropList = {} _CODELOCPARAM(&CodeLoc) 
)

Definition at line 187 of file usm.hpp.

◆ malloc_shared() [2/10]

template<typename T >
T* sycl::_V1::malloc_shared ( size_t  Count,
const queue Q,
const property_list PropList = {} _CODELOCPARAM(&CodeLoc) 
)

Definition at line 196 of file usm.hpp.

◆ malloc_shared() [3/10]

void* sycl::_V1::malloc_shared ( size_t  size,
const device dev,
const context &ctxt _CODELOCPARAM CodeLoc 
)

◆ malloc_shared() [4/10]

void* sycl::_V1::malloc_shared ( size_t  Size,
const device Dev,
const context &Ctxt _CODELOCPARAMDEF CodeLoc 
)

Definition at line 337 of file usm_impl.cpp.

References _CODELOCARG, and sycl::_V1::detail::usm::alignedAlloc().

◆ malloc_shared() [5/10]

void* sycl::_V1::malloc_shared ( size_t  size,
const device dev,
const context ctxt,
const property_list &propList _CODELOCPARAM CodeLoc 
)

◆ malloc_shared() [6/10]

void* sycl::_V1::malloc_shared ( size_t  Size,
const device Dev,
const context Ctxt,
const property_list &PropList _CODELOCPARAMDEF CodeLoc 
)

Definition at line 344 of file usm_impl.cpp.

References _CODELOCARG, and sycl::_V1::detail::usm::alignedAlloc().

◆ malloc_shared() [7/10]

void* sycl::_V1::malloc_shared ( size_t  size,
const queue &q _CODELOCPARAM CodeLoc 
)

◆ malloc_shared() [8/10]

void* sycl::_V1::malloc_shared ( size_t  Size,
const queue &Q _CODELOCPARAMDEF CodeLoc 
)

◆ malloc_shared() [9/10]

void* sycl::_V1::malloc_shared ( size_t  size,
const queue q,
const property_list &propList _CODELOCPARAM CodeLoc 
)

◆ malloc_shared() [10/10]

void* sycl::_V1::malloc_shared ( size_t  Size,
const queue Q,
const property_list &PropList _CODELOCPARAMDEF CodeLoc 
)

◆ none_of_group() [1/2]

template<typename Group , typename T , class Predicate >
std::enable_if_t<is_group_v<std::decay_t<Group> >, bool> sycl::_V1::none_of_group ( Group  g,
x,
Predicate  pred 
)

Definition at line 446 of file group_algorithm.hpp.

Referenced by sycl::_V1::ext::oneapi::__SYCL2020_DEPRECATED().

◆ none_of_group() [2/2]

template<typename Group >
std::enable_if_t<is_group_v<std::decay_t<Group> >, bool> sycl::_V1::none_of_group ( Group  ,
bool  pred 
)

Definition at line 434 of file group_algorithm.hpp.

◆ operator!=() [1/3]

template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool sycl::_V1::operator!= ( const multi_ptr< ElementType, Space, DecorateAddress > &  lhs,
const multi_ptr< ElementType, Space, DecorateAddress > &  rhs 
)

◆ operator!=() [2/3]

template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool sycl::_V1::operator!= ( const multi_ptr< ElementType, Space, DecorateAddress > &  lhs,
std::nullptr_t   
)

◆ operator!=() [3/3]

template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool sycl::_V1::operator!= ( std::nullptr_t  ,
const multi_ptr< ElementType, Space, DecorateAddress > &  rhs 
)

◆ operator<() [1/3]

template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool sycl::_V1::operator< ( const multi_ptr< ElementType, Space, DecorateAddress > &  ,
std::nullptr_t   
)

Definition at line 1437 of file multi_ptr.hpp.

◆ operator<() [2/3]

template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool sycl::_V1::operator< ( const multi_ptr< ElementType, Space, DecorateAddress > &  lhs,
const multi_ptr< ElementType, Space, DecorateAddress > &  rhs 
)

◆ operator<() [3/3]

template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool sycl::_V1::operator< ( std::nullptr_t  ,
const multi_ptr< ElementType, Space, DecorateAddress > &  rhs 
)

◆ operator<<() [1/21]

const stream& sycl::_V1::operator<< ( const stream &  Out,
const __precision_manipulator__ RHS 
)
inline

Definition at line 1057 of file stream.hpp.

◆ operator<<() [2/21]

const stream& sycl::_V1::operator<< ( const stream &  Out,
const __width_manipulator__ RHS 
)
inline

Definition at line 1063 of file stream.hpp.

◆ operator<<() [3/21]

const stream& sycl::_V1::operator<< ( const stream &  Out,
const bool &  RHS 
)
inline

Definition at line 996 of file stream.hpp.

◆ operator<<() [4/21]

const stream& sycl::_V1::operator<< ( const stream &  Out,
const char *  Str 
)
inline

Definition at line 985 of file stream.hpp.

References sycl::_V1::detail::write().

◆ operator<<() [5/21]

const stream& sycl::_V1::operator<< ( const stream &  Out,
const double &  RHS 
)
inline

Definition at line 1020 of file stream.hpp.

◆ operator<<() [6/21]

const stream& sycl::_V1::operator<< ( const stream &  Out,
const float &  RHS 
)
inline

Definition at line 1013 of file stream.hpp.

◆ operator<<() [7/21]

template<int Dimensions>
const stream& sycl::_V1::operator<< ( const stream &  Out,
const group< Dimensions > &  RHS 
)
inline

Definition at line 1140 of file stream.hpp.

◆ operator<<() [8/21]

template<int Dimensions>
const stream& sycl::_V1::operator<< ( const stream &  Out,
const h_item< Dimensions > &  RHS 
)
inline

Definition at line 1148 of file stream.hpp.

◆ operator<<() [9/21]

const stream& sycl::_V1::operator<< ( const stream &  Out,
const half RHS 
)
inline

Definition at line 1027 of file stream.hpp.

◆ operator<<() [10/21]

template<int Dimensions>
const stream& sycl::_V1::operator<< ( const stream &  Out,
const id< Dimensions > &  RHS 
)
inline

Definition at line 1101 of file stream.hpp.

◆ operator<<() [11/21]

template<int Dimensions>
const stream& sycl::_V1::operator<< ( const stream &  Out,
const item< Dimensions > &  RHS 
)
inline

Definition at line 1116 of file stream.hpp.

◆ operator<<() [12/21]

template<typename ElementType , access::address_space Space, access::decorated IsDecorated>
const stream& sycl::_V1::operator<< ( const stream &  Out,
const multi_ptr< ElementType, Space, IsDecorated > &  RHS 
)
inline

◆ operator<<() [13/21]

template<int Dimensions>
const stream& sycl::_V1::operator<< ( const stream &  Out,
const nd_item< Dimensions > &  RHS 
)
inline

Definition at line 1132 of file stream.hpp.

◆ operator<<() [14/21]

template<int Dimensions>
const stream& sycl::_V1::operator<< ( const stream &  Out,
const nd_range< Dimensions > &  RHS 
)
inline

Definition at line 1124 of file stream.hpp.

◆ operator<<() [15/21]

template<int Dimensions>
const stream& sycl::_V1::operator<< ( const stream &  Out,
const range< Dimensions > &  RHS 
)
inline

Definition at line 1108 of file stream.hpp.

◆ operator<<() [16/21]

const stream& sycl::_V1::operator<< ( const stream &  Out,
const stream_manipulator  RHS 
)
inline

Definition at line 1069 of file stream.hpp.

References endl, flush, and sycl::_V1::detail::flushBuffer().

◆ operator<<() [17/21]

template<typename T , typename RT = detail::EnableIfSwizzleVec<T>>
const stream& sycl::_V1::operator<< ( const stream &  Out,
const T &  RHS 
)
inline

Definition at line 1156 of file stream.hpp.

◆ operator<<() [18/21]

template<typename T >
const stream& sycl::_V1::operator<< ( const stream &  Out,
const T *  RHS 
)

◆ operator<<() [19/21]

template<typename ValueType >
std::enable_if_t<std::is_integral<ValueType>::value, const stream &> sycl::_V1::operator<< ( const stream &  Out,
const ValueType &  RHS 
)
inline

Definition at line 996 of file stream.hpp.

◆ operator<<() [20/21]

template<typename T , int VectorLength>
const stream& sycl::_V1::operator<< ( const stream &  Out,
const vec< T, VectorLength > &  RHS 
)

Definition at line 1091 of file stream.hpp.

◆ operator<<() [21/21]

std::ostream& sycl::_V1::operator<< ( std::ostream &  Out,
backend  be 
)
inline

Definition at line 46 of file backend_types.hpp.

◆ operator<=() [1/3]

template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool sycl::_V1::operator<= ( const multi_ptr< ElementType, Space, DecorateAddress > &  lhs,
const multi_ptr< ElementType, Space, DecorateAddress > &  rhs 
)

◆ operator<=() [2/3]

template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool sycl::_V1::operator<= ( const multi_ptr< ElementType, Space, DecorateAddress > &  lhs,
std::nullptr_t   
)

◆ operator<=() [3/3]

template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool sycl::_V1::operator<= ( std::nullptr_t  ,
const multi_ptr< ElementType, Space, DecorateAddress > &   
)

Definition at line 1472 of file multi_ptr.hpp.

◆ operator==() [1/3]

template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool sycl::_V1::operator== ( const multi_ptr< ElementType, Space, DecorateAddress > &  lhs,
const multi_ptr< ElementType, Space, DecorateAddress > &  rhs 
)

◆ operator==() [2/3]

template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool sycl::_V1::operator== ( const multi_ptr< ElementType, Space, DecorateAddress > &  lhs,
std::nullptr_t   
)

◆ operator==() [3/3]

template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool sycl::_V1::operator== ( std::nullptr_t  ,
const multi_ptr< ElementType, Space, DecorateAddress > &  rhs 
)

◆ operator>() [1/3]

template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool sycl::_V1::operator> ( const multi_ptr< ElementType, Space, DecorateAddress > &  lhs,
const multi_ptr< ElementType, Space, DecorateAddress > &  rhs 
)

◆ operator>() [2/3]

template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool sycl::_V1::operator> ( const multi_ptr< ElementType, Space, DecorateAddress > &  lhs,
std::nullptr_t   
)

◆ operator>() [3/3]

template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool sycl::_V1::operator> ( std::nullptr_t  ,
const multi_ptr< ElementType, Space, DecorateAddress > &   
)

Definition at line 1430 of file multi_ptr.hpp.

◆ operator>=() [1/3]

template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool sycl::_V1::operator>= ( const multi_ptr< ElementType, Space, DecorateAddress > &  ,
std::nullptr_t   
)

Definition at line 1451 of file multi_ptr.hpp.

◆ operator>=() [2/3]

template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool sycl::_V1::operator>= ( const multi_ptr< ElementType, Space, DecorateAddress > &  lhs,
const multi_ptr< ElementType, Space, DecorateAddress > &  rhs 
)

◆ operator>=() [3/3]

template<typename ElementType , access::address_space Space, access::decorated DecorateAddress>
bool sycl::_V1::operator>= ( std::nullptr_t  ,
const multi_ptr< ElementType, Space, DecorateAddress > &  rhs 
)

◆ permute_group_by_xor()

template<typename Group , typename T >
std::enable_if_t<(std::is_same<std::decay_t<Group>, sub_group>::value && (std::is_trivially_copyable<T>::value || detail::is_vec<T>::value)), T> sycl::_V1::permute_group_by_xor ( Group  ,
x,
typename Group::linear_id_type  mask 
)

Definition at line 513 of file group_algorithm.hpp.

◆ powr()

template<typename T , size_t N>
__SYCL_ALWAYS_INLINE std::enable_if_t<__FAST_MATH_SGENFLOAT(T), marray<T, N> > sycl::_V1::powr ( marray< T, N >  x,
marray< T, N >  y 
)
inline

Definition at line 168 of file builtins.hpp.

References __SYCL_MATH_FUNCTION_2_OVERLOAD_IMPL.

◆ queue::get_property< property::queue::enable_profiling >()

◆ queue::get_property< property::queue::in_order >()

◆ queue::has_property< property::queue::enable_profiling >()

◆ queue::has_property< property::queue::in_order >()

◆ reduce_over_group() [1/5]

template<typename Group , typename T , class BinaryOperation >
std::enable_if_t<(is_group_v<std::decay_t<Group>> && detail::is_complex<T>::value && detail::is_native_op<T, sycl::plus<T>>::value && detail::is_plus<T, BinaryOperation>::value), T> sycl::_V1::reduce_over_group ( Group  g,
x,
BinaryOperation  binary_op 
)

Definition at line 203 of file group_algorithm.hpp.

References reduce_over_group().

◆ reduce_over_group() [2/5]

template<typename Group , typename T , class BinaryOperation >
std::enable_if_t<(is_group_v<std::decay_t<Group>> && detail::is_vector_arithmetic<T>::value && detail::is_native_op<T, BinaryOperation>::value), T> sycl::_V1::reduce_over_group ( Group  g,
x,
BinaryOperation  binary_op 
)

Definition at line 223 of file group_algorithm.hpp.

References reduce_over_group().

◆ reduce_over_group() [3/5]

template<typename Group , typename V , typename T , class BinaryOperation >
std::enable_if_t< (is_group_v<std::decay_t<Group>> && (detail::is_scalar_arithmetic<V>::value || detail::is_complex<V>::value) && (detail::is_scalar_arithmetic<T>::value || detail::is_complex<T>::value) && detail::is_native_op<V, BinaryOperation>::value && detail::is_native_op<T, BinaryOperation>::value && detail::is_plus_if_complex<T, BinaryOperation>::value && detail::is_plus_if_complex<V, BinaryOperation>::value), T> sycl::_V1::reduce_over_group ( Group  g,
x,
init,
BinaryOperation  binary_op 
)

Definition at line 250 of file group_algorithm.hpp.

References reduce_over_group().

◆ reduce_over_group() [4/5]

template<typename Group , typename V , typename T , class BinaryOperation >
std::enable_if_t<(is_group_v<std::decay_t<Group>> && detail::is_vector_arithmetic<V>::value && detail::is_vector_arithmetic<T>::value && detail::is_native_op<V, BinaryOperation>::value && detail::is_native_op<T, BinaryOperation>::value), T> sycl::_V1::reduce_over_group ( Group  g,
x,
init,
BinaryOperation  binary_op 
)

◆ reduce_over_group() [5/5]

template<typename Group , typename T , class BinaryOperation >
std::enable_if_t<(is_group_v<std::decay_t<Group>> && detail::is_scalar_arithmetic<T>::value && detail::is_native_op<T, BinaryOperation>::value), T> sycl::_V1::reduce_over_group ( Group  ,
x,
BinaryOperation  binary_op 
)

Definition at line 178 of file group_algorithm.hpp.

References __spv::Reduce.

◆ reduction() [1/9]

template<typename T , typename AllocatorT , typename BinaryOperation , typename = std::enable_if_t<has_known_identity<BinaryOperation, T>::value>>
auto sycl::_V1::reduction ( buffer< T, 1, AllocatorT >  Var,
handler CGH,
BinaryOperation  ,
const property_list PropList = {} 
)

Constructs a reduction object using the given buffer Var, handler CGH, reduction operation Combiner, and optional reduction properties.

Definition at line 2421 of file reduction.hpp.

◆ reduction() [2/9]

template<typename T , typename AllocatorT , typename BinaryOperation >
auto sycl::_V1::reduction ( buffer< T, 1, AllocatorT >  Var,
handler CGH,
const T &  Identity,
BinaryOperation  Combiner,
const property_list PropList = {} 
)

Constructs a reduction object using the given buffer Var, handler CGH, reduction identity value Identity, reduction operation Combiner, and optional reduction properties.

Definition at line 2484 of file reduction.hpp.

◆ reduction() [3/9]

template<typename T , typename AllocatorT , typename BinaryOperation , typename = std::enable_if_t<!has_known_identity<BinaryOperation, T>::value>>
detail::reduction_impl< T, BinaryOperation, 0, 1, accessor<T, 1, access::mode::read_write, access::target::device, access::placeholder::true_t, ext::oneapi::accessor_property_list<> > > sycl::_V1::reduction ( buffer< T, 1, AllocatorT >  ,
handler ,
BinaryOperation  ,
const property_list PropList = {} 
)

Constructs a reduction object using the given buffer Var, handler CGH, reduction operation Combiner, and optional reduction properties.

The reduction algorithm may be less efficient for this variant as the reduction identity is not known statically and it is not provided by user.

Definition at line 2441 of file reduction.hpp.

◆ reduction() [4/9]

template<typename T , size_t Extent, typename BinaryOperation , typename = std::enable_if_t<Extent != dynamic_extent && has_known_identity<BinaryOperation, T>::value>>
auto sycl::_V1::reduction ( span< T, Extent >  Span,
BinaryOperation  ,
const property_list PropList = {} 
)

Constructs a reduction object using the reduction variable referenced by the given sycl::span Span, reduction operation Combiner, and optional reduction properties.

Definition at line 2511 of file reduction.hpp.

◆ reduction() [5/9]

template<typename T , size_t Extent, typename BinaryOperation , typename = std::enable_if_t<Extent != dynamic_extent>>
auto sycl::_V1::reduction ( span< T, Extent >  Span,
const T &  Identity,
BinaryOperation  Combiner,
const property_list PropList = {} 
)

Constructs a reduction object using the reduction variable referenced by the given sycl::span Span, reduction identity value Identity, reduction operation Combiner, and optional reduction properties.

Definition at line 2543 of file reduction.hpp.

◆ reduction() [6/9]

template<typename T , size_t Extent, typename BinaryOperation , typename = std::enable_if_t<Extent != dynamic_extent && !has_known_identity<BinaryOperation, T>::value>>
detail::reduction_impl<T, BinaryOperation, 1, Extent, T *> sycl::_V1::reduction ( span< T, Extent >  ,
BinaryOperation  ,
const property_list PropList = {} 
)

Constructs a reduction object using the reduction variable referenced by the given sycl::span Span, reduction operation Combiner, and optional reduction properties.

The reduction algorithm may be less efficient for this variant as the reduction identity is not known statically and it is not provided by user.

Definition at line 2529 of file reduction.hpp.

◆ reduction() [7/9]

template<typename T , typename BinaryOperation , typename = std::enable_if_t<!has_known_identity<BinaryOperation, T>::value>>
detail::reduction_impl<T, BinaryOperation, 0, 1, T *> sycl::_V1::reduction ( T *  ,
BinaryOperation  ,
const property_list PropList = {} 
)

Constructs a reduction object using the reduction variable referenced by the given USM pointer Var, handler CGH, reduction operation Combiner, and optional reduction properties.

The reduction algorithm may be less efficient for this variant as the reduction identity is not known statically and it is not provided by user.

Definition at line 2472 of file reduction.hpp.

◆ reduction() [8/9]

template<typename T , typename BinaryOperation , typename = std::enable_if_t<has_known_identity<BinaryOperation, T>::value>>
auto sycl::_V1::reduction ( T *  Var,
BinaryOperation  ,
const property_list PropList = {} 
)

Constructs a reduction object using the reduction variable referenced by the given USM pointer Var, handler CGH, reduction operation Combiner, and optional reduction properties.

Definition at line 2456 of file reduction.hpp.

◆ reduction() [9/9]

template<typename T , typename BinaryOperation >
auto sycl::_V1::reduction ( T *  Var,
const T &  Identity,
BinaryOperation  Combiner,
const property_list PropList = {} 
)

Constructs a reduction object using the reduction variable referenced by the given USM pointer Var, reduction identity value Identity, binary operation Combiner, and optional reduction properties.

Definition at line 2496 of file reduction.hpp.

◆ select_from_group()

template<typename Group , typename T >
std::enable_if_t<(std::is_same<std::decay_t<Group>, sub_group>::value && (std::is_trivially_copyable<T>::value || detail::is_vec<T>::value)), T> sycl::_V1::select_from_group ( Group  ,
x,
typename Group::id_type  local_id 
)

Definition at line 532 of file group_algorithm.hpp.

◆ setprecision()

__precision_manipulator__ sycl::_V1::setprecision ( int  Precision)
inline

Definition at line 732 of file stream.hpp.

◆ setw()

__width_manipulator__ sycl::_V1::setw ( int  Width)
inline

◆ shift_group_left()

template<typename Group , typename T >
std::enable_if_t<(std::is_same<std::decay_t<Group>, sub_group>::value && (std::is_trivially_copyable<T>::value || detail::is_vec<T>::value)), T> sycl::_V1::shift_group_left ( Group  ,
x,
typename Group::linear_id_type  delta = 1 
)

Definition at line 475 of file group_algorithm.hpp.

◆ shift_group_right()

template<typename Group , typename T >
std::enable_if_t<(std::is_same<std::decay_t<Group>, sub_group>::value && (std::is_trivially_copyable<T>::value || detail::is_vec<T>::value)), T> sycl::_V1::shift_group_right ( Group  ,
x,
typename Group::linear_id_type  delta = 1 
)

Definition at line 494 of file group_algorithm.hpp.

◆ sin()

template<int SZ>
ESIMD_NODEBUG ESIMD_INLINE sycl::ext::intel::esimd::simd<float, SZ> sycl::_V1::sin ( sycl::ext::intel::esimd::simd< float, SZ >  x)

Definition at line 38 of file builtins_esimd.hpp.

◆ sycl_category()

const std::error_category & sycl::_V1::sycl_category ( )
noexcept

Definition at line 86 of file exception.cpp.

Referenced by make_error_code().

◆ this_group()

template<int Dims>
group<Dims> sycl::_V1::this_group ( )

Definition at line 542 of file group.hpp.

References sycl::_V1::detail::declptr(), and make_error_code().

◆ this_id()

template<int Dims>
id<Dims> sycl::_V1::this_id ( )

Definition at line 353 of file id.hpp.

References sycl::_V1::detail::declptr(), and make_error_code().

◆ this_item()

template<int Dims>
item<Dims> sycl::_V1::this_item ( )

Definition at line 145 of file item.hpp.

References sycl::_V1::detail::declptr(), and make_error_code().

◆ this_nd_item()

template<int Dims>
nd_item<Dims> sycl::_V1::this_nd_item ( )

Definition at line 195 of file nd_item.hpp.

References sycl::_V1::detail::declptr(), and make_error_code().

◆ traceDeviceSelector()

static void sycl::_V1::traceDeviceSelector ( const std::string &  DeviceType)
static

default_selector_v Devices of different kinds are prioritized in the following order:

  1. GPU
  2. CPU
  3. Host
  4. Accelerator

Definition at line 162 of file device_selector.cpp.

References std::cout, sycl::_V1::detail::pi::PI_TRACE_BASIC, and sycl::_V1::detail::pi::trace().

Referenced by accelerator_selector_v(), cpu_selector_v(), default_selector_v(), and gpu_selector_v().

Variable Documentation

◆ AccessMode

◆ dec

◆ defaultfloat

constexpr stream_manipulator sycl::_V1::defaultfloat = stream_manipulator::defaultfloat
constexpr

Definition at line 704 of file stream.hpp.

◆ Dimensions

◆ endl

constexpr stream_manipulator sycl::_V1::endl = stream_manipulator::endl
constexpr

Definition at line 694 of file stream.hpp.

Referenced by operator<<().

◆ fixed

constexpr stream_manipulator sycl::_V1::fixed = stream_manipulator::fixed
constexpr

Definition at line 698 of file stream.hpp.

◆ flush

constexpr stream_manipulator sycl::_V1::flush = stream_manipulator::flush
constexpr

Definition at line 696 of file stream.hpp.

Referenced by operator<<().

◆ has_known_identity_v

template<typename BinaryOperation , typename AccumulatorT >
constexpr bool sycl::_V1::has_known_identity_v
inlineconstexpr
Initial value:
=
sycl::has_known_identity<BinaryOperation, AccumulatorT>::value

Definition at line 386 of file known_identity.hpp.

◆ hex

constexpr stream_manipulator sycl::_V1::hex = stream_manipulator::hex
constexpr

Definition at line 682 of file stream.hpp.

◆ hexfloat

constexpr stream_manipulator sycl::_V1::hexfloat = stream_manipulator::hexfloat
constexpr

Definition at line 702 of file stream.hpp.

◆ is_group_v

template<class T >
constexpr bool sycl::_V1::is_group_v
inlineconstexpr
Initial value:
=
detail::is_group<T>::value || detail::is_sub_group<T>::value

Definition at line 69 of file type_traits.hpp.

◆ is_property_of_v

template<typename propertyT , typename syclObjectT >
constexpr bool sycl::_V1::is_property_of_v
inlineconstexpr
Initial value:
=
is_property_of<propertyT, syclObjectT>::value

Definition at line 30 of file property_traits.hpp.

◆ is_property_v

template<typename propertyT >
constexpr bool sycl::_V1::is_property_v = is_property<propertyT>::value
inlineconstexpr

Definition at line 27 of file property_traits.hpp.

◆ IsPlaceholder

class __SYCL_EBO __SYCL_SPECIAL_CLASS sycl::_V1::IsPlaceholder

Definition at line 2782 of file accessor.hpp.

Referenced by __SYCL_DEPRECATED(), __SYCL_TYPE(), and sycl::_V1::handler::fill().

◆ known_identity_v

template<typename BinaryOperation , typename AccumulatorT >
constexpr AccumulatorT sycl::_V1::known_identity_v
inlineconstexpr
Initial value:
=
sycl::known_identity<BinaryOperation, AccumulatorT>::value

Definition at line 396 of file known_identity.hpp.

◆ MAX_STATEMENT_SIZE

constexpr size_t sycl::_V1::MAX_STATEMENT_SIZE
staticconstexpr
Initial value:
=
(1 << (CHAR_BIT * detail::FLUSH_BUF_OFFSET_SIZE)) - 1
constexpr unsigned FLUSH_BUF_OFFSET_SIZE
Definition: stream.hpp:60

Definition at line 18 of file stream.cpp.

Referenced by CheckMaxStatementSize().

◆ MaxNumAdditionalArgs

constexpr size_t sycl::_V1::MaxNumAdditionalArgs = 13
inlineconstexpr

Definition at line 514 of file handler.cpp.

◆ no_init

◆ noinit

constexpr property::noinit sycl::_V1::noinit
inlineconstexpr

Definition at line 31 of file accessor_properties.hpp.

◆ noshowbase

constexpr stream_manipulator sycl::_V1::noshowbase = stream_manipulator::noshowbase
constexpr

Definition at line 686 of file stream.hpp.

◆ noshowpos

constexpr stream_manipulator sycl::_V1::noshowpos = stream_manipulator::noshowpos
constexpr

Definition at line 690 of file stream.hpp.

◆ oct

constexpr stream_manipulator sycl::_V1::oct = stream_manipulator::oct
constexpr

Definition at line 684 of file stream.hpp.

◆ scientific

constexpr stream_manipulator sycl::_V1::scientific = stream_manipulator::scientific
constexpr

Definition at line 700 of file stream.hpp.

◆ showbase

constexpr stream_manipulator sycl::_V1::showbase = stream_manipulator::showbase
constexpr

Definition at line 688 of file stream.hpp.

◆ showpos

constexpr stream_manipulator sycl::_V1::showpos = stream_manipulator::showpos
constexpr

Definition at line 692 of file stream.hpp.

◆ Space