Namespaces | |
access | |
detail | |
ext | |
ext | |
half_precision | |
info | |
native | |
opencl | |
property | |
property | |
usm | |
Typedefs | |
using | access_mode = access::mode |
template<typename T > | |
using | remove_decoration_t = typename remove_decoration< T >::type |
using | instead = std::uint8_t |
using | __SYCL2020_DEPRECATED = signed char |
using | half = sycl::detail::half_impl::half |
using | async_handler = std::function< void(sycl::exception_list)> |
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<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 > |
using | byte = unsigned char |
using | image_allocator = detail::aligned_allocator< byte > |
using | value_type = const void |
using | pointer = std::conditional_t< is_decorated, decorated_type *, std::add_pointer_t< value_type > > |
using | difference_type = std::ptrdiff_t |
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 | 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 > |
using | ContextImplPtr = std::shared_ptr< sycl::detail::context_impl > |
using | alloc = sycl::usm::alloc |
Functions | |
template<typename DataT , int Dimensions, typename AllocatorT > | |
class __SYCL_EBO __SYCL_SPECIAL_CLASS __SYCL_TYPE(accessor) accessor | accessor (buffer< DataT, Dimensions, AllocatorT >) -> accessor< DataT, Dimensions, access::mode::read_write, target::device, access::placeholder::true_t > |
Buffer accessor. More... | |
template<typename DataT , int Dimensions, typename AllocatorT , typename... PropsT> | |
accessor (buffer< DataT, Dimensions, AllocatorT >, const ext::oneapi::accessor_property_list< PropsT... > &) -> accessor< DataT, Dimensions, access::mode::read_write, target::device, access::placeholder::true_t, ext::oneapi::accessor_property_list< PropsT... >> | |
template<typename DataT , int Dimensions, typename AllocatorT , typename Type1 > | |
accessor (buffer< DataT, Dimensions, AllocatorT >, Type1) -> accessor< DataT, Dimensions, detail::deduceAccessMode< Type1, Type1 >(), detail::deduceAccessTarget< Type1, Type1 >(target::device), access::placeholder::true_t > | |
template<typename DataT , int Dimensions, typename AllocatorT , typename Type1 , typename... PropsT> | |
accessor (buffer< DataT, Dimensions, AllocatorT >, Type1, const ext::oneapi::accessor_property_list< PropsT... > &) -> accessor< DataT, Dimensions, detail::deduceAccessMode< Type1, Type1 >(), detail::deduceAccessTarget< Type1, Type1 >(target::device), access::placeholder::true_t, ext::oneapi::accessor_property_list< PropsT... >> | |
template<typename DataT , int Dimensions, typename AllocatorT , typename Type1 , typename Type2 > | |
accessor (buffer< DataT, Dimensions, AllocatorT >, Type1, Type2) -> accessor< DataT, Dimensions, detail::deduceAccessMode< Type1, Type2 >(), detail::deduceAccessTarget< Type1, Type2 >(target::device), access::placeholder::true_t > | |
template<typename DataT , int Dimensions, typename AllocatorT , typename Type1 , typename Type2 , typename... PropsT> | |
accessor (buffer< DataT, Dimensions, AllocatorT >, Type1, Type2, const ext::oneapi::accessor_property_list< PropsT... > &) -> accessor< DataT, Dimensions, detail::deduceAccessMode< Type1, Type2 >(), detail::deduceAccessTarget< Type1, Type2 >(target::device), access::placeholder::true_t, ext::oneapi::accessor_property_list< PropsT... >> | |
template<typename DataT , int Dimensions, typename AllocatorT , typename Type1 , typename Type2 , typename Type3 > | |
accessor (buffer< DataT, Dimensions, AllocatorT >, Type1, Type2, Type3) -> accessor< DataT, Dimensions, detail::deduceAccessMode< Type2, Type3 >(), detail::deduceAccessTarget< Type2, Type3 >(target::device), access::placeholder::true_t > | |
template<typename DataT , int Dimensions, typename AllocatorT , typename Type1 , typename Type2 , typename Type3 , typename... PropsT> | |
accessor (buffer< DataT, Dimensions, AllocatorT >, Type1, Type2, Type3, const ext::oneapi::accessor_property_list< PropsT... > &) -> accessor< DataT, Dimensions, detail::deduceAccessMode< Type2, Type3 >(), detail::deduceAccessTarget< Type2, Type3 >(target::device), access::placeholder::true_t, ext::oneapi::accessor_property_list< PropsT... >> | |
template<typename DataT , int Dimensions, typename AllocatorT , typename Type1 , typename Type2 , typename Type3 , typename Type4 > | |
accessor (buffer< DataT, Dimensions, AllocatorT >, Type1, Type2, Type3, Type4) -> accessor< DataT, Dimensions, detail::deduceAccessMode< Type3, Type4 >(), detail::deduceAccessTarget< Type3, Type4 >(target::device), access::placeholder::true_t > | |
template<typename DataT , int Dimensions, typename AllocatorT , typename Type1 , typename Type2 , typename Type3 , typename Type4 , typename... PropsT> | |
accessor (buffer< DataT, Dimensions, AllocatorT >, Type1, Type2, Type3, Type4, const ext::oneapi::accessor_property_list< PropsT... > &) -> accessor< DataT, Dimensions, detail::deduceAccessMode< Type3, Type4 >(), detail::deduceAccessTarget< Type3, Type4 >(target::device), access::placeholder::true_t, ext::oneapi::accessor_property_list< PropsT... >> | |
template<typename DataT , int Dimensions, typename AllocatorT > | |
accessor (buffer< DataT, Dimensions, AllocatorT >, handler &) -> accessor< DataT, Dimensions, access::mode::read_write, target::device, access::placeholder::false_t > | |
template<typename DataT , int Dimensions, typename AllocatorT , typename... PropsT> | |
accessor (buffer< DataT, Dimensions, AllocatorT >, handler &, const ext::oneapi::accessor_property_list< PropsT... > &) -> accessor< DataT, Dimensions, access::mode::read_write, target::device, access::placeholder::false_t, ext::oneapi::accessor_property_list< PropsT... >> | |
template<typename DataT , int Dimensions, typename AllocatorT , typename Type1 > | |
accessor (buffer< DataT, Dimensions, AllocatorT >, handler &, Type1) -> accessor< DataT, Dimensions, detail::deduceAccessMode< Type1, Type1 >(), detail::deduceAccessTarget< Type1, Type1 >(target::device), access::placeholder::false_t > | |
template<typename DataT , int Dimensions, typename AllocatorT , typename Type1 , typename... PropsT> | |
accessor (buffer< DataT, Dimensions, AllocatorT >, handler &, Type1, const ext::oneapi::accessor_property_list< PropsT... > &) -> accessor< DataT, Dimensions, detail::deduceAccessMode< Type1, Type1 >(), detail::deduceAccessTarget< Type1, Type1 >(target::device), access::placeholder::false_t, ext::oneapi::accessor_property_list< PropsT... >> | |
template<typename DataT , int Dimensions, typename AllocatorT , typename Type1 , typename Type2 > | |
accessor (buffer< DataT, Dimensions, AllocatorT >, handler &, Type1, Type2) -> accessor< DataT, Dimensions, detail::deduceAccessMode< Type1, Type2 >(), detail::deduceAccessTarget< Type1, Type2 >(target::device), access::placeholder::false_t > | |
template<typename DataT , int Dimensions, typename AllocatorT , typename Type1 , typename Type2 , typename... PropsT> | |
accessor (buffer< DataT, Dimensions, AllocatorT >, handler &, Type1, Type2, const ext::oneapi::accessor_property_list< PropsT... > &) -> accessor< DataT, Dimensions, detail::deduceAccessMode< Type1, Type2 >(), detail::deduceAccessTarget< Type1, Type2 >(target::device), access::placeholder::false_t, ext::oneapi::accessor_property_list< PropsT... >> | |
template<typename DataT , int Dimensions, typename AllocatorT , typename Type1 , typename Type2 , typename Type3 > | |
accessor (buffer< DataT, Dimensions, AllocatorT >, handler &, Type1, Type2, Type3) -> accessor< DataT, Dimensions, detail::deduceAccessMode< Type2, Type3 >(), detail::deduceAccessTarget< Type2, Type3 >(target::device), access::placeholder::false_t > | |
template<typename DataT , int Dimensions, typename AllocatorT , typename Type1 , typename Type2 , typename Type3 , typename... PropsT> | |
accessor (buffer< DataT, Dimensions, AllocatorT >, handler &, Type1, Type2, Type3, const ext::oneapi::accessor_property_list< PropsT... > &) -> accessor< DataT, Dimensions, detail::deduceAccessMode< Type2, Type3 >(), detail::deduceAccessTarget< Type2, Type3 >(target::device), access::placeholder::false_t, ext::oneapi::accessor_property_list< PropsT... >> | |
template<typename DataT , int Dimensions, typename AllocatorT , typename Type1 , typename Type2 , typename Type3 , typename Type4 > | |
accessor (buffer< DataT, Dimensions, AllocatorT >, handler &, Type1, Type2, Type3, Type4) -> accessor< DataT, Dimensions, detail::deduceAccessMode< Type3, Type4 >(), detail::deduceAccessTarget< Type3, Type4 >(target::device), access::placeholder::false_t > | |
template<typename DataT , int Dimensions, typename AllocatorT , typename Type1 , typename Type2 , typename Type3 , typename Type4 , typename... PropsT> | |
accessor (buffer< DataT, Dimensions, AllocatorT >, handler &, Type1, Type2, Type3, Type4, const ext::oneapi::accessor_property_list< PropsT... > &) -> accessor< DataT, Dimensions, detail::deduceAccessMode< Type3, Type4 >(), detail::deduceAccessTarget< Type3, Type4 >(target::device), access::placeholder::false_t, ext::oneapi::accessor_property_list< PropsT... >> | |
template<typename DataT , int Dimensions, typename AllocatorT > | |
host_accessor (buffer< DataT, Dimensions, AllocatorT >) -> host_accessor< DataT, Dimensions, access::mode::read_write > | |
template<typename DataT , int Dimensions, typename AllocatorT , typename Type1 > | |
host_accessor (buffer< DataT, Dimensions, AllocatorT >, Type1) -> host_accessor< DataT, Dimensions, detail::deduceAccessMode< Type1, Type1 >()> | |
template<typename DataT , int Dimensions, typename AllocatorT , typename Type1 , typename Type2 > | |
host_accessor (buffer< DataT, Dimensions, AllocatorT >, Type1, Type2) -> host_accessor< DataT, Dimensions, detail::deduceAccessMode< Type1, Type2 >()> | |
template<typename DataT , int Dimensions, typename AllocatorT , typename Type1 , typename Type2 , typename Type3 > | |
host_accessor (buffer< DataT, Dimensions, AllocatorT >, Type1, Type2, Type3) -> host_accessor< DataT, Dimensions, detail::deduceAccessMode< Type2, Type3 >()> | |
template<typename DataT , int Dimensions, typename AllocatorT , typename Type1 , typename Type2 , typename Type3 , typename Type4 > | |
host_accessor (buffer< DataT, Dimensions, AllocatorT >, Type1, Type2, Type3, Type4) -> host_accessor< DataT, Dimensions, detail::deduceAccessMode< Type3, Type4 >()> | |
template<typename DataT , int Dimensions, typename AllocatorT , typename Type1 , typename Type2 , typename Type3 , typename Type4 , typename Type5 > | |
host_accessor (buffer< DataT, Dimensions, AllocatorT >, Type1, Type2, Type3, Type4, Type5) -> host_accessor< DataT, Dimensions, detail::deduceAccessMode< Type4, Type5 >()> | |
template<typename DataT , int Dimensions, access::mode AccessMode, access::placeholder IsPlaceholder> | |
class __SYCL_EBO __SYCL_SPECIAL_CLASS | __SYCL_TYPE (accessor) accessor< DataT |
Image accessors. 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> | |
T | atomic_load (atomic< T, addressSpace > Object, memory_order MemoryOrder=memory_order::relaxed) |
template<typename T , access::address_space addressSpace> | |
T | 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> | |
T | atomic_fetch_add (atomic< T, addressSpace > Object, T Operand, memory_order MemoryOrder=memory_order::relaxed) |
template<typename T , access::address_space addressSpace> | |
T | atomic_fetch_sub (atomic< T, addressSpace > Object, T Operand, memory_order MemoryOrder=memory_order::relaxed) |
template<typename T , access::address_space addressSpace> | |
T | atomic_fetch_and (atomic< T, addressSpace > Object, T Operand, memory_order MemoryOrder=memory_order::relaxed) |
template<typename T , access::address_space addressSpace> | |
T | atomic_fetch_or (atomic< T, addressSpace > Object, T Operand, memory_order MemoryOrder=memory_order::relaxed) |
template<typename T , access::address_space addressSpace> | |
T | atomic_fetch_xor (atomic< T, addressSpace > Object, T Operand, memory_order MemoryOrder=memory_order::relaxed) |
template<typename T , access::address_space addressSpace> | |
T | atomic_fetch_min (atomic< T, addressSpace > Object, T Operand, memory_order MemoryOrder=memory_order::relaxed) |
template<typename T , access::address_space addressSpace> | |
T | atomic_fetch_max (atomic< T, addressSpace > Object, T Operand, memory_order MemoryOrder=memory_order::relaxed) |
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> | |
auto | get_native (const queue &Obj) -> backend_return_t< BackendName, queue > |
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 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_t< detail::InteropFeatureSupportMap< Backend >::MakePlatform==true, platform > | make_platform (const typename backend_traits< Backend >::template input_type< platform > &BackendObject) |
template<backend Backend> | |
std::enable_if_t< detail::InteropFeatureSupportMap< Backend >::MakeDevice==true, device > | make_device (const typename backend_traits< Backend >::template input_type< device > &BackendObject) |
template<backend Backend> | |
std::enable_if_t< detail::InteropFeatureSupportMap< Backend >::MakeContext==true, context > | make_context (const typename backend_traits< Backend >::template input_type< context > &BackendObject, const async_handler &Handler={}) |
template<backend Backend> | |
std::enable_if_t< detail::InteropFeatureSupportMap< Backend >::MakeQueue==true, queue > | 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_t< detail::InteropFeatureSupportMap< Backend >::MakeEvent==true, event > | make_event (const typename backend_traits< Backend >::template input_type< event > &BackendObject, const context &TargetContext) |
template<backend Backend> | |
std::enable_if_t< detail::InteropFeatureSupportMap< Backend >::MakeEvent==true, event > | 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_t< detail::InteropFeatureSupportMap< Backend >::MakeBuffer==true &&Backend !=backend::ext_oneapi_level_zero, buffer< T, Dimensions, AllocatorT > > | make_buffer (const typename backend_traits< Backend >::template input_type< buffer< T, Dimensions, AllocatorT >> &BackendObject, const context &TargetContext, event AvailableEvent={}) |
template<backend Backend, int Dimensions = 1, typename AllocatorT = image_allocator> | |
std::enable_if_t< detail::InteropFeatureSupportMap< Backend >::MakeImage==true &&Backend !=backend::ext_oneapi_level_zero, image< Dimensions, AllocatorT > > | make_image (const typename backend_traits< Backend >::template input_type< image< 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_t< detail::InteropFeatureSupportMap< Backend >::MakeKernelBundle==true, kernel_bundle< State > > | 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 > | |
std::enable_if_t< sizeof(To)==sizeof(From) &&std::is_trivially_copyable< From >::value &&std::is_trivially_copyable< To >::value, To > | bit_cast (const From &from) noexcept |
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 > |
float | ceil (float) |
double | ceil (double) |
float | floor (float) |
double | floor (double) |
float | rint (float) |
double | rint (double) |
float | trunc (float) |
double | trunc (double) |
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... | |
int | default_selector_v (const device &dev) |
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, device > | get_native< backend::ext_oneapi_hip, device > (const device &Obj) |
template<> | |
device | make_device< backend::ext_oneapi_hip > (const backend_input_t< backend::ext_oneapi_hip, device > &BackendObject) |
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<> | |
device | make_device< backend::ext_oneapi_level_zero > (const backend_input_t< backend::ext_oneapi_level_zero, device > &BackendObject) |
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<> | |
auto | get_native< backend::ext_oneapi_level_zero, queue > (const queue &Obj) -> backend_return_t< backend::ext_oneapi_level_zero, queue > |
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::executable > | make_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_t< Backend==backend::ext_oneapi_level_zero, buffer< T, Dimensions, AllocatorT > > | 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_t< Backend==backend::ext_oneapi_level_zero, buffer< T, Dimensions, AllocatorT > > | make_buffer (const backend_input_t< backend::ext_oneapi_level_zero, buffer< T, Dimensions, AllocatorT >> &BackendObject, const context &TargetContext) |
template<backend Backend, int Dimensions = 1, typename AllocatorT = image_allocator> | |
std::enable_if_t< Backend==backend::ext_oneapi_level_zero, image< Dimensions, AllocatorT > > | make_image (const backend_input_t< Backend, image< Dimensions, AllocatorT >> &BackendObject, const context &TargetContext, event AvailableEvent) |
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, context > | interop_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<int dimensions> | |
void | group_barrier (ext::oneapi::experimental::root_group< dimensions > G, memory_scope FenceScope=decltype(G)::fence_scope) |
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<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_complex< T >::value &&detail::is_multiplies< T, BinaryOperation >::value)) &&detail::is_native_op< 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_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) |
template<typename Group , typename T , class BinaryOperation > | |
std::enable_if_t<(is_group_v< std::decay_t< Group >> &&detail::is_vector_arithmetic_or_complex< 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< T, BinaryOperation >::value &&detail::is_plus_or_multiplies_if_complex< T, BinaryOperation >::value &&std::is_convertible_v< V, T >), 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_or_complex< V >::value &&detail::is_vector_arithmetic_or_complex< 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 , typename T , class BinaryOperation > | |
std::enable_if_t<(is_group_v< std::decay_t< Group >> &&detail::is_pointer_v< Ptr > &&detail::is_arithmetic_or_complex< typename detail::remove_pointer< Ptr >::type >::value &&detail::is_arithmetic_or_complex< T >::value &&detail::is_plus_or_multiplies_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 , typename Ptr , class BinaryOperation > | |
std::enable_if_t<(is_group_v< std::decay_t< Group >> &&detail::is_pointer_v< Ptr > &&detail::is_arithmetic_or_complex< typename detail::remove_pointer< Ptr >::type >::value &&detail::is_plus_or_multiplies_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 > | |
std::enable_if_t< is_group_v< std::decay_t< Group > >, bool > | any_of_group (Group g, 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_v< Ptr >), 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 g, 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_v< Ptr >), 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 g, 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_v< Ptr >), bool > | joint_none_of (Group g, Ptr first, Ptr last, Predicate pred) |
template<typename Group , typename T > | |
std::enable_if_t<((std::is_same_v< std::decay_t< Group >, sub_group >||sycl::ext::oneapi::experimental::is_user_constructed_group_v< std::decay_t< Group >>) &&(std::is_trivially_copyable_v< T >||detail::is_vec< T >::value)), T > | shift_group_left (Group g, T x, typename Group::linear_id_type delta=1) |
template<typename Group , typename T > | |
std::enable_if_t<((std::is_same_v< std::decay_t< Group >, sub_group >||sycl::ext::oneapi::experimental::is_user_constructed_group_v< std::decay_t< Group >>) &&(std::is_trivially_copyable_v< T >||detail::is_vec< T >::value)), T > | shift_group_right (Group g, T x, typename Group::linear_id_type delta=1) |
template<typename Group , typename T > | |
std::enable_if_t<((std::is_same_v< std::decay_t< Group >, sub_group >||sycl::ext::oneapi::experimental::is_user_constructed_group_v< std::decay_t< Group >>) &&(std::is_trivially_copyable_v< T >||detail::is_vec< T >::value)), T > | permute_group_by_xor (Group g, T x, typename Group::linear_id_type mask) |
template<typename Group , typename T > | |
std::enable_if_t<((std::is_same_v< std::decay_t< Group >, sub_group >||sycl::ext::oneapi::experimental::is_user_constructed_group_v< std::decay_t< Group >>) &&(std::is_trivially_copyable_v< T >||detail::is_vec< T >::value)), T > | select_from_group (Group g, 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_v< T >||detail::is_vec< T >::value)), T > | group_broadcast (Group g, 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_v< T >||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_v< T >||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_complex< T >::value &&detail::is_multiplies< T, BinaryOperation >::value)) &&detail::is_native_op< 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_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) |
template<typename Group , typename T , class BinaryOperation > | |
std::enable_if_t<(is_group_v< std::decay_t< Group >> &&detail::is_vector_arithmetic_or_complex< 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_scalar_arithmetic< V >::value||detail::is_complex< V >::value) &&(detail::is_scalar_arithmetic< T >::value||detail::is_complex< T >::value) &&detail::is_native_op< T, BinaryOperation >::value &&detail::is_plus_or_multiplies_if_complex< T, BinaryOperation >::value &&std::is_convertible_v< V, T >), 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_vector_arithmetic_or_complex< V >::value &&detail::is_vector_arithmetic_or_complex< 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 InPtr , typename OutPtr , typename T , class BinaryOperation > | |
std::enable_if_t<(is_group_v< std::decay_t< Group >> &&detail::is_pointer_v< InPtr > &&detail::is_pointer_v< OutPtr > &&detail::is_arithmetic_or_complex< typename detail::remove_pointer< InPtr >::type >::value &&detail::is_arithmetic_or_complex< typename detail::remove_pointer< OutPtr >::type >::value &&detail::is_arithmetic_or_complex< T >::value &&detail::is_native_op< T, BinaryOperation >::value &&detail::is_plus_or_multiplies_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_v< InPtr > &&detail::is_pointer_v< OutPtr > &&detail::is_arithmetic_or_complex< typename detail::remove_pointer< InPtr >::type >::value &&detail::is_arithmetic_or_complex< typename detail::remove_pointer< OutPtr >::type >::value &&detail::is_native_op< typename detail::remove_pointer< OutPtr >::type, BinaryOperation >::value &&detail::is_plus_or_multiplies_if_complex< typename detail::remove_pointer< OutPtr >::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_scalar_arithmetic< T >::value||(detail::is_complex< T >::value &&detail::is_multiplies< T, BinaryOperation >::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_vector_arithmetic_or_complex< 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_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) |
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< T, BinaryOperation >::value &&detail::is_plus_or_multiplies_if_complex< T, BinaryOperation >::value &&std::is_convertible_v< V, T >), 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_or_complex< V >::value &&detail::is_vector_arithmetic_or_complex< 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_v< InPtr > &&detail::is_pointer_v< OutPtr > &&detail::is_arithmetic_or_complex< typename detail::remove_pointer< InPtr >::type >::value &&detail::is_arithmetic_or_complex< typename detail::remove_pointer< OutPtr >::type >::value &&detail::is_arithmetic_or_complex< T >::value &&detail::is_native_op< T, BinaryOperation >::value &&detail::is_plus_or_multiplies_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_v< InPtr > &&detail::is_pointer_v< OutPtr > &&detail::is_arithmetic_or_complex< typename detail::remove_pointer< InPtr >::type >::value &&detail::is_native_op< typename detail::remove_pointer< OutPtr >::type, BinaryOperation >::value &&detail::is_plus_or_multiplies_if_complex< typename detail::remove_pointer< OutPtr >::type, BinaryOperation >::value), OutPtr > | joint_inclusive_scan (Group g, InPtr first, InPtr last, OutPtr result, BinaryOperation binary_op) |
template<typename Group > | |
std::enable_if_t< is_group_v< Group > > | group_barrier (Group G, memory_scope FenceScope=Group::fence_scope) |
template<backend Backend, int D, typename A > | |
std::enable_if_t< Backend==backend::ext_oneapi_level_zero, image< D, A > > | make_image (const backend_input_t< Backend, image< D, A >> &BackendObject, const context &TargetContext, event AvailableEvent={}) |
template<typename KernelName > | |
kernel_id | get_kernel_id () |
template<bundle_state State> | |
kernel_bundle (kernel_bundle< State > &&) -> kernel_bundle< State > | |
std::vector< kernel_id > | get_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::object > | compile (const kernel_bundle< bundle_state::input > &InputBundle, const std::vector< device > &Devs, const property_list &PropList={}) |
kernel_bundle< bundle_state::object > | compile (const kernel_bundle< bundle_state::input > &InputBundle, const property_list &PropList={}) |
kernel_bundle< bundle_state::executable > | link (const std::vector< kernel_bundle< bundle_state::object >> &ObjectBundles, const std::vector< device > &Devs, const property_list &PropList={}) |
kernel_bundle< bundle_state::executable > | link (const kernel_bundle< bundle_state::object > &ObjectBundle, const property_list &PropList={}) |
kernel_bundle< bundle_state::executable > | link (const std::vector< kernel_bundle< bundle_state::object >> &ObjectBundles, const property_list &PropList={}) |
kernel_bundle< bundle_state::executable > | link (const kernel_bundle< bundle_state::object > &ObjectBundle, const std::vector< device > &Devs, const property_list &PropList={}) |
kernel_bundle< bundle_state::executable > | build (const kernel_bundle< bundle_state::input > &InputBundle, const std::vector< device > &Devs, const property_list &PropList={}) |
kernel_bundle< bundle_state::executable > | build (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<typename ElementType , access::address_space Space, access::decorated DecorateAddress = access::decorated::legacy> | |
class | __SYCL_TYPE (multi_ptr) multi_ptr |
Provides constructors for address space qualified and non address space qualified pointers to allow interoperability between plain C++ and OpenCL C. More... | |
template<access::address_space Space, access::decorated DecorateAddress> | |
class | __SYCL_TYPE (multi_ptr) multi_ptr< const void |
Specialization of multi_ptr for const void. More... | |
multi_ptr () | |
multi_ptr (const multi_ptr &)=default | |
multi_ptr (multi_ptr &&)=default | |
multi_ptr (typename multi_ptr< const void, Space, access::decorated::yes >::pointer ptr) | |
multi_ptr (std::nullptr_t) | |
template<typename ElementType , int Dimensions, access::mode Mode, access::placeholder isPlaceholder, typename PropertyListT , access::address_space RelaySpace = Space, typename = typename std::enable_if_t< RelaySpace == Space && (Space == access::address_space::global_space || Space == access::address_space::generic_space || Space == access::address_space::ext_intel_global_device_space)>> | |
multi_ptr (accessor< ElementType, Dimensions, Mode, target::device, isPlaceholder, PropertyListT > Accessor) | |
template<typename ElementType , int Dimensions, access::mode Mode, access::placeholder isPlaceholder, typename PropertyListT , access::address_space RelaySpace = Space, typename = typename std::enable_if_t< RelaySpace == Space && Space == access::address_space::local_space>> | |
__SYCL2020_DEPRECATED ("multi_ptr construction using target::local specialized " "accessor is deprecated since SYCL 2020") multi_ptr(accessor< ElementType | |
PropertyListT int access::address_space multi_ptr & | operator= (multi_ptr &&)=default |
multi_ptr & | operator= (std::nullptr_t) |
pointer | get () const |
__SYCL2020_DEPRECATED ("Conversion to pointer type is deprecated since SYCL " "2020. Please use get() instead.") operator pointer() const | |
template<typename ElementType , typename = typename std::enable_if_t<std::is_const_v<ElementType>>> | |
operator multi_ptr< ElementType, Space, DecorateAddress > () const | |
template<access::address_space GlobalSpace = access::address_space::global_space, access::address_space RelaySpace = Space, typename = typename std::enable_if_t< RelaySpace == Space && GlobalSpace == access::address_space::global_space && (Space == access::address_space::ext_intel_global_device_space || Space == access::address_space::ext_intel_global_host_space)>> | |
operator multi_ptr< const void, GlobalSpace, DecorateAddress > () const | |
template<typename ElementType > | |
operator multi_ptr< ElementType, Space, DecorateAddress > () const | |
template<access::address_space GlobalSpace = access::address_space::global_space, access::address_space RelaySpace = Space, typename = typename std::enable_if_t< RelaySpace == Space && GlobalSpace == access::address_space::global_space && (Space == access::address_space::ext_intel_global_device_space || Space == access::address_space::ext_intel_global_host_space)>> | |
operator multi_ptr< void, GlobalSpace, DecorateAddress > () const | |
template<typename DataT , int Dimensions> | |
class __SYCL_EBO __SYCL_SPECIAL_CLASS | __SYCL_TYPE (local_accessor) local_accessor |
template<typename T , typename AllocatorT , typename BinaryOperation > | |
auto | reduction (buffer< T, 1, AllocatorT > Var, handler &CGH, BinaryOperation Combiner, 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 > | |
auto | reduction (T *Var, BinaryOperation Combiner, 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>> | |
auto | reduction (span< T, Extent > Span, BinaryOperation Combiner, 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... | |
__precision_manipulator__ | setprecision (int Precision) |
__width_manipulator__ | setw (int Width) |
template<typename T > | |
class __SYCL_SPECIAL_CLASS __SYCL_TYPE(stream) stream std::enable_if_t< std::is_same_v< T, std::byte >, const stream & > | operator<< (const stream &, const T &) |
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 C) |
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_v< ValueType >, 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) |
const stream & | operator<< (const stream &Out, const ext::oneapi::bfloat16 &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) |
template<class _Tp , size_t _Extent> | |
_SYCL_SPAN_INLINE_VISIBILITY auto | as_bytes (span< _Tp, _Extent > __s) noexcept -> decltype(__s.__as_bytes()) |
template<class _Tp , size_t _Extent> | |
_SYCL_SPAN_INLINE_VISIBILITY auto | as_writable_bytes (span< _Tp, _Extent > __s) noexcept -> std::enable_if_t<!std::is_const_v< _Tp >, decltype(__s.__as_writable_bytes())> |
template<class _Tp , size_t _Sz> | |
span (_Tp(&)[_Sz]) -> span< _Tp, _Sz > | |
template<class _Tp , size_t _Sz> | |
span (std::array< _Tp, _Sz > &) -> span< _Tp, _Sz > | |
template<class _Tp , size_t _Sz> | |
span (const std::array< _Tp, _Sz > &) -> span< const _Tp, _Sz > | |
template<class _Container > | |
span (_Container &) -> span< typename _Container::value_type > | |
template<class _Container > | |
span (const _Container &) -> span< const typename _Container::value_type > | |
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 exception with errc::invalid error code if ptr is a host allocation. More... | |
void * | malloc_device (size_t size, const device &dev, const context &ctxt, const detail::code_location &CodeLoc=detail::code_location::current()) |
void * | malloc_device (size_t size, const device &dev, const context &ctxt, const property_list &propList, const detail::code_location &CodeLoc=detail::code_location::current()) |
void * | malloc_device (size_t size, const queue &q, const detail::code_location &CodeLoc=detail::code_location::current()) |
void * | malloc_device (size_t size, const queue &q, const property_list &propList, const detail::code_location &CodeLoc=detail::code_location::current()) |
void * | aligned_alloc_device (size_t alignment, size_t size, const device &dev, const context &ctxt, const detail::code_location &CodeLoc=detail::code_location::current()) |
void * | aligned_alloc_device (size_t alignment, size_t size, const device &dev, const context &ctxt, const property_list &propList, const detail::code_location &CodeLoc=detail::code_location::current()) |
void * | aligned_alloc_device (size_t alignment, size_t size, const queue &q, const detail::code_location &CodeLoc=detail::code_location::current()) |
void * | aligned_alloc_device (size_t alignment, size_t size, const queue &q, const property_list &propList, const detail::code_location &CodeLoc=detail::code_location::current()) |
void | free (void *ptr, const context &ctxt, const detail::code_location &CodeLoc=detail::code_location::current()) |
void | free (void *ptr, const queue &q, const detail::code_location &CodeLoc=detail::code_location::current()) |
void * | malloc_host (size_t size, const context &ctxt, const detail::code_location &CodeLoc=detail::code_location::current()) |
void * | malloc_host (size_t size, const context &ctxt, const property_list &propList, const detail::code_location &CodeLoc=detail::code_location::current()) |
void * | malloc_host (size_t size, const queue &q, const detail::code_location &CodeLoc=detail::code_location::current()) |
void * | malloc_host (size_t size, const queue &q, const property_list &propList, const detail::code_location &CodeLoc=detail::code_location::current()) |
void * | malloc_shared (size_t size, const device &dev, const context &ctxt, const detail::code_location &CodeLoc=detail::code_location::current()) |
void * | malloc_shared (size_t size, const device &dev, const context &ctxt, const property_list &propList, const detail::code_location &CodeLoc=detail::code_location::current()) |
void * | malloc_shared (size_t size, const queue &q, const detail::code_location &CodeLoc=detail::code_location::current()) |
void * | malloc_shared (size_t size, const queue &q, const property_list &propList, const detail::code_location &CodeLoc=detail::code_location::current()) |
void * | aligned_alloc_host (size_t alignment, size_t size, const context &ctxt, const detail::code_location &CodeLoc=detail::code_location::current()) |
void * | aligned_alloc_host (size_t alignment, size_t size, const context &ctxt, const property_list &propList, const detail::code_location &CodeLoc=detail::code_location::current()) |
void * | aligned_alloc_host (size_t alignment, size_t size, const queue &q, const detail::code_location &CodeLoc=detail::code_location::current()) |
void * | aligned_alloc_host (size_t alignment, size_t size, const queue &q, const property_list &propList, const detail::code_location &CodeLoc=detail::code_location::current()) |
void * | aligned_alloc_shared (size_t alignment, size_t size, const device &dev, const context &ctxt, const detail::code_location &CodeLoc=detail::code_location::current()) |
void * | aligned_alloc_shared (size_t alignment, size_t size, const device &dev, const context &ctxt, const property_list &propList, const detail::code_location &CodeLoc=detail::code_location::current()) |
void * | aligned_alloc_shared (size_t alignment, size_t size, const queue &q, const detail::code_location &CodeLoc=detail::code_location::current()) |
void * | aligned_alloc_shared (size_t alignment, size_t size, const queue &q, const property_list &propList, const detail::code_location &CodeLoc=detail::code_location::current()) |
void * | malloc (size_t size, const device &dev, const context &ctxt, usm::alloc kind, const detail::code_location &CodeLoc=detail::code_location::current()) |
void * | malloc (size_t size, const device &dev, const context &ctxt, usm::alloc kind, const property_list &propList, const detail::code_location &CodeLoc=detail::code_location::current()) |
void * | malloc (size_t size, const queue &q, usm::alloc kind, const detail::code_location &CodeLoc=detail::code_location::current()) |
void * | malloc (size_t size, const queue &q, usm::alloc kind, const property_list &propList, const detail::code_location &CodeLoc=detail::code_location::current()) |
void * | aligned_alloc (size_t alignment, size_t size, const device &dev, const context &ctxt, usm::alloc kind, const detail::code_location &CodeLoc=detail::code_location::current()) |
void * | aligned_alloc (size_t alignment, size_t size, const device &dev, const context &ctxt, usm::alloc kind, const property_list &propList, const detail::code_location &CodeLoc=detail::code_location::current()) |
void * | aligned_alloc (size_t alignment, size_t size, const queue &q, usm::alloc kind, const detail::code_location &CodeLoc=detail::code_location::current()) |
void * | aligned_alloc (size_t alignment, size_t size, const queue &q, usm::alloc kind, const property_list &propList, const detail::code_location &CodeLoc=detail::code_location::current()) |
size_t | is_not_power_of_two (size_t Alignment) |
BUILTIN_COMMON (ONE_ARG, degrees, [](auto x) -> decltype(x) { return(180/M_PI) *x;}) BUILTIN_COMMON(ONE_ARG | |
BUILTIN_COMMON (ONE_ARG, sign, [](auto x) -> decltype(x) { using T=decltype(x);if(std::isnan(x)) return T(0.0);if(x > 0) return T(1.0);if(x< 0) return T(-1.0);return x;}) BUILTIN_COMMON(THREE_ARGS | |
BUILTIN_COMMON (TWO_ARGS, step, [](auto x, auto y) -> decltype(x) { return y< x ? 0.0 :1.0;}) BUILTIN_COMMON(THREE_ARGS | |
BUILTIN_COMMON (TWO_ARGS, max, [](auto x, auto y) -> decltype(x) { return(x< y ? y :x);}) BUILTIN_COMMON(TWO_ARGS | |
template<typename T > | |
static T | cross_host_impl (T p0, T p1) |
template<typename T0 , typename T1 > | |
static auto | dot_host_impl (T0 x, T1 y) |
template<typename T > | |
static auto | length_host_impl (T x) |
template<typename T > | |
static auto | fast_length_host_impl (T x) |
template<typename T0 , typename T1 > | |
static auto | distance_host_impl (T0 x, T1 y) |
template<typename T0 , typename T1 > | |
static auto | fast_distance_host_impl (T0 x, T1 y) |
template<typename T > | |
static auto | normalize_host_impl (T x) |
template<typename T > | |
static auto | fast_normalize_host_impl (T x) |
BUILTIN_GENINT (ONE_ARG, abs, [](auto x) -> decltype(x) { if constexpr(std::is_signed_v< decltype(x)>) { return std::abs(x);} else { return x;} }) BUILTIN_GENINT_SU(TWO_ARGS | |
return std::max(x, y) - std | BUILTIN_GENINT_SU (TWO_ARGS, add_sat, [](auto x, auto y) -> decltype(x) { using T=decltype(x);if constexpr(std::is_signed_v< T >) { if(x > 0 &&y > 0) return(x<(std::numeric_limits< T >::max() - y) ?(x+y) :std::numeric_limits< T >::max());if(x< 0 &&y< 0) return(x >(std::numeric_limits< T >::min() - y) ?(x+y) :std::numeric_limits< T >::min());return x+y;} else { return(x<(std::numeric_limits< T >::max() - y) ? x+y :std::numeric_limits< T >::max());} }) BUILTIN_GENINT_SU(TWO_ARGS |
return (x >> one)+(y >> one)+((y &x) &one) | |
BUILTIN_GENINT_SU (TWO_ARGS, rhadd, [](auto x, auto y) -> decltype(x) { const decltype(x) one=1;return(x >> one)+(y >> one)+((y|x) &one);}) BUILTIN_GENINT_SU(THREE_ARGS | |
BUILTIN_GENINT_SU (THREE_ARGS, mad_sat, [](auto a, auto b, auto c) -> decltype(a) { using T=decltype(a);if constexpr(std::is_signed_v< T >) { if constexpr(sizeof(T)==8) { bool neg_prod=(a< 0) ^(b< 0);T mulhi=__s_long_mul_hi(a, b);if(!neg_prod &&mulhi !=0) return std::numeric_limits< T >::max();if(neg_prod &&mulhi !=-1) return std::numeric_limits< T >::min();return sycl::add_sat(T(a *b), c);} else { using UPT=sycl::detail::make_larger_t< T >;UPT mul=UPT(a) *UPT(b);UPT res=mul+UPT(c);const UPT max=std::numeric_limits< T >::max();const UPT min=std::numeric_limits< T >::min();res=std::min(std::max(res, min), max);return T(res);} } else { if constexpr(sizeof(T)==8) { T mulhi=__u_long_mul_hi(a, b);if(mulhi !=0) return std::numeric_limits< T >::max();return sycl::add_sat(T(a *b), c);} else { using UPT=sycl::detail::make_larger_t< T >;UPT mul=UPT(a) *UPT(b);const UPT min=std::numeric_limits< T >::min();const UPT max=std::numeric_limits< T >::max();mul=std::min(std::max(mul, min), max);return sycl::add_sat(T(mul), c);} } }) BUILTIN_GENINT_SU(TWO_ARGS | |
constexpr | if (sizeof(T)==8) |
return (mul >>(sizeof(T) *8)) | |
BUILTIN_GENINT_SU (TWO_ARGS, sub_sat, [](auto x, auto y) -> decltype(x) { using T=decltype(x);if constexpr(std::is_signed_v< T >) { using UT=std::make_unsigned_t< T >;T result=UT(x) - UT(y);if(((x< 0) ^(y< 0)) &&((x< 0) ^(result< 0))) result=result< 0 ? std::numeric_limits< T >::max() :std::numeric_limits< T >::min();return result;} else { return(y<(x - std::numeric_limits< T >::min())) ?(x - y) :std::numeric_limits< T >::min();} }) BUILTIN_GENINT_SU(TWO_ARGS | |
BUILTIN_GENINT_SU (TWO_ARGS, min, [](auto x, auto y) -> decltype(x) { return y< x ? y :x;}) BUILTIN_GENINT_SU(THREE_ARGS | |
template<typename T > | |
static constexpr T | __clz_impl (T x, T m, T n=0) |
template<typename T > | |
static constexpr T | __clz (T x) |
template<typename T > | |
static constexpr T | __ctz_impl (T x, T m, T n=0) |
template<typename T > | |
static constexpr T | __ctz (T x) |
BUILTIN_GENINT (TWO_ARGS, rotate, [](auto x, auto n) -> decltype(x) { using T=decltype(x);using UT=std::make_unsigned_t< T >;constexpr UT size=sizeof(x) *8;UT xu=UT(x);UT nu=UT(n) &(size - 1);return(xu<< nu)|(xu >>(size - nu));}) template< typename T > static inline const expr T __popcount_impl(T x | |
BUILTIN_GENF_CUSTOM (ONE_ARG, acospi, [](auto x) -> decltype(x) { return std::acos(x)/M_PI;}) BUILTIN_GENF_CUSTOM(ONE_ARG | |
BUILTIN_GENF_CUSTOM (ONE_ARG, atanpi, [](auto x) -> decltype(x) { return std::atan(x)/M_PI;}) BUILTIN_GENF_CUSTOM(TWO_ARGS | |
BUILTIN_GENF_CUSTOM (ONE_ARG, cospi, [](auto x) -> decltype(x) { return std::sin(M_PI *(0.5 - x));}) BUILTIN_GENF_CUSTOM(ONE_ARG | |
BUILTIN_GENF_CUSTOM (THREE_ARGS, mad, [](auto x, auto y, auto z) -> decltype(x) { return(x *y)+z;}) BUILTIN_GENF_CUSTOM(TWO_ARGS | |
if (std::fabs(y) > std::fabs(x)) return y | |
BUILTIN_GENF_CUSTOM (TWO_ARGS, minmag, [](auto x, auto y) -> decltype(x) { if(std::fabs(x)< std::fabs(y)) return x;if(std::fabs(y)< std::fabs(x)) return y;return std::fmin(x, y);}) BUILTIN_GENF_CUSTOM(TWO_ARGS | |
return(x >=T(0)) ? T(std | BUILTIN_GENF_CUSTOM (ONE_ARG, rsqrt, [](auto x) -> decltype(x) { return decltype(x){1.0}/std::sqrt(x);}) BUILTIN_GENF_CUSTOM(ONE_ARG |
BUILTIN_GENF_CUSTOM (ONE_ARG, tanpi, [](auto x) -> decltype(x) { double y=x - std::floor(x);return 1.0/std::tan((0.5 - y) *M_PI);}) BUILTIN_GENF_CUSTOM(TWO_ARGS | |
template<typename T > | |
static auto | process_arg_for_macos (T x) |
REL_BUILTIN_CUSTOM (TWO_ARGS, isequal,([](auto x, auto y) { return x==y;})) REL_BUILTIN_CUSTOM(TWO_ARGS | |
REL_BUILTIN_CUSTOM (TWO_ARGS, isgreater,([](auto x, auto y) { return x > y;})) REL_BUILTIN_CUSTOM(TWO_ARGS | |
REL_BUILTIN_CUSTOM (TWO_ARGS, isless,([](auto x, auto y) { return x< y;})) REL_BUILTIN_CUSTOM(TWO_ARGS | |
REL_BUILTIN_CUSTOM (TWO_ARGS, islessgreater,([](auto x, auto y) { return x< y||x > y;})) REL_BUILTIN_CUSTOM(TWO_ARGS | |
namespace | __SYCL2020_DEPRECATED ("use 'ext::oneapi' instead") ONEAPI |
namespace | __SYCL2020_DEPRECATED ("use 'ext::intel::experimental' instead") INTEL |
void * | malloc (size_t Size, const device &Dev, const context &Ctxt, alloc Kind, const property_list &PropList, const detail::code_location &CodeLoc) |
void * | malloc (size_t Size, const device &Dev, const context &Ctxt, alloc Kind, const detail::code_location &CodeLoc) |
void * | malloc (size_t Size, const queue &Q, alloc Kind, const detail::code_location &CodeLoc) |
void * | malloc (size_t Size, const queue &Q, alloc Kind, const property_list &PropList, const detail::code_location &CodeLoc) |
void * | aligned_alloc (size_t Alignment, size_t Size, const device &Dev, const context &Ctxt, alloc Kind, const detail::code_location &CodeLoc) |
void * | aligned_alloc (size_t Alignment, size_t Size, const device &Dev, const context &Ctxt, alloc Kind, const property_list &PropList, const detail::code_location &CodeLoc) |
void * | aligned_alloc (size_t Alignment, size_t Size, const queue &Q, alloc Kind, const detail::code_location &CodeLoc) |
void * | aligned_alloc (size_t Alignment, size_t Size, const queue &Q, alloc Kind, const property_list &PropList, const detail::code_location &CodeLoc) |
static void | prepare_for_usm_device_copy (const void *Ptr, size_t Size, const context &Ctxt) |
static void | release_from_usm_device_copy (const void *Ptr, const context &Ctxt) |
template std::vector< device > | device::create_sub_devices< info::partition_property::partition_equally > (size_t ComputeUnits) const |
template std::vector< device > | device::create_sub_devices< info::partition_property::partition_by_counts > (const std::vector< size_t > &Counts) const |
template std::vector< device > | device::create_sub_devices< info::partition_property::partition_by_affinity_domain > (info::partition_affinity_domain AffinityDomain) const |
template std::vector< device > | device::create_sub_devices< info::partition_property::ext_intel_partition_by_cslice > () const |
template<> | |
device | device::get_info_impl< info::device::parent_device > () const |
template<> | |
std::vector< sycl::aspect > | device::get_info_impl< info::device::aspects > () const |
template<> | |
bool | device::get_info_impl< info::device::image_support > () 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) |
static bool | checkContextSupports (const std::shared_ptr< detail::context_impl > &ContextImpl, ur_context_info_t InfoQuery) |
template uint32_t | kernel::get_info< info::kernel_device_specific::max_sub_group_size > (const device &, const sycl::range< 3 > &) const |
template ext::oneapi::experimental::info::kernel_queue_specific::max_num_work_group_sync::return_type | kernel::ext_oneapi_get_info< ext::oneapi::experimental::info::kernel_queue_specific::max_num_work_group_sync > (queue Queue) const |
static event | getBarrierEventForInorderQueueHelper (const detail::QueueImplPtr QueueImpl) |
static size_t | CheckMaxStatementSize (const size_t &MaxStatementSize) |
Variables | |
constexpr mode_tag_t< access_mode::read > | read_only {} |
constexpr mode_tag_t< access_mode::read_write > | read_write {} |
constexpr mode_tag_t< access_mode::write > | write_only {} |
constexpr mode_target_tag_t< access_mode::read, target::constant_buffer > | read_constant {} |
constexpr mode_target_tag_t< access_mode::read, target::host_task > | read_only_host_task |
constexpr mode_target_tag_t< access_mode::read_write, target::host_task > | read_write_host_task |
constexpr mode_target_tag_t< access_mode::write, target::host_task > | write_only_host_task |
class __SYCL_EBO __SYCL_SPECIAL_CLASS | Dimensions |
class __SYCL_EBO __SYCL_SPECIAL_CLASS | AccessMode |
class __SYCL_EBO __SYCL_SPECIAL_CLASS | IsPlaceholder |
template<typename T , int N> | |
class __SYCL_EBO | vec |
template<typename T > | |
constexpr bool | is_device_copyable_v = is_device_copyable<T>::value |
template<class T > | |
constexpr bool | is_group_v = is_group<T>::value |
template<typename BinaryOperation , typename AccumulatorT > | |
constexpr bool | has_known_identity_v |
template<typename BinaryOperation , typename AccumulatorT > | |
constexpr AccumulatorT | known_identity_v |
constexpr auto | memory_scope_work_item = memory_scope::work_item |
constexpr auto | memory_scope_sub_group = memory_scope::sub_group |
constexpr auto | memory_scope_work_group = memory_scope::work_group |
constexpr auto | memory_scope_device = memory_scope::device |
constexpr auto | memory_scope_system = memory_scope::system |
constexpr auto | memory_order_relaxed = memory_order::relaxed |
constexpr auto | memory_order_acquire = memory_order::acquire |
constexpr auto | memory_order_release = memory_order::release |
constexpr auto | memory_order_acq_rel = memory_order::acq_rel |
constexpr auto | memory_order_seq_cst = memory_order::seq_cst |
static constexpr bool | is_decorated |
static constexpr access::address_space | address_space = Space |
Mode | |
isPlaceholder | |
PropertyListT | Accessor |
PropertyListT int access::address_space | RelaySpace = 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 | dynamic_extent = SIZE_MAX |
radians | |
autodecltype(x) | x { return (M_PI / 180) * x |
mix | |
auto auto | y { return (y < x ? y : x) |
auto auto autodecltype(x) | z |
smoothstep | |
auto | t = sycl::clamp((z - x) / (y - x), T{0}, T{1}) |
min | |
abs_diff | |
return std::max(x, y) - std | hadd |
mad_hi | |
mul_hi | |
auto | a |
auto autodecltype(a) | b |
else | |
UPT | a_s = a |
UPT | b_s = b |
UPT | mul = a_s * b_s |
max | |
clamp | |
asinpi | |
atan2pi | |
exp10 | |
maxmag | |
powr | |
return(x >=T(0)) ? T(std | sinpi |
nextafter | |
isnotequal | |
isgreaterequal | |
islessequal | |
isordered | |
constexpr size_t | MaxNumAdditionalArgs = 13 |
static constexpr size_t | MAX_STATEMENT_SIZE |
namespace sycl::_V1::__SYCL2020_DEPRECATED |
Definition at line 94 of file aliases.hpp.
using sycl::_V1::access_mode = typedef access::mode |
Definition at line 72 of file access.hpp.
using sycl::_V1::alloc = typedef sycl::usm::alloc |
Definition at line 108 of file usm_impl.cpp.
using sycl::_V1::async_handler = typedef std::function<void(sycl::exception_list)> |
Definition at line 19 of file async_handler.hpp.
using sycl::_V1::backend_input_t = typedef typename backend_traits<Backend>::template input_type<SYCLObjectT> |
Definition at line 82 of file backend.hpp.
using sycl::_V1::backend_return_t = typedef typename backend_traits<Backend>::template return_type<SYCLObjectT> |
Definition at line 86 of file backend.hpp.
using sycl::_V1::bit_and = typedef std::bit_and<T> |
Definition at line 20 of file functional.hpp.
using sycl::_V1::bit_or = typedef std::bit_or<T> |
Definition at line 21 of file functional.hpp.
using sycl::_V1::bit_xor = typedef std::bit_xor<T> |
Definition at line 22 of file functional.hpp.
using sycl::_V1::buffer_allocator = typedef detail::sycl_memory_object_allocator<DataT> |
Definition at line 52 of file buffer.hpp.
typedef unsigned char sycl::_V1::byte |
using sycl::_V1::constant_ptr = typedef multi_ptr<ElementType, access::address_space::constant_space, access::decorated::legacy> |
Definition at line 37 of file pointers.hpp.
using sycl::_V1::ContextImplPtr = typedef std::shared_ptr<sycl::detail::context_impl> |
Definition at line 25 of file helpers.cpp.
using sycl::_V1::decorated_global_ptr = typedef multi_ptr<ElementType, access::address_space::global_space, access::decorated::yes> |
Definition at line 68 of file pointers.hpp.
using sycl::_V1::decorated_local_ptr = typedef multi_ptr<ElementType, access::address_space::local_space, access::decorated::yes> |
Definition at line 73 of file pointers.hpp.
using sycl::_V1::decorated_private_ptr = typedef multi_ptr<ElementType, access::address_space::private_space, access::decorated::yes> |
Definition at line 78 of file pointers.hpp.
typedef std::ptrdiff_t sycl::_V1::difference_type |
Definition at line 460 of file multi_ptr.hpp.
using sycl::_V1::generic_ptr = typedef multi_ptr<ElementType, access::address_space::generic_space, IsDecorated> |
Definition at line 23 of file pointers.hpp.
using sycl::_V1::global_ptr = typedef multi_ptr<ElementType, access::address_space::global_space, IsDecorated> |
Definition at line 28 of file pointers.hpp.
Definition at line 101 of file aliases.hpp.
using sycl::_V1::image_allocator = typedef detail::aligned_allocator<byte> |
typedef double sycl::_V1::instead |
Definition at line 93 of file aliases.hpp.
using sycl::_V1::local_ptr = typedef multi_ptr<ElementType, access::address_space::local_space, IsDecorated> |
Definition at line 33 of file pointers.hpp.
using sycl::_V1::multiplies = typedef std::multiplies<T> |
Definition at line 19 of file functional.hpp.
using sycl::_V1::pipe = typedef ext::intel::pipe<name, dataT, min_capacity> |
using sycl::_V1::plus = typedef std::plus<T> |
Definition at line 18 of file functional.hpp.
typedef std::conditional_t< is_decorated, decorated_type *, std::add_pointer_t< value_type > > sycl::_V1::pointer |
Definition at line 458 of file multi_ptr.hpp.
using sycl::_V1::private_ptr = typedef multi_ptr<ElementType, access::address_space::private_space, IsDecorated> |
Definition at line 43 of file pointers.hpp.
using sycl::_V1::raw_global_ptr = typedef multi_ptr<ElementType, access::address_space::global_space, access::decorated::no> |
Definition at line 51 of file pointers.hpp.
using sycl::_V1::raw_local_ptr = typedef multi_ptr<ElementType, access::address_space::local_space, access::decorated::no> |
Definition at line 56 of file pointers.hpp.
using sycl::_V1::raw_private_ptr = typedef multi_ptr<ElementType, access::address_space::private_space, access::decorated::no> |
Definition at line 60 of file pointers.hpp.
using sycl::_V1::remove_decoration_t = typedef typename remove_decoration<T>::type |
Definition at line 325 of file access.hpp.
typedef void sycl::_V1::value_type |
Definition at line 457 of file multi_ptr.hpp.
|
strong |
Enumerator | |
---|---|
mirrored_repeat | |
repeat | |
clamp_to_edge | |
clamp | |
none |
Definition at line 23 of file sampler.hpp.
|
strong |
Enumerator | |
---|---|
__SYCL2020_DEPRECATED | |
opencl | |
ext_oneapi_level_zero | |
ext_oneapi_cuda | |
all | |
ext_oneapi_hip | |
ext_oneapi_native_cpu |
Definition at line 18 of file backend_types.hpp.
|
strong |
Enumerator | |
---|---|
input | |
object | |
executable | |
ext_oneapi_source |
Definition at line 14 of file kernel_bundle_enums.hpp.
|
strong |
Enumerator | |
---|---|
normalized | |
unnormalized |
Definition at line 36 of file sampler.hpp.
|
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 31 of file exception.hpp.
|
strong |
Enumerator | |
---|---|
nearest | |
linear |
Definition at line 31 of file sampler.hpp.
|
strong |
|
strong |
|
strong |
|
strong |
Enumerator | |
---|---|
device | |
host_task |
Definition at line 74 of file access.hpp.
|
strong |
Enumerator | |
---|---|
relaxed | |
acquire | |
__consume_unsupported | |
release | |
acq_rel | |
seq_cst |
Definition at line 19 of file memory_enums.hpp.
|
strong |
Enumerator | |
---|---|
work_item | |
sub_group | |
work_group | |
device | |
system |
Definition at line 29 of file memory_enums.hpp.
|
strong |
Enumerator | |
---|---|
dec | |
hex | |
oct | |
noshowbase | |
showbase | |
noshowpos | |
showpos | |
endl | |
flush | |
fixed | |
scientific | |
hexfloat | |
defaultfloat |
Definition at line 769 of file stream.hpp.
|
inlinestaticconstexpr |
Definition at line 225 of file integer_functions.cpp.
|
inlinestaticconstexpr |
Definition at line 222 of file integer_functions.cpp.
|
inlinestaticconstexpr |
Definition at line 236 of file integer_functions.cpp.
|
inlinestaticconstexpr |
Definition at line 232 of file integer_functions.cpp.
sycl::_V1::__SYCL2020_DEPRECATED | ( | "Conversion to pointer type is deprecated since SYCL " "2020. Please use get() instead." | ) | const |
Definition at line 547 of file multi_ptr.hpp.
sycl::_V1::__SYCL2020_DEPRECATED | ( | "multi_ptr construction using target::local specialized " "accessor is deprecated since SYCL 2020" | ) |
class sycl::_V1::__SYCL2020_DEPRECATED | ( | "sycl::atomic is deprecated since SYCL 2020" | ) |
Definition at line 82 of file atomic.hpp.
namespace sycl::_V1::__SYCL2020_DEPRECATED | ( | "use 'ext::intel::experimental' instead" | ) |
Definition at line 1 of file online_compiler.cpp.
namespace sycl::_V1::__SYCL2020_DEPRECATED | ( | "use 'ext::oneapi' instead" | ) |
Definition at line 1 of file filter_selector_impl.cpp.
namespace sycl::_V1::__SYCL2020_DEPRECATED | ( | "use 'ext::oneapi::level_zero' instead" | ) |
Definition at line 240 of file level_zero.hpp.
|
strong |
Definition at line 1 of file aspects.hpp.
class __SYCL_EBO __SYCL_SPECIAL_CLASS sycl::_V1::__SYCL_TYPE | ( | local_accessor | ) |
class sycl::_V1::__SYCL_TYPE | ( | multi_ptr | ) | const |
Specialization of multi_ptr for const void.
class sycl::_V1::__SYCL_TYPE | ( | private_memory | ) |
int sycl::_V1::accelerator_selector_v | ( | const device & | dev | ) |
Definition at line 224 of file device_selector.cpp.
Referenced by sycl::_V1::accelerator_selector::operator()(), and sycl::_V1::detail::select_device().
sycl::_V1::accessor | ( | buffer< DataT, Dimensions, AllocatorT > | , |
const ext::oneapi::accessor_property_list< PropsT... > & | |||
) | -> accessor< DataT, Dimensions, access::mode::read_write, target::device, access::placeholder::true_t, ext::oneapi::accessor_property_list< PropsT... >> |
sycl::_V1::accessor | ( | buffer< DataT, Dimensions, AllocatorT > | , |
handler & | |||
) | -> accessor< DataT, Dimensions, access::mode::read_write, target::device, access::placeholder::false_t > |
sycl::_V1::accessor | ( | buffer< DataT, Dimensions, AllocatorT > | , |
handler & | , | ||
const ext::oneapi::accessor_property_list< PropsT... > & | |||
) | -> accessor< DataT, Dimensions, access::mode::read_write, target::device, access::placeholder::false_t, ext::oneapi::accessor_property_list< PropsT... >> |
sycl::_V1::accessor | ( | buffer< DataT, Dimensions, AllocatorT > | , |
handler & | , | ||
Type1 | |||
) | -> accessor< DataT, Dimensions, detail::deduceAccessMode< Type1, Type1 >(), detail::deduceAccessTarget< Type1, Type1 >(target::device), access::placeholder::false_t > |
sycl::_V1::accessor | ( | buffer< DataT, Dimensions, AllocatorT > | , |
handler & | , | ||
Type1 | , | ||
const ext::oneapi::accessor_property_list< PropsT... > & | |||
) | -> accessor< DataT, Dimensions, detail::deduceAccessMode< Type1, Type1 >(), detail::deduceAccessTarget< Type1, Type1 >(target::device), access::placeholder::false_t, ext::oneapi::accessor_property_list< PropsT... >> |
sycl::_V1::accessor | ( | buffer< DataT, Dimensions, AllocatorT > | , |
handler & | , | ||
Type1 | , | ||
Type2 | |||
) | -> accessor< DataT, Dimensions, detail::deduceAccessMode< Type1, Type2 >(), detail::deduceAccessTarget< Type1, Type2 >(target::device), access::placeholder::false_t > |
sycl::_V1::accessor | ( | buffer< DataT, Dimensions, AllocatorT > | , |
handler & | , | ||
Type1 | , | ||
Type2 | , | ||
const ext::oneapi::accessor_property_list< PropsT... > & | |||
) | -> accessor< DataT, Dimensions, detail::deduceAccessMode< Type1, Type2 >(), detail::deduceAccessTarget< Type1, Type2 >(target::device), access::placeholder::false_t, ext::oneapi::accessor_property_list< PropsT... >> |
sycl::_V1::accessor | ( | buffer< DataT, Dimensions, AllocatorT > | , |
handler & | , | ||
Type1 | , | ||
Type2 | , | ||
Type3 | |||
) | -> accessor< DataT, Dimensions, detail::deduceAccessMode< Type2, Type3 >(), detail::deduceAccessTarget< Type2, Type3 >(target::device), access::placeholder::false_t > |
sycl::_V1::accessor | ( | buffer< DataT, Dimensions, AllocatorT > | , |
handler & | , | ||
Type1 | , | ||
Type2 | , | ||
Type3 | , | ||
const ext::oneapi::accessor_property_list< PropsT... > & | |||
) | -> accessor< DataT, Dimensions, detail::deduceAccessMode< Type2, Type3 >(), detail::deduceAccessTarget< Type2, Type3 >(target::device), access::placeholder::false_t, ext::oneapi::accessor_property_list< PropsT... >> |
sycl::_V1::accessor | ( | buffer< DataT, Dimensions, AllocatorT > | , |
handler & | , | ||
Type1 | , | ||
Type2 | , | ||
Type3 | , | ||
Type4 | |||
) | -> accessor< DataT, Dimensions, detail::deduceAccessMode< Type3, Type4 >(), detail::deduceAccessTarget< Type3, Type4 >(target::device), access::placeholder::false_t > |
sycl::_V1::accessor | ( | buffer< DataT, Dimensions, AllocatorT > | , |
handler & | , | ||
Type1 | , | ||
Type2 | , | ||
Type3 | , | ||
Type4 | , | ||
const ext::oneapi::accessor_property_list< PropsT... > & | |||
) | -> accessor< DataT, Dimensions, detail::deduceAccessMode< Type3, Type4 >(), detail::deduceAccessTarget< Type3, Type4 >(target::device), access::placeholder::false_t, ext::oneapi::accessor_property_list< PropsT... >> |
sycl::_V1::accessor | ( | buffer< DataT, Dimensions, AllocatorT > | , |
Type1 | |||
) | -> accessor< DataT, Dimensions, detail::deduceAccessMode< Type1, Type1 >(), detail::deduceAccessTarget< Type1, Type1 >(target::device), access::placeholder::true_t > |
sycl::_V1::accessor | ( | buffer< DataT, Dimensions, AllocatorT > | , |
Type1 | , | ||
const ext::oneapi::accessor_property_list< PropsT... > & | |||
) | -> accessor< DataT, Dimensions, detail::deduceAccessMode< Type1, Type1 >(), detail::deduceAccessTarget< Type1, Type1 >(target::device), access::placeholder::true_t, ext::oneapi::accessor_property_list< PropsT... >> |
sycl::_V1::accessor | ( | buffer< DataT, Dimensions, AllocatorT > | , |
Type1 | , | ||
Type2 | |||
) | -> accessor< DataT, Dimensions, detail::deduceAccessMode< Type1, Type2 >(), detail::deduceAccessTarget< Type1, Type2 >(target::device), access::placeholder::true_t > |
sycl::_V1::accessor | ( | buffer< DataT, Dimensions, AllocatorT > | , |
Type1 | , | ||
Type2 | , | ||
const ext::oneapi::accessor_property_list< PropsT... > & | |||
) | -> accessor< DataT, Dimensions, detail::deduceAccessMode< Type1, Type2 >(), detail::deduceAccessTarget< Type1, Type2 >(target::device), access::placeholder::true_t, ext::oneapi::accessor_property_list< PropsT... >> |
sycl::_V1::accessor | ( | buffer< DataT, Dimensions, AllocatorT > | , |
Type1 | , | ||
Type2 | , | ||
Type3 | |||
) | -> accessor< DataT, Dimensions, detail::deduceAccessMode< Type2, Type3 >(), detail::deduceAccessTarget< Type2, Type3 >(target::device), access::placeholder::true_t > |
sycl::_V1::accessor | ( | buffer< DataT, Dimensions, AllocatorT > | , |
Type1 | , | ||
Type2 | , | ||
Type3 | , | ||
const ext::oneapi::accessor_property_list< PropsT... > & | |||
) | -> accessor< DataT, Dimensions, detail::deduceAccessMode< Type2, Type3 >(), detail::deduceAccessTarget< Type2, Type3 >(target::device), access::placeholder::true_t, ext::oneapi::accessor_property_list< PropsT... >> |
sycl::_V1::accessor | ( | buffer< DataT, Dimensions, AllocatorT > | , |
Type1 | , | ||
Type2 | , | ||
Type3 | , | ||
Type4 | |||
) | -> accessor< DataT, Dimensions, detail::deduceAccessMode< Type3, Type4 >(), detail::deduceAccessTarget< Type3, Type4 >(target::device), access::placeholder::true_t > |
sycl::_V1::accessor | ( | buffer< DataT, Dimensions, AllocatorT > | , |
Type1 | , | ||
Type2 | , | ||
Type3 | , | ||
Type4 | , | ||
const ext::oneapi::accessor_property_list< PropsT... > & | |||
) | -> accessor< DataT, Dimensions, detail::deduceAccessMode< Type3, Type4 >(), detail::deduceAccessTarget< Type3, Type4 >(target::device), access::placeholder::true_t, ext::oneapi::accessor_property_list< PropsT... >> |
|
static |
Definition at line 637 of file handler.cpp.
void* sycl::_V1::aligned_alloc | ( | size_t | Alignment, |
size_t | Size, | ||
const device & | Dev, | ||
const context & | Ctxt, | ||
alloc | Kind, | ||
const detail::code_location & | CodeLoc | ||
) |
Definition at line 478 of file usm_impl.cpp.
void* sycl::_V1::aligned_alloc | ( | size_t | Alignment, |
size_t | Size, | ||
const device & | Dev, | ||
const context & | Ctxt, | ||
alloc | Kind, | ||
const property_list & | PropList, | ||
const detail::code_location & | CodeLoc | ||
) |
Definition at line 488 of file usm_impl.cpp.
void* sycl::_V1::aligned_alloc | ( | size_t | alignment, |
size_t | size, | ||
const device & | dev, | ||
const context & | ctxt, | ||
usm::alloc | kind, | ||
const detail::code_location & | CodeLoc = detail::code_location::current() |
||
) |
void* sycl::_V1::aligned_alloc | ( | size_t | alignment, |
size_t | size, | ||
const device & | dev, | ||
const context & | ctxt, | ||
usm::alloc | kind, | ||
const property_list & | propList = {} , |
||
const detail::code_location & | CodeLoc = detail::code_location::current() |
||
) |
void* sycl::_V1::aligned_alloc | ( | size_t | Alignment, |
size_t | Size, | ||
const queue & | Q, | ||
alloc | Kind, | ||
const detail::code_location & | CodeLoc | ||
) |
Definition at line 498 of file usm_impl.cpp.
void* sycl::_V1::aligned_alloc | ( | size_t | Alignment, |
size_t | Size, | ||
const queue & | Q, | ||
alloc | Kind, | ||
const property_list & | PropList, | ||
const detail::code_location & | CodeLoc | ||
) |
Definition at line 508 of file usm_impl.cpp.
void* sycl::_V1::aligned_alloc | ( | size_t | alignment, |
size_t | size, | ||
const queue & | q, | ||
usm::alloc | kind, | ||
const detail::code_location & | CodeLoc = detail::code_location::current() |
||
) |
void* sycl::_V1::aligned_alloc | ( | size_t | alignment, |
size_t | size, | ||
const queue & | q, | ||
usm::alloc | kind, | ||
const property_list & | propList = {} , |
||
const detail::code_location & | CodeLoc = detail::code_location::current() |
||
) |
void * sycl::_V1::aligned_alloc_device | ( | size_t | alignment, |
size_t | size, | ||
const device & | dev, | ||
const context & | ctxt, | ||
const detail::code_location & | CodeLoc = detail::code_location::current() |
||
) |
Definition at line 307 of file usm_impl.cpp.
void * sycl::_V1::aligned_alloc_device | ( | size_t | alignment, |
size_t | size, | ||
const device & | dev, | ||
const context & | ctxt, | ||
const property_list & | propList = {} , |
||
const detail::code_location & | CodeLoc = detail::code_location::current() |
||
) |
void * sycl::_V1::aligned_alloc_device | ( | size_t | alignment, |
size_t | size, | ||
const queue & | q, | ||
const detail::code_location & | CodeLoc = detail::code_location::current() |
||
) |
Definition at line 321 of file usm_impl.cpp.
void * sycl::_V1::aligned_alloc_device | ( | size_t | alignment, |
size_t | size, | ||
const queue & | q, | ||
const property_list & | propList = {} , |
||
const detail::code_location & | CodeLoc = detail::code_location::current() |
||
) |
void * sycl::_V1::aligned_alloc_host | ( | size_t | alignment, |
size_t | size, | ||
const context & | ctxt, | ||
const detail::code_location & | CodeLoc = detail::code_location::current() |
||
) |
Definition at line 391 of file usm_impl.cpp.
void * sycl::_V1::aligned_alloc_host | ( | size_t | alignment, |
size_t | size, | ||
const context & | ctxt, | ||
const property_list & | propList = {} , |
||
const detail::code_location & | CodeLoc = detail::code_location::current() |
||
) |
void * sycl::_V1::aligned_alloc_host | ( | size_t | alignment, |
size_t | size, | ||
const queue & | q, | ||
const detail::code_location & | CodeLoc = detail::code_location::current() |
||
) |
Definition at line 402 of file usm_impl.cpp.
void * sycl::_V1::aligned_alloc_host | ( | size_t | alignment, |
size_t | size, | ||
const queue & | q, | ||
const property_list & | propList = {} , |
||
const detail::code_location & | CodeLoc = detail::code_location::current() |
||
) |
void * sycl::_V1::aligned_alloc_shared | ( | size_t | alignment, |
size_t | size, | ||
const device & | dev, | ||
const context & | ctxt, | ||
const detail::code_location & | CodeLoc = detail::code_location::current() |
||
) |
Definition at line 414 of file usm_impl.cpp.
void * sycl::_V1::aligned_alloc_shared | ( | size_t | alignment, |
size_t | size, | ||
const device & | dev, | ||
const context & | ctxt, | ||
const property_list & | propList = {} , |
||
const detail::code_location & | CodeLoc = detail::code_location::current() |
||
) |
void * sycl::_V1::aligned_alloc_shared | ( | size_t | alignment, |
size_t | size, | ||
const queue & | q, | ||
const detail::code_location & | CodeLoc = detail::code_location::current() |
||
) |
Definition at line 428 of file usm_impl.cpp.
void * sycl::_V1::aligned_alloc_shared | ( | size_t | alignment, |
size_t | size, | ||
const queue & | q, | ||
const property_list & | propList = {} , |
||
const detail::code_location & | CodeLoc = detail::code_location::current() |
||
) |
std::enable_if_t<is_group_v<std::decay_t<Group> >, bool> sycl::_V1::all_of_group | ( | Group | g, |
bool | pred | ||
) |
Definition at line 436 of file group_algorithm.hpp.
std::enable_if_t<is_group_v<std::decay_t<Group> >, bool> sycl::_V1::all_of_group | ( | Group | g, |
T | x, | ||
Predicate | pred | ||
) |
Definition at line 455 of file group_algorithm.hpp.
std::enable_if_t<is_group_v<std::decay_t<Group> >, bool> sycl::_V1::any_of_group | ( | Group | g, |
bool | pred | ||
) |
Definition at line 390 of file group_algorithm.hpp.
std::enable_if_t<is_group_v<Group>, bool> sycl::_V1::any_of_group | ( | Group | g, |
T | x, | ||
Predicate | pred | ||
) |
Definition at line 408 of file group_algorithm.hpp.
|
noexcept |
Definition at line 606 of file sycl_span.hpp.
|
noexcept |
Definition at line 613 of file sycl_span.hpp.
detail::DSelectorInvocableType sycl::_V1::aspect_selector | ( | ) |
Definition at line 157 of file device_selector.hpp.
detail::DSelectorInvocableType sycl::_V1::aspect_selector | ( | AspectListT... | AspectList | ) |
Definition at line 147 of file device_selector.hpp.
detail::DSelectorInvocableType sycl::_V1::aspect_selector | ( | const std::vector< aspect > & | RequireList, |
const std::vector< aspect > & | DenyList = {} |
||
) |
Definition at line 236 of file device_selector.cpp.
bool sycl::_V1::atomic_compare_exchange_strong | ( | atomic< T, addressSpace > | Object, |
T & | Expected, | ||
T | Desired, | ||
memory_order | SuccessOrder = memory_order::relaxed , |
||
memory_order | FailOrder = memory_order::relaxed |
||
) |
Definition at line 354 of file atomic.hpp.
T sycl::_V1::atomic_exchange | ( | atomic< T, addressSpace > | Object, |
T | Operand, | ||
memory_order | MemoryOrder = memory_order::relaxed |
||
) |
Definition at line 348 of file atomic.hpp.
|
inline |
Definition at line 22 of file atomic_fence.hpp.
T sycl::_V1::atomic_fetch_add | ( | atomic< T, addressSpace > | Object, |
T | Operand, | ||
memory_order | MemoryOrder = memory_order::relaxed |
||
) |
Definition at line 363 of file atomic.hpp.
T sycl::_V1::atomic_fetch_and | ( | atomic< T, addressSpace > | Object, |
T | Operand, | ||
memory_order | MemoryOrder = memory_order::relaxed |
||
) |
Definition at line 375 of file atomic.hpp.
T sycl::_V1::atomic_fetch_max | ( | atomic< T, addressSpace > | Object, |
T | Operand, | ||
memory_order | MemoryOrder = memory_order::relaxed |
||
) |
Definition at line 399 of file atomic.hpp.
T sycl::_V1::atomic_fetch_min | ( | atomic< T, addressSpace > | Object, |
T | Operand, | ||
memory_order | MemoryOrder = memory_order::relaxed |
||
) |
Definition at line 393 of file atomic.hpp.
T sycl::_V1::atomic_fetch_or | ( | atomic< T, addressSpace > | Object, |
T | Operand, | ||
memory_order | MemoryOrder = memory_order::relaxed |
||
) |
Definition at line 381 of file atomic.hpp.
T sycl::_V1::atomic_fetch_sub | ( | atomic< T, addressSpace > | Object, |
T | Operand, | ||
memory_order | MemoryOrder = memory_order::relaxed |
||
) |
Definition at line 369 of file atomic.hpp.
T sycl::_V1::atomic_fetch_xor | ( | atomic< T, addressSpace > | Object, |
T | Operand, | ||
memory_order | MemoryOrder = memory_order::relaxed |
||
) |
Definition at line 387 of file atomic.hpp.
T sycl::_V1::atomic_load | ( | atomic< T, addressSpace > | Object, |
memory_order | MemoryOrder = memory_order::relaxed |
||
) |
Definition at line 342 of file atomic.hpp.
void sycl::_V1::atomic_store | ( | atomic< T, addressSpace > | Object, |
T | Operand, | ||
memory_order | MemoryOrder = memory_order::relaxed |
||
) |
Definition at line 336 of file atomic.hpp.
|
noexcept |
Definition at line 52 of file bit_cast.hpp.
|
inline |
Definition at line 888 of file kernel_bundle.hpp.
|
inline |
Definition at line 877 of file kernel_bundle.hpp.
Referenced by sycl::_V1::detail::ProgramManager::bringSYCLDeviceImagesToState(), sycl::_V1::detail::ProgramManager::build(), and sycl::_V1::detail::ProgramManager::getOrCreateMaterializedKernel().
sycl::_V1::BUILTIN_COMMON | ( | ONE_ARG | , |
degrees | , | ||
[] (auto x) -> decltype(x) { return(180/M_PI) *x;} | |||
) |
sycl::_V1::BUILTIN_COMMON | ( | ONE_ARG | , |
sign | , | ||
[] (auto x) -> decltype(x) { using T=decltype(x);if(std::isnan(x)) return T(0.0);if(x > 0) return T(1.0);if(x< 0) return T(-1.0);return x;} | |||
) |
sycl::_V1::BUILTIN_COMMON | ( | TWO_ARGS | , |
max | , | ||
[] (auto x, auto y) -> decltype(x) { return(x< y ? y :x);} | |||
) |
sycl::_V1::BUILTIN_COMMON | ( | TWO_ARGS | , |
step | , | ||
[] (auto x, auto y) -> decltype(x) { return y< x ? 0.0 :1.0;} | |||
) |
sycl::_V1::BUILTIN_GENF_CUSTOM | ( | ONE_ARG | , |
acospi | , | ||
[] (auto x) -> decltype(x) { return std::acos(x)/M_PI;} | |||
) |
sycl::_V1::BUILTIN_GENF_CUSTOM | ( | ONE_ARG | , |
atanpi | , | ||
[] (auto x) -> decltype(x) { return std::atan(x)/M_PI;} | |||
) |
sycl::_V1::BUILTIN_GENF_CUSTOM | ( | ONE_ARG | , |
cospi | , | ||
[] (auto x) -> decltype(x) { return std::sin(M_PI *(0.5 - x));} | |||
) |
return (x >= T(0)) ? T(std sycl::_V1::BUILTIN_GENF_CUSTOM | ( | ONE_ARG | , |
rsqrt | , | ||
[] (auto x) -> decltype(x) { return decltype(x){1.0}/std::sqrt(x);} | |||
) |
sycl::_V1::BUILTIN_GENF_CUSTOM | ( | ONE_ARG | , |
tanpi | , | ||
[] (auto x) -> decltype(x) { double y=x - std::floor(x);return 1.0/std::tan((0.5 - y) *M_PI);} | |||
) |
sycl::_V1::BUILTIN_GENF_CUSTOM | ( | THREE_ARGS | , |
mad | , | ||
[] (auto x, auto y, auto z) -> decltype(x) { return(x *y)+z;} | |||
) |
sycl::_V1::BUILTIN_GENF_CUSTOM | ( | TWO_ARGS | , |
minmag | , | ||
[] (auto x, auto y) -> decltype(x) { if(std::fabs(x)< std::fabs(y)) return x;if(std::fabs(y)< std::fabs(x)) return y;return std::fmin(x, y);} | |||
) |
sycl::_V1::BUILTIN_GENINT | ( | ONE_ARG | , |
abs | , | ||
[] (auto x) -> decltype(x) { if constexpr(std::is_signed_v< decltype(x)>) { return std::abs(x);} else { return x;} } | |||
) |
sycl::_V1::BUILTIN_GENINT | ( | TWO_ARGS | , |
rotate | , | ||
[] (auto x, auto n) -> decltype(x) { using T=decltype(x);using UT=std::make_unsigned_t< T >;constexpr UT size=sizeof(x) *8;UT xu=UT(x);UT nu=UT(n) &(size - 1);return(xu<< nu)|(xu >>(size - nu));} | |||
) | const |
sycl::_V1::BUILTIN_GENINT_SU | ( | THREE_ARGS | , |
mad_sat | , | ||
[] (auto a, auto b, auto c) -> decltype(a) { using T=decltype(a);if constexpr(std::is_signed_v< T >) { if constexpr(sizeof(T)==8) { bool neg_prod=(a< 0) ^(b< 0);T mulhi=__s_long_mul_hi(a, b);if(!neg_prod &&mulhi !=0) return std::numeric_limits< T >::max();if(neg_prod &&mulhi !=-1) return std::numeric_limits< T >::min();return sycl::add_sat(T(a *b), c);} else { using UPT=sycl::detail::make_larger_t< T >;UPT mul=UPT(a) *UPT(b);UPT res=mul+UPT(c);const UPT max=std::numeric_limits< T >::max();const UPT min=std::numeric_limits< T >::min();res=std::min(std::max(res, min), max);return T(res);} } else { if constexpr(sizeof(T)==8) { T mulhi=__u_long_mul_hi(a, b);if(mulhi !=0) return std::numeric_limits< T >::max();return sycl::add_sat(T(a *b), c);} else { using UPT=sycl::detail::make_larger_t< T >;UPT mul=UPT(a) *UPT(b);const UPT min=std::numeric_limits< T >::min();const UPT max=std::numeric_limits< T >::max();mul=std::min(std::max(mul, min), max);return sycl::add_sat(T(mul), c);} } } | |||
) |
return std::max (x, y) - std sycl::_V1::BUILTIN_GENINT_SU | ( | TWO_ARGS | , |
add_sat | , | ||
[] (auto x, auto y) -> decltype(x) { using T=decltype(x);if constexpr(std::is_signed_v< T >) { if(x > 0 &&y > 0) return(x<(std::numeric_limits< T >::max() - y) ?(x+y) :std::numeric_limits< T >::max());if(x< 0 &&y< 0) return(x >(std::numeric_limits< T >::min() - y) ?(x+y) :std::numeric_limits< T >::min());return x+y;} else { return(x<(std::numeric_limits< T >::max() - y) ? x+y :std::numeric_limits< T >::max());} } | |||
) |
sycl::_V1::BUILTIN_GENINT_SU | ( | TWO_ARGS | , |
min | , | ||
[] (auto x, auto y) -> decltype(x) { return y< x ? y :x;} | |||
) |
sycl::_V1::BUILTIN_GENINT_SU | ( | TWO_ARGS | , |
rhadd | , | ||
[] (auto x, auto y) -> decltype(x) { const decltype(x) one=1;return(x >> one)+(y >> one)+((y|x) &one);} | |||
) |
sycl::_V1::BUILTIN_GENINT_SU | ( | TWO_ARGS | , |
sub_sat | , | ||
[] (auto x, auto y) -> decltype(x) { using T=decltype(x);if constexpr(std::is_signed_v< T >) { using UT=std::make_unsigned_t< T >;T result=UT(x) - UT(y);if(((x< 0) ^(y< 0)) &&((x< 0) ^(result< 0))) result=result< 0 ? std::numeric_limits< T >::max() :std::numeric_limits< T >::min();return result;} else { return(y<(x - std::numeric_limits< T >::min())) ?(x - y) :std::numeric_limits< T >::min();} } | |||
) |
|
inline |
|
inline |
|
static |
Definition at line 1629 of file handler.cpp.
|
static |
Definition at line 27 of file stream.cpp.
|
inline |
Definition at line 806 of file kernel_bundle.hpp.
|
inline |
Definition at line 795 of file kernel_bundle.hpp.
Referenced by sycl::_V1::detail::ProgramManager::bringSYCLDeviceImagesToState(), and sycl::_V1::detail::kernel_bundle_impl::kernel_bundle_impl().
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 25 of file builtins_esimd.hpp.
int sycl::_V1::cpu_selector_v | ( | const device & | dev | ) |
Definition at line 213 of file device_selector.cpp.
Referenced by sycl::_V1::detail::select_device().
|
inlinestatic |
Definition at line 17 of file geometric_functions.cpp.
int sycl::_V1::default_selector_v | ( | const device & | dev | ) |
Definition at line 178 of file device_selector.cpp.
Referenced by sycl::_V1::detail::context_impl::get_backend_info< info::device::version >(), sycl::_V1::detail::kernel_impl::get_backend_info< info::device::version >(), sycl::_V1::ext::oneapi::detail::filter_selector_impl::operator()(), and sycl::_V1::detail::platform_impl::get_backend_info< info::device::version >().
template std::vector<device> sycl::_V1::device::create_sub_devices< info::partition_property::ext_intel_partition_by_cslice > | ( | ) | const |
template std::vector<device> sycl::_V1::device::create_sub_devices< info::partition_property::partition_by_affinity_domain > | ( | info::partition_affinity_domain | AffinityDomain | ) | const |
template std::vector<device> sycl::_V1::device::create_sub_devices< info::partition_property::partition_by_counts > | ( | const std::vector< size_t > & | Counts | ) | const |
template std::vector<device> sycl::_V1::device::create_sub_devices< info::partition_property::partition_equally > | ( | size_t | ComputeUnits | ) | const |
std::vector<sycl::aspect> sycl::_V1::device::get_info_impl< info::device::aspects > | ( | ) | const |
Definition at line 132 of file device.cpp.
bool sycl::_V1::device::get_info_impl< info::device::image_support > | ( | ) | const |
Definition at line 164 of file device.cpp.
device sycl::_V1::device::get_info_impl< info::device::parent_device > | ( | ) | const |
Definition at line 132 of file device.cpp.
|
inlinestatic |
Definition at line 62 of file geometric_functions.cpp.
|
inlinestatic |
Definition at line 27 of file geometric_functions.cpp.
std::enable_if_t<(is_group_v<std::decay_t<Group>> && (detail::is_scalar_arithmetic<T>::value || (detail::is_complex<T>::value && detail::is_multiplies<T, BinaryOperation>::value)) && detail::is_native_op<T, BinaryOperation>::value), T> sycl::_V1::exclusive_scan_over_group | ( | Group | g, |
T | x, | ||
BinaryOperation | binary_op | ||
) |
Definition at line 683 of file group_algorithm.hpp.
std::enable_if_t<(is_group_v<std::decay_t<Group>> && detail::is_vector_arithmetic_or_complex<T>::value && detail::is_native_op<T, BinaryOperation>::value), T> sycl::_V1::exclusive_scan_over_group | ( | Group | g, |
T | x, | ||
BinaryOperation | binary_op | ||
) |
Definition at line 756 of file group_algorithm.hpp.
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, |
T | x, | ||
BinaryOperation | |||
) |
Definition at line 737 of file group_algorithm.hpp.
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<T, BinaryOperation>::value && detail::is_plus_or_multiplies_if_complex<T, BinaryOperation>::value && std::is_convertible_v<V, T>), T> sycl::_V1::exclusive_scan_over_group | ( | Group | g, |
V | x, | ||
T | init, | ||
BinaryOperation | binary_op | ||
) |
Definition at line 779 of file group_algorithm.hpp.
std::enable_if_t<(is_group_v<std::decay_t<Group>> && detail::is_vector_arithmetic_or_complex<V>::value && detail::is_vector_arithmetic_or_complex<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, |
V | x, | ||
T | init, | ||
BinaryOperation | binary_op | ||
) |
Definition at line 808 of file group_algorithm.hpp.
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 47 of file builtins_esimd.hpp.
|
inlinestatic |
Definition at line 68 of file geometric_functions.cpp.
|
inlinestatic |
Definition at line 56 of file geometric_functions.cpp.
|
inlinestatic |
Definition at line 81 of file geometric_functions.cpp.
|
inline |
|
inline |
void sycl::_V1::free | ( | void * | ptr, |
const context & | ctxt, | ||
const detail::code_location & | CodeLoc = detail::code_location::current() |
||
) |
Definition at line 336 of file usm_impl.cpp.
Referenced by sycl::_V1::detail::OSUtil::alignedFree(), sycl::_V1::usm_allocator< T, AllocKind, Alignment >::deallocate(), and sycl::_V1::detail::reduction_impl_algo< T, BinaryOperation, Dims, Extent, ExplicitIdentity, RedOutVar >::getGroupsCounterAccDiscrete().
void sycl::_V1::free | ( | void * | ptr, |
const queue & | q, | ||
const detail::code_location & | CodeLoc = detail::code_location::current() |
||
) |
Definition at line 341 of file usm_impl.cpp.
pointer_t sycl::_V1::get | ( | ) | const |
Definition at line 544 of file multi_ptr.hpp.
Referenced by sycl::_V1::detail::usm::alignedAlloc(), sycl::_V1::detail::ProgramManager::build(), sycl::_V1::detail::usm::free(), sycl::_V1::detail::ProgramManager::getBuiltURProgram(), sycl::_V1::ext::intel::experimental::fpga_datapath< T >::operator const T &(), sycl::_V1::ext::intel::experimental::fpga_mem< T, ext::oneapi::experimental::detail::properties_t< Props... > >::operator const T &(), sycl::_V1::ext::intel::experimental::fpga_datapath< T >::operator T&(), sycl::_V1::ext::intel::experimental::fpga_mem< T, ext::oneapi::experimental::detail::properties_t< Props... > >::operator T&(), sycl::_V1::ext::oneapi::sub_group_mask::operator[](), and sycl::_V1::ext::intel::experimental::task_sequence< f, oneapi::experimental::detail::properties_t< Props... > >::~task_sequence().
kernel_bundle<State> sycl::_V1::get_kernel_bundle | ( | const context & | Ctx | ) |
Definition at line 539 of file kernel_bundle.hpp.
kernel_bundle<State> sycl::_V1::get_kernel_bundle | ( | const context & | Ctx | ) |
Definition at line 579 of file kernel_bundle.hpp.
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 528 of file kernel_bundle.hpp.
kernel_bundle<State> sycl::_V1::get_kernel_bundle | ( | const context & | Ctx, |
const std::vector< device > & | Devs | ||
) |
Definition at line 585 of file kernel_bundle.hpp.
kernel_bundle<State> sycl::_V1::get_kernel_bundle | ( | const context & | Ctx, |
const std::vector< device > & | Devs, | ||
const std::vector< kernel_id > & | KernelIDs | ||
) |
Definition at line 563 of file kernel_bundle.hpp.
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 637 of file kernel_bundle.hpp.
kernel_bundle<State> sycl::_V1::get_kernel_bundle | ( | const context & | Ctx, |
const std::vector< kernel_id > & | KernelIDs | ||
) |
Definition at line 574 of file kernel_bundle.hpp.
kernel_bundle<State> sycl::_V1::get_kernel_bundle | ( | const context & | Ctx, |
SelectorT | Selector | ||
) |
Definition at line 655 of file kernel_bundle.hpp.
kernel_id sycl::_V1::get_kernel_id | ( | ) |
Definition at line 496 of file kernel_bundle.hpp.
std::vector< kernel_id > sycl::_V1::get_kernel_ids | ( | ) |
Definition at line 303 of file kernel_bundle.cpp.
Referenced by sycl::_V1::kernel_bundle< State >::get_kernel_ids().
|
delete |
auto sycl::_V1::get_native | ( | const buffer< DataT, Dimensions, AllocatorT > & | Obj | ) | -> backend_return_t<BackendName, buffer<DataT, Dimensions, AllocatorT>> |
Definition at line 181 of file backend.hpp.
auto sycl::_V1::get_native | ( | const kernel_bundle< State > & | Obj | ) | -> backend_return_t< BackendName, kernel_bundle< State >> |
Definition at line 170 of file backend.hpp.
auto sycl::_V1::get_native | ( | const queue & | Obj | ) | -> backend_return_t<BackendName, queue> |
Definition at line 149 of file backend.hpp.
auto sycl::_V1::get_native | ( | const SyclObjectT & | Obj | ) | -> backend_return_t< BackendName, SyclObjectT > |
Definition at line 138 of file backend.hpp.
auto sycl::_V1::get_native | ( | const SyclT & | Obj | ) | -> backend_return_t< Backend, SyclT > |
|
inline |
|
inline |
|
inline |
Definition at line 150 of file level_zero.hpp.
Queries the device against which the pointer was allocated Throws an exception with errc::invalid error code if ptr is a host allocation.
Queries the device against which the pointer was allocated.
ptr | is the USM pointer to query |
ctxt | is the sycl context the ptr was allocated in |
Ptr | is the USM pointer to query |
Ctxt | is the sycl context the ptr was allocated in |
Definition at line 573 of file usm_impl.cpp.
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.
ptr | is the USM pointer to query |
ctxt | is the sycl context the ptr was allocated in |
Ptr | is the USM pointer to query |
Ctxt | is the sycl context the ptr was allocated in |
Definition at line 524 of file usm_impl.cpp.
Referenced by sycl::_V1::handler::ext_oneapi_copy(), sycl::_V1::handler::ext_oneapi_copy2d(), sycl::_V1::handler::ext_oneapi_fill2d(), sycl::_V1::handler::ext_oneapi_memcpy2d(), and sycl::_V1::handler::ext_oneapi_memset2d().
|
static |
Definition at line 204 of file queue.cpp.
Referenced by sycl::_V1::queue::ext_oneapi_submit_barrier().
int sycl::_V1::gpu_selector_v | ( | const device & | dev | ) |
Definition at line 202 of file device_selector.cpp.
Referenced by sycl::_V1::detail::select_device().
void sycl::_V1::group_barrier | ( | ext::oneapi::experimental::root_group< dimensions > | G, |
memory_scope | FenceScope = decltype(G)::fence_scope |
||
) |
Definition at line 95 of file root_group.hpp.
Referenced by sycl::_V1::ext::oneapi::experimental::joint_reduce(), and sycl::_V1::ext::oneapi::experimental::detail::reduce_over_group_impl().
std::enable_if_t<is_group_v<Group> > sycl::_V1::group_barrier | ( | Group | G, |
memory_scope | FenceScope = Group::fence_scope |
||
) |
Definition at line 24 of file group_barrier.hpp.
std::enable_if_t<(is_group_v<std::decay_t<Group>> && (std::is_trivially_copyable_v<T> || detail::is_vec<T>::value)), T> sycl::_V1::group_broadcast | ( | Group | g, |
T | x | ||
) |
Definition at line 661 of file group_algorithm.hpp.
std::enable_if_t<(is_group_v<std::decay_t<Group>> && (std::is_trivially_copyable_v<T> || detail::is_vec<T>::value)), T> sycl::_V1::group_broadcast | ( | Group | g, |
T | x, | ||
typename Group::id_type | local_id | ||
) |
Definition at line 618 of file group_algorithm.hpp.
Referenced by sycl::_V1::ext::oneapi::experimental::detail::reduce_over_group_impl().
std::enable_if_t<(is_group_v<std::decay_t<Group>> && (std::is_trivially_copyable_v<T> || detail::is_vec<T>::value)), T> sycl::_V1::group_broadcast | ( | Group | g, |
T | x, | ||
typename Group::linear_id_type | linear_local_id | ||
) |
Definition at line 642 of file group_algorithm.hpp.
bool sycl::_V1::has_kernel_bundle | ( | const context & | Ctx | ) |
Definition at line 696 of file kernel_bundle.hpp.
bool sycl::_V1::has_kernel_bundle | ( | const context & | Ctx | ) |
Definition at line 707 of file kernel_bundle.hpp.
bool sycl::_V1::has_kernel_bundle | ( | const context & | Ctx, |
const std::vector< device > & | Devs | ||
) |
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 686 of file kernel_bundle.hpp.
bool sycl::_V1::has_kernel_bundle | ( | const context & | Ctx, |
const std::vector< device > & | Devs | ||
) |
Definition at line 712 of file kernel_bundle.hpp.
bool sycl::_V1::has_kernel_bundle | ( | const context & | Ctx, |
const std::vector< device > & | Devs, | ||
const std::vector< kernel_id > & | KernelIDs | ||
) |
Definition at line 691 of file kernel_bundle.hpp.
bool sycl::_V1::has_kernel_bundle | ( | const context & | Ctx, |
const std::vector< kernel_id > & | KernelIDs | ||
) |
Definition at line 701 of file kernel_bundle.hpp.
sycl::_V1::host_accessor | ( | buffer< DataT, Dimensions, AllocatorT > | ) | -> host_accessor< DataT, Dimensions, access::mode::read_write > |
sycl::_V1::host_accessor | ( | buffer< DataT, Dimensions, AllocatorT > | , |
Type1 | |||
) | -> host_accessor< DataT, Dimensions, detail::deduceAccessMode< Type1, Type1 >()> |
sycl::_V1::host_accessor | ( | buffer< DataT, Dimensions, AllocatorT > | , |
Type1 | , | ||
Type2 | |||
) | -> host_accessor< DataT, Dimensions, detail::deduceAccessMode< Type1, Type2 >()> |
sycl::_V1::host_accessor | ( | buffer< DataT, Dimensions, AllocatorT > | , |
Type1 | , | ||
Type2 | , | ||
Type3 | |||
) | -> host_accessor< DataT, Dimensions, detail::deduceAccessMode< Type2, Type3 >()> |
sycl::_V1::host_accessor | ( | buffer< DataT, Dimensions, AllocatorT > | , |
Type1 | , | ||
Type2 | , | ||
Type3 | , | ||
Type4 | |||
) | -> host_accessor< DataT, Dimensions, detail::deduceAccessMode< Type3, Type4 >()> |
sycl::_V1::host_accessor | ( | buffer< DataT, Dimensions, AllocatorT > | , |
Type1 | , | ||
Type2 | , | ||
Type3 | , | ||
Type4 | , | ||
Type5 | |||
) | -> host_accessor< DataT, Dimensions, detail::deduceAccessMode< Type4, Type5 >()> |
|
constexpr |
Definition at line 181 of file integer_functions.cpp.
std::enable_if_t<(is_group_v<std::decay_t<Group>> && (detail::is_scalar_arithmetic<T>::value || (detail::is_complex<T>::value && detail::is_multiplies<T, BinaryOperation>::value)) && detail::is_native_op<T, BinaryOperation>::value), T> sycl::_V1::inclusive_scan_over_group | ( | Group | g, |
T | x, | ||
BinaryOperation | binary_op | ||
) |
Definition at line 907 of file group_algorithm.hpp.
std::enable_if_t<(is_group_v<std::decay_t<Group>> && detail::is_vector_arithmetic_or_complex<T>::value && detail::is_native_op<T, BinaryOperation>::value), T> sycl::_V1::inclusive_scan_over_group | ( | Group | g, |
T | x, | ||
BinaryOperation | binary_op | ||
) |
Definition at line 932 of file group_algorithm.hpp.
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, |
T | x, | ||
BinaryOperation | |||
) |
Definition at line 951 of file group_algorithm.hpp.
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<T, BinaryOperation>::value && detail::is_plus_or_multiplies_if_complex<T, BinaryOperation>::value && std::is_convertible_v<V, T>), T> sycl::_V1::inclusive_scan_over_group | ( | Group | g, |
V | x, | ||
BinaryOperation | binary_op, | ||
T | init | ||
) |
Definition at line 976 of file group_algorithm.hpp.
std::enable_if_t<(is_group_v<std::decay_t<Group>> && detail::is_vector_arithmetic_or_complex<V>::value && detail::is_vector_arithmetic_or_complex<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, |
V | x, | ||
BinaryOperation | binary_op, | ||
T | init | ||
) |
Definition at line 999 of file group_algorithm.hpp.
|
inline |
bool sycl::_V1::is_compatible | ( | const device & | Dev | ) |
Definition at line 740 of file kernel_bundle.hpp.
Definition at line 307 of file kernel_bundle.cpp.
|
inline |
sycl::kernel_bundle<State> sycl::_V1::join | ( | const std::vector< sycl::kernel_bundle< State >> & | Bundles | ) |
Definition at line 767 of file kernel_bundle.hpp.
std::enable_if_t<(is_group_v<std::decay_t<Group>> && detail::is_pointer_v<Ptr>), bool> sycl::_V1::joint_all_of | ( | Group | g, |
Ptr | first, | ||
Ptr | last, | ||
Predicate | pred | ||
) |
Definition at line 463 of file group_algorithm.hpp.
std::enable_if_t<(is_group_v<std::decay_t<Group>> && detail::is_pointer_v<Ptr>), bool> sycl::_V1::joint_any_of | ( | Group | g, |
Ptr | first, | ||
Ptr | last, | ||
Predicate | pred | ||
) |
Definition at line 417 of file group_algorithm.hpp.
std::enable_if_t< (is_group_v<std::decay_t<Group>> && detail::is_pointer_v<InPtr> && detail::is_pointer_v<OutPtr> && detail::is_arithmetic_or_complex< typename detail::remove_pointer<InPtr>::type>::value && detail::is_arithmetic_or_complex< typename detail::remove_pointer<OutPtr>::type>::value && detail::is_native_op<typename detail::remove_pointer<OutPtr>::type, BinaryOperation>::value && detail::is_plus_or_multiplies_if_complex< typename detail::remove_pointer<OutPtr>::type, BinaryOperation>::value), OutPtr> sycl::_V1::joint_exclusive_scan | ( | Group | g, |
InPtr | first, | ||
InPtr | last, | ||
OutPtr | result, | ||
BinaryOperation | binary_op | ||
) |
Definition at line 886 of file group_algorithm.hpp.
std::enable_if_t< (is_group_v<std::decay_t<Group>> && detail::is_pointer_v<InPtr> && detail::is_pointer_v<OutPtr> && detail::is_arithmetic_or_complex< typename detail::remove_pointer<InPtr>::type>::value && detail::is_arithmetic_or_complex< typename detail::remove_pointer<OutPtr>::type>::value && detail::is_arithmetic_or_complex<T>::value && detail::is_native_op<T, BinaryOperation>::value && detail::is_plus_or_multiplies_if_complex<T, BinaryOperation>::value), OutPtr> sycl::_V1::joint_exclusive_scan | ( | Group | g, |
InPtr | first, | ||
InPtr | last, | ||
OutPtr | result, | ||
T | init, | ||
BinaryOperation | binary_op | ||
) |
Definition at line 834 of file group_algorithm.hpp.
std::enable_if_t< (is_group_v<std::decay_t<Group>> && detail::is_pointer_v<InPtr> && detail::is_pointer_v<OutPtr> && detail::is_arithmetic_or_complex< typename detail::remove_pointer<InPtr>::type>::value && detail::is_native_op<typename detail::remove_pointer<OutPtr>::type, BinaryOperation>::value && detail::is_plus_or_multiplies_if_complex< typename detail::remove_pointer<OutPtr>::type, BinaryOperation>::value), OutPtr> sycl::_V1::joint_inclusive_scan | ( | Group | g, |
InPtr | first, | ||
InPtr | last, | ||
OutPtr | result, | ||
BinaryOperation | binary_op | ||
) |
Definition at line 1074 of file group_algorithm.hpp.
std::enable_if_t< (is_group_v<std::decay_t<Group>> && detail::is_pointer_v<InPtr> && detail::is_pointer_v<OutPtr> && detail::is_arithmetic_or_complex< typename detail::remove_pointer<InPtr>::type>::value && detail::is_arithmetic_or_complex< typename detail::remove_pointer<OutPtr>::type>::value && detail::is_arithmetic_or_complex<T>::value && detail::is_native_op<T, BinaryOperation>::value && detail::is_plus_or_multiplies_if_complex<T, BinaryOperation>::value), OutPtr> sycl::_V1::joint_inclusive_scan | ( | Group | g, |
InPtr | first, | ||
InPtr | last, | ||
OutPtr | result, | ||
BinaryOperation | binary_op, | ||
T | init | ||
) |
Definition at line 1025 of file group_algorithm.hpp.
std::enable_if_t<(is_group_v<std::decay_t<Group>> && detail::is_pointer_v<Ptr>), bool> sycl::_V1::joint_none_of | ( | Group | g, |
Ptr | first, | ||
Ptr | last, | ||
Predicate | pred | ||
) |
Definition at line 509 of file group_algorithm.hpp.
std::enable_if_t< (is_group_v<std::decay_t<Group>> && detail::is_pointer_v<Ptr> && detail::is_arithmetic_or_complex< typename detail::remove_pointer<Ptr>::type>::value && detail::is_plus_or_multiplies_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 372 of file group_algorithm.hpp.
std::enable_if_t< (is_group_v<std::decay_t<Group>> && detail::is_pointer_v<Ptr> && detail::is_arithmetic_or_complex< typename detail::remove_pointer<Ptr>::type>::value && detail::is_arithmetic_or_complex<T>::value && detail::is_plus_or_multiplies_if_complex<T, BinaryOperation>::value && detail::is_native_op<T, BinaryOperation>::value), T> sycl::_V1::joint_reduce | ( | Group | g, |
Ptr | first, | ||
Ptr | last, | ||
T | init, | ||
BinaryOperation | binary_op | ||
) |
Definition at line 345 of file group_algorithm.hpp.
template ext::oneapi::experimental::info:: kernel_queue_specific::max_num_work_group_sync::return_type sycl::_V1::kernel::ext_oneapi_get_info< ext::oneapi::experimental::info::kernel_queue_specific::max_num_work_group_sync > | ( | queue | Queue | ) | const |
template uint32_t sycl::_V1::kernel::get_info< info::kernel_device_specific::max_sub_group_size > | ( | const device & | , |
const sycl::range< 3 > & | |||
) | const |
sycl::_V1::kernel_bundle | ( | kernel_bundle< State > && | ) | -> kernel_bundle< State > |
|
inlinestatic |
Definition at line 46 of file geometric_functions.cpp.
|
inline |
Definition at line 841 of file kernel_bundle.hpp.
|
inline |
Definition at line 856 of file kernel_bundle.hpp.
|
inline |
Definition at line 848 of file kernel_bundle.hpp.
|
inline |
Definition at line 830 of file kernel_bundle.hpp.
Referenced by sycl::_V1::detail::ProgramManager::bringSYCLDeviceImagesToState().
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 58 of file builtins_esimd.hpp.
std::enable_if_t<Backend == backend::ext_oneapi_level_zero, buffer<T, Dimensions, AllocatorT> > sycl::_V1::make_buffer | ( | const backend_input_t< backend::ext_oneapi_level_zero, buffer< T, Dimensions, AllocatorT >> & | BackendObject, |
const context & | TargetContext | ||
) |
Definition at line 225 of file level_zero.hpp.
std::enable_if_t<Backend == backend::ext_oneapi_level_zero, buffer<T, Dimensions, AllocatorT> > 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 210 of file level_zero.hpp.
std::enable_if_t<detail::InteropFeatureSupportMap<Backend>::MakeBuffer == true && Backend != backend::ext_oneapi_level_zero, buffer<T, Dimensions, AllocatorT> > 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 387 of file backend.hpp.
std::enable_if_t<detail::InteropFeatureSupportMap<Backend>::MakeContext == true, context> sycl::_V1::make_context | ( | const typename backend_traits< Backend >::template input_type< context > & | BackendObject, |
const async_handler & | Handler = {} |
||
) |
Definition at line 337 of file backend.hpp.
|
inline |
Definition at line 50 of file level_zero.hpp.
std::enable_if_t<detail::InteropFeatureSupportMap<Backend>::MakeDevice == true, device> sycl::_V1::make_device | ( | const typename backend_traits< Backend >::template input_type< device > & | BackendObject | ) |
Definition at line 318 of file backend.hpp.
|
inline |
|
inline |
|
inline |
Definition at line 109 of file level_zero.hpp.
|
noexcept |
Constructs an error code using e and sycl_category()
Definition at line 65 of file exception.cpp.
Referenced by sycl::_V1::sub_group::__SYCL_DEPRECATED(), sycl::_V1::detail::AccessModeToVirtualAccessFlags(), sycl::_V1::ext::oneapi::experimental::detail::graph_impl::add(), sycl::_V1::detail::Scheduler::GraphBuilder::addCG(), sycl::_V1::detail::Scheduler::addCommandGraphUpdate(), sycl::_V1::detail::Scheduler::addCopyBack(), sycl::_V1::detail::Scheduler::GraphBuilder::addCopyBack(), sycl::_V1::detail::Scheduler::addHostAccessor(), sycl::_V1::usm_allocator< T, AllocKind, Alignment >::allocate(), sycl::_V1::detail::SYCLMemObjT::allocateMem(), sycl::_V1::detail::MemoryManager::allocateMemSubBuffer(), sycl::_V1::ext::oneapi::experimental::cuda::barrier::arrive(), sycl::_V1::ext::oneapi::experimental::cuda::barrier::arrive_and_drop(), sycl::_V1::ext::oneapi::experimental::cuda::barrier::arrive_and_drop_no_complete(), sycl::_V1::ext::oneapi::experimental::cuda::barrier::arrive_and_wait(), sycl::_V1::ext::oneapi::experimental::cuda::barrier::arrive_copy_async(), sycl::_V1::ext::oneapi::experimental::cuda::barrier::arrive_copy_async_no_inc(), sycl::_V1::ext::oneapi::experimental::cuda::barrier::arrive_no_complete(), sycl::_V1::ext::intel::experimental::task_sequence< f, oneapi::experimental::detail::properties_t< Props... > >::async(), sycl::_V1::buffer< T, dimensions, AllocatorT, __Enabled >::buffer(), sycl::_V1::detail::buffer_impl::buffer_impl(), sycl::_V1::detail::ProgramManager::build(), sycl::_V1::detail::array< dimensions >::check_dimension(), sycl::_V1::detail::checkDevSupportDeviceRequirements(), sycl::_V1::detail::checkDevSupportJointMatrix(), sycl::_V1::detail::checkDevSupportJointMatrixMad(), sycl::_V1::ext::oneapi::experimental::detail::checkOclocLibrary(), sycl::_V1::detail::event_impl::checkProfilingPreconditions(), sycl::_V1::detail::compatibleWithDevice(), sycl::_V1::detail::ProgramManager::compile(), sycl::_V1::detail::Scheduler::GraphBuilder::connectDepEvent(), sycl::_V1::context::context(), sycl::_V1::detail::context_impl::context_impl(), sycl::_V1::detail::ConvertFToS(), sycl::_V1::detail::convertReadData(), sycl::_V1::detail::convertUrBackend(), sycl::_V1::detail::convertWriteData(), sycl::_V1::handler::copy(), sycl::_V1::ext::oneapi::detail::create_filter(), sycl::_V1::detail::device_impl::create_sub_devices(), sycl::_V1::detail::createBinaryProgram(), sycl::_V1::detail::ProgramManager::createURProgram(), sycl::_V1::detail::queue_impl::createUrQueueFlags(), sycl::_V1::handler::depends_on(), sycl::_V1::ext::oneapi::experimental::detail::exec_graph_impl::enqueue(), sycl::_V1::detail::Scheduler::enqueueCommandForCG(), sycl::_V1::detail::Scheduler::enqueueLeavesOfReqUnlocked(), sycl::_V1::detail::Scheduler::enqueueUnblockedCommands(), sycl::_V1::device::ext_oneapi_can_access_peer(), sycl::_V1::queue::ext_oneapi_get_graph(), sycl::_V1::queue::ext_oneapi_get_last_event(), sycl::_V1::queue::ext_oneapi_set_external_event(), sycl::_V1::handler::ext_oneapi_signal_external_semaphore(), sycl::_V1::handler::ext_oneapi_wait_external_semaphore(), sycl::_V1::ext::oneapi::fabs(), sycl::_V1::detail::queue_impl::flush(), sycl::_V1::ext::oneapi::fma(), sycl::_V1::ext::oneapi::fmax(), sycl::_V1::ext::oneapi::fmin(), sycl::_V1::detail::for_each(), sycl::_V1::detail::force_type(), sycl::_V1::ext::intel::experimental::task_sequence< f, oneapi::experimental::detail::properties_t< Props... > >::get(), sycl::_V1::detail::SYCLConfig< ONEAPI_DEVICE_SELECTOR >::get(), sycl::_V1::detail::SYCLConfig< SYCL_QUEUE_THREAD_POOL_SIZE >::get(), sycl::_V1::detail::get_device_info_impl< device, info::device::parent_device >::get(), sycl::_V1::detail::get_device_info_impl< sycl::device, ext::oneapi::experimental::info::device::composite_device >::get(), sycl::_V1::ext::oneapi::experimental::get_ballot_group(), sycl::_V1::ext::oneapi::detail::wi_element< T, NumRows, NumCols, Use, Layout, Group >::get_coord(), sycl::_V1::ext::oneapi::detail::wi_element< sycl::ext::oneapi::bfloat16, NumRows, NumCols, Use, Layout, Group >::get_coord(), sycl::_V1::detail::get_device_info< ext::intel::info::device::device_id >(), sycl::_V1::detail::get_device_info< ext::intel::info::device::free_memory >(), sycl::_V1::detail::get_device_info< ext::intel::info::device::gpu_eu_count >(), sycl::_V1::detail::get_device_info< ext::intel::info::device::gpu_eu_count_per_subslice >(), sycl::_V1::detail::get_device_info< ext::intel::info::device::gpu_eu_simd_width >(), sycl::_V1::detail::get_device_info< ext::intel::info::device::gpu_hw_threads_per_eu >(), sycl::_V1::detail::get_device_info< ext::intel::info::device::gpu_slices >(), sycl::_V1::detail::get_device_info< ext::intel::info::device::gpu_subslices_per_slice >(), sycl::_V1::detail::get_device_info< ext::intel::info::device::max_mem_bandwidth >(), sycl::_V1::detail::get_device_info< ext::intel::info::device::memory_bus_width >(), sycl::_V1::detail::get_device_info< ext::intel::info::device::memory_clock_rate >(), sycl::_V1::detail::get_device_info< ext::intel::info::device::pci_address >(), sycl::_V1::detail::get_device_info< ext::intel::info::device::uuid >(), sycl::_V1::ext::oneapi::experimental::get_fixed_size_group(), sycl::_V1::ext::oneapi::experimental::ballot_group< ParentGroup >::get_group_id(), sycl::_V1::ext::oneapi::experimental::fixed_size_group< PartitionSize, ParentGroup >::get_group_id(), sycl::_V1::ext::oneapi::experimental::opportunistic_group::get_group_id(), sycl::_V1::ext::oneapi::experimental::tangle_group< ParentGroup >::get_group_id(), sycl::_V1::sub_group::get_group_id(), sycl::_V1::ext::oneapi::experimental::ballot_group< ParentGroup >::get_group_linear_id(), sycl::_V1::ext::oneapi::experimental::fixed_size_group< PartitionSize, ParentGroup >::get_group_linear_id(), sycl::_V1::ext::oneapi::experimental::opportunistic_group::get_group_linear_id(), sycl::_V1::ext::oneapi::experimental::tangle_group< ParentGroup >::get_group_linear_id(), sycl::_V1::sub_group::get_group_linear_id(), sycl::_V1::ext::oneapi::experimental::ballot_group< ParentGroup >::get_group_linear_range(), sycl::_V1::ext::oneapi::experimental::fixed_size_group< PartitionSize, ParentGroup >::get_group_linear_range(), sycl::_V1::ext::oneapi::experimental::opportunistic_group::get_group_linear_range(), sycl::_V1::ext::oneapi::experimental::tangle_group< ParentGroup >::get_group_linear_range(), sycl::_V1::ext::oneapi::experimental::ballot_group< ParentGroup >::get_group_range(), sycl::_V1::ext::oneapi::experimental::fixed_size_group< PartitionSize, ParentGroup >::get_group_range(), sycl::_V1::ext::oneapi::experimental::opportunistic_group::get_group_range(), sycl::_V1::ext::oneapi::experimental::tangle_group< ParentGroup >::get_group_range(), sycl::_V1::sub_group::get_group_range(), sycl::_V1::ext::oneapi::experimental::ballot_group< ParentGroup >::get_local_id(), sycl::_V1::ext::oneapi::experimental::fixed_size_group< PartitionSize, ParentGroup >::get_local_id(), sycl::_V1::ext::oneapi::experimental::opportunistic_group::get_local_id(), sycl::_V1::ext::oneapi::experimental::tangle_group< ParentGroup >::get_local_id(), sycl::_V1::sub_group::get_local_id(), sycl::_V1::ext::oneapi::experimental::ballot_group< ParentGroup >::get_local_linear_id(), sycl::_V1::ext::oneapi::experimental::fixed_size_group< PartitionSize, ParentGroup >::get_local_linear_id(), sycl::_V1::ext::oneapi::experimental::opportunistic_group::get_local_linear_id(), sycl::_V1::ext::oneapi::experimental::tangle_group< ParentGroup >::get_local_linear_id(), sycl::_V1::sub_group::get_local_linear_id(), sycl::_V1::ext::oneapi::experimental::ballot_group< ParentGroup >::get_local_linear_range(), sycl::_V1::ext::oneapi::experimental::fixed_size_group< PartitionSize, ParentGroup >::get_local_linear_range(), sycl::_V1::ext::oneapi::experimental::opportunistic_group::get_local_linear_range(), sycl::_V1::ext::oneapi::experimental::tangle_group< ParentGroup >::get_local_linear_range(), sycl::_V1::ext::oneapi::experimental::ballot_group< ParentGroup >::get_local_range(), sycl::_V1::ext::oneapi::experimental::fixed_size_group< PartitionSize, ParentGroup >::get_local_range(), sycl::_V1::ext::oneapi::experimental::opportunistic_group::get_local_range(), sycl::_V1::ext::oneapi::experimental::tangle_group< ParentGroup >::get_local_range(), sycl::_V1::sub_group::get_local_range(), sycl::_V1::sub_group::get_max_local_range(), sycl::_V1::interop_handle::get_native_context(), sycl::_V1::interop_handle::get_native_device(), sycl::_V1::interop_handle::get_native_mem(), sycl::_V1::interop_handle::get_native_queue(), sycl::_V1::ext::oneapi::experimental::this_kernel::get_opportunistic_group(), sycl::_V1::event::get_profiling_info(), sycl::_V1::property_list::get_property(), sycl::_V1::detail::PropertyListBase::get_property_helper(), sycl::_V1::handler::get_specialization_constant(), sycl::_V1::ext::oneapi::experimental::get_tangle_group(), sycl::_V1::detail::device_impl::getCurrentDeviceTime(), sycl::_V1::detail::ProgramManager::getDeviceImage(), sycl::_V1::detail::getDeviceLibExtensionStr(), sycl::_V1::detail::getDeviceLibFilename(), sycl::_V1::detail::CGSemaphoreSignal::getExternalSemaphore(), sycl::_V1::detail::PlatformUtil::getMaxClockFrequency(), sycl::_V1::detail::KernelProgramCache::getOrBuild(), sycl::_V1::detail::getPluginOpaqueData(), sycl::_V1::detail::context_impl::getProgramForDevImgs(), sycl::_V1::detail::ProgramManager::getSYCLDeviceImages(), sycl::_V1::detail::ProgramManager::getSYCLDeviceImagesWithCompatibleState(), sycl::_V1::detail::ProgramManager::getSYCLKernelID(), sycl::_V1::detail::getUrImageCopyFlags(), sycl::_V1::detail::event_impl::getWaitList(), sycl::_V1::detail::enqueue_kernel_launch::handleErrorOrWarning(), sycl::_V1::detail::SYCLMemObjT::handleHostData(), sycl::_V1::detail::enqueue_kernel_launch::handleInvalidValue(), sycl::_V1::detail::enqueue_kernel_launch::handleInvalidWorkGroupSize(), sycl::_V1::detail::enqueue_kernel_launch::handleInvalidWorkItemSize(), sycl::_V1::detail::imageReadSamplerHostImpl(), sycl::_V1::ext::oneapi::experimental::cuda::barrier::initialize(), sycl::_V1::ext::oneapi::experimental::cuda::barrier::invalidate(), sycl::_V1::ext::oneapi::experimental::detail::InvokeOclocQuery(), sycl::_V1::ext::oneapi::experimental::matrix::joint_matrix< Group, T, Use, Rows, Cols, Layout >::joint_matrix(), sycl::_V1::ext::oneapi::experimental::matrix::joint_matrix_apply(), sycl::_V1::ext::intel::experimental::matrix::joint_matrix_apply(), sycl::_V1::ext::oneapi::experimental::matrix::joint_matrix_copy(), sycl::_V1::ext::oneapi::experimental::matrix::joint_matrix_fill(), sycl::_V1::ext::intel::experimental::matrix::joint_matrix_fill_checked(), sycl::_V1::ext::oneapi::experimental::matrix::joint_matrix_load(), sycl::_V1::ext::intel::experimental::matrix::joint_matrix_load_checked(), sycl::_V1::ext::oneapi::experimental::matrix::joint_matrix_mad(), sycl::_V1::ext::oneapi::experimental::matrix::joint_matrix_store(), sycl::_V1::ext::intel::experimental::matrix::joint_matrix_store(), sycl::_V1::ext::intel::experimental::matrix::joint_matrix_store_checked(), sycl::_V1::ext::oneapi::experimental::joint_reduce(), sycl::_V1::detail::kernel_bundle_impl::kernel_bundle_impl(), sycl::_V1::detail::kernel_impl::kernel_impl(), sycl::_V1::ext::oneapi::experimental::cuda::ldg(), sycl::_V1::ext::oneapi::experimental::ballot_group< ParentGroup >::leader(), sycl::_V1::ext::oneapi::experimental::fixed_size_group< PartitionSize, ParentGroup >::leader(), sycl::_V1::ext::oneapi::experimental::opportunistic_group::leader(), sycl::_V1::ext::oneapi::experimental::tangle_group< ParentGroup >::leader(), sycl::_V1::ext::oneapi::detail::wi_data< Group, T, Use, Rows, Cols, Layout >::length(), sycl::_V1::detail::ProgramManager::link(), sycl::_V1::sub_group::load(), sycl::_V1::detail::loadDeviceLibFallback(), sycl::_V1::ext::oneapi::experimental::detail::loadOclocLibrary(), sycl::_V1::detail::make_queue(), sycl::_V1::ext::oneapi::experimental::detail::graph_impl::makeEdge(), sycl::_V1::detail::queue_impl::memcpy(), sycl::_V1::queue::memcpy(), sycl::_V1::handler::memcpy(), sycl::_V1::detail::NestedCallsTracker::NestedCallsTracker(), sycl::_V1::ext::oneapi::experimental::detail::OpenCLC_Supports_Extension(), sycl::_V1::ext::oneapi::experimental::detail::OpenCLC_to_SPIRV(), sycl::_V1::ext::oneapi::detail::wi_element< T, NumRows, NumCols, Use, Layout, Group >::operator bool(), sycl::_V1::ext::oneapi::detail::wi_element< sycl::ext::oneapi::bfloat16, NumRows, NumCols, Use, Layout, Group >::operator bool(), sycl::_V1::ext::oneapi::detail::wi_element< T, NumRows, NumCols, Use, Layout, Group >::operator storage_element_type(), sycl::_V1::ext::oneapi::detail::wi_element< sycl::ext::oneapi::bfloat16, NumRows, NumCols, Use, Layout, Group >::operator sycl::ext::oneapi::bfloat16(), sycl::_V1::detail::DispatchHostTask::operator()(), sycl::_V1::ext::oneapi::detail::filter_selector_impl::operator()(), sycl::_V1::ext::oneapi::detail::wi_element< sycl::ext::oneapi::bfloat16, NumRows, NumCols, Use, Layout, Group >::operator=(), sycl::_V1::ext::oneapi::detail::wi_element< T, NumRows, NumCols, Use, Layout, Group >::operator=(), sycl::_V1::detail::physical_mem_impl::physical_mem_impl(), sycl::_V1::detail::ProgramManager::ProgramManager(), sycl::_V1::detail::queue_impl::queue_impl(), sycl::_V1::detail::readConfig(), sycl::_V1::ext::oneapi::experimental::reduce_over_group(), sycl::_V1::ext::oneapi::experimental::detail::reduce_over_group_impl(), sycl::_V1::detail::reduction_impl< T, BinaryOperation, Dims, Extent, ExplicitIdentity, RedOutVar >::reduction_impl(), sycl::_V1::buffer< T, dimensions, AllocatorT, __Enabled >::reinterpret(), sycl::_V1::detail::NDRangeReduction< reduction::strategy::group_reduce_and_multiple_kernels >::run(), sycl::_V1::detail::NDRangeReduction< reduction::strategy::basic >::run(), sycl::_V1::detail::NDRangeReduction< reduction::strategy::multi >::run(), sycl::_V1::detail::select_device(), sycl::_V1::detail::spec_constant_impl::set(), sycl::_V1::detail::handler_impl::setStateExplicitKernelBundle(), sycl::_V1::detail::handler_impl::setStateSpecConstSet(), sycl::_V1::detail::event_impl::setSubmissionTime(), sycl::_V1::sub_group::store(), sycl::_V1::ext::oneapi::experimental::submit_profiling_tag(), sycl::_V1::detail::SYCLMemObjT::SYCLMemObjT(), sycl::_V1::ext::intel::experimental::task_sequence< f, oneapi::experimental::detail::properties_t< Props... > >::task_sequence(), sycl::_V1::ext::oneapi::experimental::cuda::barrier::test_wait(), sycl::_V1::ext::oneapi::experimental::detail::graph_impl::throwIfGraphRecordingQueue(), sycl::_V1::ext::oneapi::experimental::detail::node_impl::updateAccessor(), sycl::_V1::handler::use_kernel_bundle(), sycl::_V1::ext::oneapi::experimental::cuda::barrier::wait(), sycl::_V1::detail::queue_impl::wait(), sycl::_V1::detail::event_impl::wait(), sycl::_V1::detail::Scheduler::GraphProcessor::waitForEvent(), sycl::_V1::detail::Scheduler::waitForRecordToFinish(), and sycl::_V1::detail::event_impl::waitInternal().
std::enable_if_t<detail::InteropFeatureSupportMap<Backend>::MakeEvent == true, event> sycl::_V1::make_event | ( | const typename backend_traits< Backend >::template input_type< event > & | BackendObject, |
const context & | TargetContext | ||
) |
Definition at line 362 of file backend.hpp.
std::enable_if_t<detail::InteropFeatureSupportMap<Backend>::MakeEvent == true, event> sycl::_V1::make_event | ( | const typename backend_traits< Backend >::template input_type< event > & | BackendObject, |
const context & | TargetContext, | ||
bool | KeepOwnership | ||
) |
Definition at line 372 of file backend.hpp.
|
inline |
|
inline |
Definition at line 164 of file level_zero.hpp.
std::enable_if_t<Backend == backend::ext_oneapi_level_zero, image<D, A> > sycl::_V1::make_image | ( | const backend_input_t< Backend, image< D, A >> & | BackendObject, |
const context & | TargetContext, | ||
event | AvailableEvent = {} |
||
) |
std::enable_if_t<Backend == backend::ext_oneapi_level_zero, image<Dimensions, AllocatorT> > sycl::_V1::make_image | ( | const backend_input_t< Backend, image< Dimensions, AllocatorT >> & | BackendObject, |
const context & | TargetContext, | ||
event | AvailableEvent | ||
) |
Definition at line 240 of file level_zero.hpp.
std::enable_if_t<detail::InteropFeatureSupportMap<Backend>::MakeImage == true && Backend != backend::ext_oneapi_level_zero, image<Dimensions, AllocatorT> > sycl::_V1::make_image | ( | const typename backend_traits< Backend >::template input_type< image< Dimensions, AllocatorT >> & | BackendObject, |
const context & | TargetContext, | ||
event | AvailableEvent = {} |
||
) |
Definition at line 400 of file backend.hpp.
kernel sycl::_V1::make_kernel | ( | const typename backend_traits< Backend >::template input_type< kernel > & | BackendObject, |
const context & | TargetContext | ||
) |
Definition at line 410 of file backend.hpp.
|
inline |
Definition at line 194 of file level_zero.hpp.
std::enable_if_t<detail::InteropFeatureSupportMap<Backend>::MakeKernelBundle == true, kernel_bundle<State> > sycl::_V1::make_kernel_bundle | ( | const typename backend_traits< Backend >::template input_type< kernel_bundle< State >> & | BackendObject, |
const context & | TargetContext | ||
) |
Definition at line 422 of file backend.hpp.
|
inline |
Definition at line 164 of file level_zero.hpp.
std::enable_if_t< detail::InteropFeatureSupportMap<Backend>::MakePlatform == true, platform> sycl::_V1::make_platform | ( | const typename backend_traits< Backend >::template input_type< platform > & | BackendObject | ) |
Definition at line 308 of file backend.hpp.
std::enable_if_t<detail::InteropFeatureSupportMap<Backend>::MakeQueue == true, queue> sycl::_V1::make_queue | ( | const typename backend_traits< Backend >::template input_type< queue > & | BackendObject, |
const context & | TargetContext, | ||
const async_handler | Handler = {} |
||
) |
Definition at line 349 of file backend.hpp.
|
inline |
|
inline |
Definition at line 128 of file level_zero.hpp.
void* sycl::_V1::malloc | ( | size_t | Size, |
const device & | Dev, | ||
const context & | Ctxt, | ||
alloc | Kind, | ||
const detail::code_location & | CodeLoc | ||
) |
Definition at line 453 of file usm_impl.cpp.
void* sycl::_V1::malloc | ( | size_t | Size, |
const device & | Dev, | ||
const context & | Ctxt, | ||
alloc | Kind, | ||
const property_list & | PropList, | ||
const detail::code_location & | CodeLoc | ||
) |
Definition at line 445 of file usm_impl.cpp.
void* sycl::_V1::malloc | ( | size_t | size, |
const device & | dev, | ||
const context & | ctxt, | ||
usm::alloc | kind, | ||
const detail::code_location & | CodeLoc = detail::code_location::current() |
||
) |
void* sycl::_V1::malloc | ( | size_t | size, |
const device & | dev, | ||
const context & | ctxt, | ||
usm::alloc | kind, | ||
const property_list & | propList = {} , |
||
const detail::code_location & | CodeLoc = detail::code_location::current() |
||
) |
void* sycl::_V1::malloc | ( | size_t | Size, |
const queue & | Q, | ||
alloc | Kind, | ||
const detail::code_location & | CodeLoc | ||
) |
Definition at line 461 of file usm_impl.cpp.
void* sycl::_V1::malloc | ( | size_t | Size, |
const queue & | Q, | ||
alloc | Kind, | ||
const property_list & | PropList, | ||
const detail::code_location & | CodeLoc | ||
) |
Definition at line 469 of file usm_impl.cpp.
void* sycl::_V1::malloc | ( | size_t | size, |
const queue & | q, | ||
usm::alloc | kind, | ||
const detail::code_location & | CodeLoc = detail::code_location::current() |
||
) |
void* sycl::_V1::malloc | ( | size_t | size, |
const queue & | q, | ||
usm::alloc | kind, | ||
const property_list & | propList = {} , |
||
const detail::code_location & | CodeLoc = detail::code_location::current() |
||
) |
void * sycl::_V1::malloc_device | ( | size_t | size, |
const device & | dev, | ||
const context & | ctxt, | ||
const detail::code_location & | CodeLoc = detail::code_location::current() |
||
) |
Definition at line 282 of file usm_impl.cpp.
void * sycl::_V1::malloc_device | ( | size_t | size, |
const device & | dev, | ||
const context & | ctxt, | ||
const property_list & | propList = {} , |
||
const detail::code_location & | CodeLoc = detail::code_location::current() |
||
) |
void * sycl::_V1::malloc_device | ( | size_t | size, |
const queue & | q, | ||
const detail::code_location & | CodeLoc = detail::code_location::current() |
||
) |
Definition at line 295 of file usm_impl.cpp.
void * sycl::_V1::malloc_device | ( | size_t | size, |
const queue & | q, | ||
const property_list & | propList = {} , |
||
const detail::code_location & | CodeLoc = detail::code_location::current() |
||
) |
void * sycl::_V1::malloc_host | ( | size_t | size, |
const context & | ctxt, | ||
const detail::code_location & | CodeLoc = detail::code_location::current() |
||
) |
Definition at line 345 of file usm_impl.cpp.
void * sycl::_V1::malloc_host | ( | size_t | size, |
const context & | ctxt, | ||
const property_list & | propList = {} , |
||
const detail::code_location & | CodeLoc = detail::code_location::current() |
||
) |
void * sycl::_V1::malloc_host | ( | size_t | size, |
const queue & | q, | ||
const detail::code_location & | CodeLoc = detail::code_location::current() |
||
) |
Definition at line 356 of file usm_impl.cpp.
void * sycl::_V1::malloc_host | ( | size_t | size, |
const queue & | q, | ||
const property_list & | propList = {} , |
||
const detail::code_location & | CodeLoc = detail::code_location::current() |
||
) |
void * sycl::_V1::malloc_shared | ( | size_t | size, |
const device & | dev, | ||
const context & | ctxt, | ||
const detail::code_location & | CodeLoc = detail::code_location::current() |
||
) |
Definition at line 366 of file usm_impl.cpp.
void * sycl::_V1::malloc_shared | ( | size_t | size, |
const device & | dev, | ||
const context & | ctxt, | ||
const property_list & | propList = {} , |
||
const detail::code_location & | CodeLoc = detail::code_location::current() |
||
) |
void * sycl::_V1::malloc_shared | ( | size_t | size, |
const queue & | q, | ||
const detail::code_location & | CodeLoc = detail::code_location::current() |
||
) |
Definition at line 379 of file usm_impl.cpp.
void * sycl::_V1::malloc_shared | ( | size_t | size, |
const queue & | q, | ||
const property_list & | propList = {} , |
||
const detail::code_location & | CodeLoc = detail::code_location::current() |
||
) |
Definition at line 468 of file multi_ptr.hpp.
sycl::_V1::multi_ptr | ( | accessor< ElementType, Dimensions, Mode, target::device, isPlaceholder, PropertyListT > | Accessor | ) |
Definition at line 487 of file multi_ptr.hpp.
|
default |
|
default |
sycl::_V1::multi_ptr | ( | std::nullptr_t | ) |
Definition at line 474 of file multi_ptr.hpp.
|
explicit |
Definition at line 471 of file multi_ptr.hpp.
std::enable_if_t<is_group_v<std::decay_t<Group> >, bool> sycl::_V1::none_of_group | ( | Group | g, |
bool | pred | ||
) |
Definition at line 482 of file group_algorithm.hpp.
std::enable_if_t<is_group_v<std::decay_t<Group> >, bool> sycl::_V1::none_of_group | ( | Group | g, |
T | x, | ||
Predicate | pred | ||
) |
Definition at line 501 of file group_algorithm.hpp.
|
inlinestatic |
Definition at line 73 of file geometric_functions.cpp.
|
explicit |
Definition at line 581 of file multi_ptr.hpp.
|
explicit |
Definition at line 554 of file multi_ptr.hpp.
|
explicit |
Definition at line 704 of file multi_ptr.hpp.
|
explicit |
Definition at line 730 of file multi_ptr.hpp.
|
inline |
Definition at line 1217 of file stream.hpp.
|
inline |
Definition at line 1223 of file stream.hpp.
|
inline |
Definition at line 1149 of file stream.hpp.
|
inline |
Definition at line 1138 of file stream.hpp.
|
inline |
Definition at line 1132 of file stream.hpp.
|
inline |
Definition at line 1172 of file stream.hpp.
|
inline |
Definition at line 1186 of file stream.hpp.
|
inline |
Definition at line 1165 of file stream.hpp.
|
inline |
Definition at line 1300 of file stream.hpp.
|
inline |
Definition at line 1308 of file stream.hpp.
|
inline |
Definition at line 1179 of file stream.hpp.
|
inline |
Definition at line 1261 of file stream.hpp.
|
inline |
Definition at line 1276 of file stream.hpp.
|
inline |
Definition at line 1198 of file stream.hpp.
|
inline |
Definition at line 1292 of file stream.hpp.
|
inline |
Definition at line 1284 of file stream.hpp.
|
inline |
Definition at line 1268 of file stream.hpp.
|
inline |
Definition at line 1229 of file stream.hpp.
|
inline |
Definition at line 1316 of file stream.hpp.
const stream& sycl::_V1::operator<< | ( | const stream & | Out, |
const T * | RHS | ||
) |
Definition at line 1206 of file stream.hpp.
|
inline |
Definition at line 1149 of file stream.hpp.
const stream& sycl::_V1::operator<< | ( | const stream & | Out, |
const vec< T, VectorLength > & | RHS | ||
) |
Definition at line 1251 of file stream.hpp.
|
inline |
Definition at line 39 of file backend_types.hpp.
multi_ptr & sycl::_V1::operator= | ( | std::nullptr_t | ) |
Definition at line 539 of file multi_ptr.hpp.
std::enable_if_t<((std::is_same_v<std::decay_t<Group>, sub_group> || sycl::ext::oneapi::experimental::is_user_constructed_group_v< std::decay_t<Group>>) && (std::is_trivially_copyable_v<T> || detail::is_vec<T>::value)), T> sycl::_V1::permute_group_by_xor | ( | Group | g, |
T | x, | ||
typename Group::linear_id_type | mask | ||
) |
Definition at line 576 of file group_algorithm.hpp.
|
static |
Definition at line 614 of file usm_impl.cpp.
Referenced by sycl::_V1::ext::oneapi::experimental::prepare_for_device_copy().
|
static |
Definition at line 19 of file relational_functions.cpp.
std::enable_if_t<(is_group_v<std::decay_t<Group>> && (detail::is_scalar_arithmetic<T>::value || (detail::is_complex<T>::value && detail::is_multiplies<T, BinaryOperation>::value)) && detail::is_native_op<T, BinaryOperation>::value), T> sycl::_V1::reduce_over_group | ( | Group | g, |
T | x, | ||
BinaryOperation | binary_op | ||
) |