DPC++ Runtime
Runtime libraries for oneAPI DPC++
sycl::_V1::ext::oneapi::experimental::detail Namespace Reference

Classes

struct  PropertyMetaInfo< sycl::detail::register_alloc_mode_key::value_t< Mode > >
 
struct  is_group_helper
 
struct  is_group_helper< group_with_scratchpad< Group, Extent > >
 
struct  PropertyMetaInfo< intel::experimental::read_hint_key::value_t< Cs... > >
 
struct  PropertyMetaInfo< intel::experimental::read_assertion_key::value_t< Cs... > >
 
struct  PropertyMetaInfo< intel::experimental::write_hint_key::value_t< Cs... > >
 
struct  PropertyMetaInfo< intel::experimental::fp_control_key::value_t< FPMode > >
 
struct  PropertyMetaInfo< register_map_key::value_t >
 
struct  PropertyMetaInfo< conduit_key::value_t >
 
struct  PropertyMetaInfo< stable_key::value_t >
 
struct  PropertyMetaInfo< buffer_location_key::value_t< N > >
 
struct  PropertyMetaInfo< awidth_key::value_t< W > >
 
struct  PropertyMetaInfo< dwidth_key::value_t< W > >
 
struct  PropertyMetaInfo< latency_key::value_t< N > >
 
struct  PropertyMetaInfo< maxburst_key::value_t< N > >
 
struct  PropertyMetaInfo< wait_request_key::value_t< Enable > >
 
struct  PropertyMetaInfo< read_write_mode_key::value_t< Mode > >
 
struct  checkValidFPGAPropertySet
 
struct  checkHasConduitAndRegisterMap
 
struct  PropertyMetaInfo< intel::experimental::streaming_interface_key::value_t< Stall_Free > >
 
struct  PropertyMetaInfo< intel::experimental::register_map_interface_key::value_t< Wait > >
 
struct  PropertyMetaInfo< intel::experimental::pipelined_key::value_t< Value > >
 
struct  PropertyMetaInfo< intel::experimental::fpga_cluster_key::value_t< ClusterType > >
 
struct  PropertyMetaInfo< intel::experimental::resource_key::value_t< Value > >
 
struct  PropertyMetaInfo< intel::experimental::num_banks_key::value_t< Value > >
 
struct  PropertyMetaInfo< intel::experimental::stride_size_key::value_t< Value > >
 
struct  PropertyMetaInfo< intel::experimental::word_size_key::value_t< Value > >
 
struct  PropertyMetaInfo< intel::experimental::bi_directional_ports_key::value_t< Value > >
 
struct  PropertyMetaInfo< intel::experimental::clock_2x_key::value_t< Value > >
 
struct  PropertyMetaInfo< intel::experimental::ram_stitching_key::value_t< Value > >
 
struct  PropertyMetaInfo< intel::experimental::max_private_copies_key::value_t< Value > >
 
struct  PropertyMetaInfo< intel::experimental::num_replicates_key::value_t< Value > >
 
struct  PropertyMetaInfo< sycl::ext::intel::experimental::grf_size_key::value_t< Size > >
 
struct  PropertyMetaInfo< sycl::ext::intel::experimental::grf_size_automatic_key::value_t >
 
struct  ConflictingProperties< sycl::ext::intel::experimental::grf_size_key, Properties >
 
struct  ConflictingProperties< sycl::ext::intel::experimental::grf_size_automatic_key, Properties >
 
struct  ConflictingProperties< sycl::detail::register_alloc_mode_key, Properties >
 
struct  is_vec
 
struct  is_vec< sycl::vec< T, N > >
 
class  image_mem_impl
 
struct  HasArrowOperator
 
struct  HasArrowOperator< T, std::void_t< decltype(std::declval< T >().operator->())> >
 
class  device_global_base
 
struct  PropertyMetaInfo< device_image_scope_key::value_t >
 
struct  PropertyMetaInfo< host_access_key::value_t< Access > >
 
struct  PropertyMetaInfo< init_mode_key::value_t< Trigger > >
 
struct  PropertyMetaInfo< implement_in_csr_key::value_t< Enable > >
 
struct  DeviceGlobalMetaInfoFilter
 
struct  DeviceGlobalMetaInfoFilter< host_access_key::value_t< Access >, Properties >
 
struct  HasSubscriptOperator
 
struct  is_ann_arg_impl
 
struct  is_ann_arg_impl< annotated_arg< T, P > >
 
struct  is_ann_arg_impl< const annotated_arg< T, P > >
 
struct  GetUnderlyingTImpl
 
struct  GetUnderlyingTImpl< annotated_arg< T, P > >
 
struct  is_ann_ref_impl
 
struct  is_ann_ref_impl< annotated_ref< T, P > >
 
struct  is_ann_ref_impl< const annotated_ref< T, P > >
 
struct  PropertyMetaInfo< usm_kind_key::value_t< Kind > >
 
struct  IsUsmKindDevice
 
struct  IsUsmKindDevice< detail::properties_t< Props... > >
 
struct  IsUsmKindHost
 
struct  IsUsmKindHost< detail::properties_t< Props... > >
 
struct  IsUsmKindShared
 
struct  IsUsmKindShared< detail::properties_t< Props... > >
 
struct  HasProperty
 
struct  HasProperty< PropKey, detail::properties_t< Props... > >
 
struct  GetPropertyValueFromPropList
 
struct  GetPropertyValueFromPropList< PropKey, ConstType, DefaultPropVal, detail::properties_t< Props... > >
 
struct  IsRuntimePropertyValid
 
struct  ValidAllocPropertyList
 
struct  ValidAllocPropertyList< T, detail::empty_properties_t >
 
struct  ValidAllocPropertyList< T, detail::properties_t< Prop, Props... > >
 
struct  GetCompileTimeProperties
 
struct  GetCompileTimeProperties< detail::empty_properties_t >
 
struct  GetCompileTimeProperties< detail::properties_t< Prop > >
 
struct  GetCompileTimeProperties< detail::properties_t< Prop, Props... > >
 
struct  GetAnnotatedPtrPropertiesWithUsmKind
 
struct  GetAnnotatedPtrPropertiesWithUsmKind< Kind, detail::properties_t< Props... > >
 
struct  CheckTAndPropLists
 
struct  CheckTAndPropLists< T, detail::properties_t< PropsA... >, detail::properties_t< PropsB... > >
 
struct  CheckTAndPropListsWithUsmKind
 
struct  CheckTAndPropListsWithUsmKind< Kind, T, detail::properties_t< PropsA... >, detail::properties_t< PropsB... > >
 
struct  DeducedProperties
 
struct  DeducedProperties< detail::properties_t< Args... > >
 
struct  PropertyMetaInfo< alignment_key::value_t< N > >
 
class  modifiable_command_graph
 
class  executable_command_graph
 
class  dynamic_parameter_base
 
struct  ConvertToComp
 
struct  ConvertToComp< T, sorting_order::descending >
 
struct  has_difference_type
 
struct  has_difference_type< T, std::void_t< typename T::difference_type > >
 
struct  has_difference_type< T * >
 
struct  is_sorter_impl
 
struct  is_sorter_impl< Sorter, Group, Ptr, std::void_t< typename has_difference_type< Ptr >::type > >
 
struct  is_sorter
 
struct  spmd2simd
 
struct  spmd2simd< uniform< T >, N >
 
struct  spmd2simd< std::tuple< T... >, N >
 
struct  spmd2simd< T, N, std::enable_if_t< std::is_arithmetic_v< T > > >
 
struct  spmd2simd< bool, N >
 
struct  simd2spmd
 
struct  simd2spmd< uniform< T > >
 
struct  simd2spmd< simd< T, N > >
 
struct  simd2spmd< std::tuple< T... > >
 
struct  simd2spmd< T, std::enable_if_t< std::is_arithmetic_v< T > > >
 
struct  simd2spmd< simd_mask< T, N > >
 
struct  simd2spmd< void >
 
struct  simd_size
 
struct  simd_size< simd< T, N > >
 
struct  is_uniform_type
 
struct  is_uniform_type< uniform< T > >
 
struct  is_simd_or_mask_type
 
struct  is_simd_or_mask_type< simd< T, N > >
 
struct  is_simd_or_mask_type< simd_mask< T, N > >
 
struct  all_uniform_types
 
struct  unwrap_uniform
 
struct  unwrap_uniform< uniform< T > >
 
struct  sg_size
 
struct  remove_ref_from_func_ptr_ref_type
 
struct  remove_ref_from_func_ptr_ref_type< Ret(*&)(Args...)>
 
struct  remove_ref_from_func_ptr_ref_type< Ret(__regcall *&)(Args...)>
 
struct  strip_regcall_from_function_ptr
 
struct  strip_regcall_from_function_ptr< Ret(*)(Args...)>
 
struct  strip_regcall_from_function_ptr< Ret(__regcall *)(Args...)>
 
struct  is_non_trivially_copyable_uniform
 
struct  is_non_trivially_copyable_uniform< void >
 
struct  IsCompileTimeProperty< prefetch_hint_key >
 
struct  PropertyMetaInfo< prefetch_hint_key::value_t< Level, Hint > >
 
struct  is_instance_of_tmpl_int
 
struct  is_instance_of_tmpl_int< T< N >, Tmpl >
 
struct  is_instance_of_tmpl_int_bool
 
struct  is_instance_of_tmpl_int_bool< T< N, X >, Tmpl >
 
struct  AllNonZero
 
struct  AllNonZero< X, Xs... >
 
struct  PropertyMetaInfo< work_group_size_key::value_t< Dim0, Dims... > >
 
struct  PropertyMetaInfo< work_group_size_hint_key::value_t< Dim0, Dims... > >
 
struct  PropertyMetaInfo< sub_group_size_key::value_t< Size > >
 
struct  PropertyMetaInfo< device_has_key::value_t< Aspects... > >
 
struct  HasKernelPropertiesGetMethod
 
struct  HasKernelPropertiesGetMethod< T, std::void_t< decltype(std::declval< T >().get(std::declval< properties_tag >()))> >
 
struct  ContainsProperty
 
struct  ContainsProperty< PropT, std::tuple< T, Ts... > >
 
struct  ContainsProperty< PropT, std::tuple< PropT, Rest... > >
 
struct  ContainsProperty< PropT, std::tuple< property_value< PropT, PropValuesTs... >, Rest... > >
 
struct  FindCompileTimePropertyValueType
 
struct  FindCompileTimePropertyValueType< CTPropertyT, std::tuple< OtherProperty, Rest... > >
 
struct  FindCompileTimePropertyValueType< CTPropertyT, std::tuple< property_value< CTPropertyT, CTPropertyValueTs... >, Rest... > >
 
struct  RuntimePropertyStorage
 
struct  RuntimePropertyStorage< std::tuple< Ts... > >
 
struct  RuntimePropertyStorage< std::tuple< T, Ts... > >
 
struct  ExtractProperties
 
struct  ExtractProperties< std::tuple< PropertiesTs... > >
 
struct  ExtractProperties< std::tuple< PropertyT, PropertiesTs... > >
 
struct  merged_properties
 
struct  merged_properties< properties_t< LHSPropertiesTs... >, properties_t< RHSPropertiesTs... > >
 
struct  ValueOrDefault
 
struct  all_props_are_keys_of
 
struct  all_props_are_keys_of< SyclT, ext::oneapi::experimental::detail::empty_properties_t >
 
struct  all_props_are_keys_of< SyclT, ext::oneapi::experimental::properties< std::tuple< PropT > > >
 
struct  all_props_are_keys_of< SyclT, ext::oneapi::experimental::properties< std::tuple< PropT, PropTs... > > >
 
struct  property_key_base_tag
 
struct  compile_time_property_key_base_tag
 
struct  run_time_property_key
 
struct  compile_time_property_key
 
struct  PropertyToKind
 
struct  PropertyID
 
struct  IsRuntimeProperty
 
struct  IsCompileTimeProperty
 
struct  PropertyMetaInfo
 
struct  IsTuple
 
struct  IsTuple< std::tuple< Ts... > >
 
struct  PrependTuple
 
struct  PrependTuple< T, std::tuple< Ts... > >
 
struct  HasValue
 
struct  HasValue< T, decltype((void) T::value, 0)>
 
struct  IsCompileTimePropertyValue
 
struct  IsProperty
 
struct  IsPropertyValue
 
struct  AllPropertyValues
 
struct  AllPropertyValues< std::tuple< Ts... > >
 
struct  AllPropertyValues< std::tuple< T, Ts... > >
 
struct  HeadSplit
 
struct  HeadSplit< std::tuple< T, Ts... >, true >
 
struct  HeadSplit< std::tuple< Ts... >, false >
 
struct  SelectNonVoid
 
struct  SelectNonVoid< LHS, void >
 
struct  SelectNonVoid< void, RHS >
 
struct  SortByPropertyId
 
struct  Sorted
 
struct  IsSorted
 
struct  IsSorted< std::tuple< Ts... > >
 
struct  IsSorted< std::tuple< T > >
 
struct  SingleNontypePropertyValueBase
 
struct  SingleNontypePropertyValueBase< T, std::enable_if_t< HasValue< T >::value > >
 
struct  PropertyValueBase
 
struct  PropertyValueBase< T >
 
struct  PropertyID< property_value< PropertyT, PropertyValueTs... > >
 
struct  IsCompileTimePropertyValue< property_value< PropertyT, PropertyValueTs... > >
 
class  node_impl
 Implementation of node class from SYCL_EXT_ONEAPI_GRAPH. More...
 
class  partition
 
class  graph_impl
 Implementation details of command_graph<modifiable>. More...
 
class  exec_graph_impl
 Class representing the implementation of command_graph<executable>. More...
 
class  dynamic_parameter_impl
 

Typedefs

using cache_mode = sycl::ext::intel::experimental::cache_mode
 
template<class T >
using GetUnderlyingT = typename GetUnderlyingTImpl< std::remove_cv_t< std::remove_reference_t< T > >>::type
 
template<typename... Ts>
using contains_alignment = detail::ContainsProperty< alignment_key, std::tuple< Ts... > >
 
template<typename property_list , template< class... > typename filter>
using PropertiesFilter = sycl::detail::boost::mp11::mp_copy_if< property_list, filter >
 
template<typename... Props>
using annotation_filter = properties< PropertiesFilter< std::tuple< Props... >, propagateToPtrAnnotation > >
 
template<sycl::usm::alloc Kind, typename PropertyListT >
using MergeUsmKind = detail::merged_properties_t< PropertyListT, decltype(properties{usm_kind< Kind >})>
 
template<typename PropertyListT >
using HasAlign = HasProperty< alignment_key, PropertyListT >
 
template<typename PropertyListT >
using HasUsmKind = HasProperty< usm_kind_key, PropertyListT >
 
template<typename PropertyListT >
using HasBufferLocation = HasProperty< buffer_location_key, PropertyListT >
 
template<typename PropertyListT >
using GetAlignFromPropList = GetPropertyValueFromPropList< alignment_key, size_t, decltype(alignment< 0 >), PropertyListT >
 
template<typename PropertyListT >
using GetUsmKindFromPropList = GetPropertyValueFromPropList< usm_kind_key, sycl::usm::alloc, decltype(usm_kind< sycl::usm::alloc::unknown >), PropertyListT >
 
template<typename PropertyListT >
using GetBufferLocationFromPropList = GetPropertyValueFromPropList< buffer_location_key, int, decltype(sycl::ext::intel::experimental::buffer_location<-1 >), PropertyListT >
 
template<int N, class SimdCallable , class... SpmdArgs>
using SimdRetType = std::invoke_result_t< SimdCallable, typename spmd2simd< SpmdArgs, N >::type... >
 
template<int N, class SimdCallable , class... SpmdArgs>
using SpmdRetType = typename simd2spmd< SimdRetType< N, SimdCallable, SpmdArgs... > >::type
 
template<typename T >
using remove_ref_from_func_ptr_ref_type_t = typename remove_ref_from_func_ptr_ref_type< T >::type
 
template<typename T >
using strip_regcall_from_function_ptr_t = typename strip_regcall_from_function_ptr< T >::type
 
using empty_properties_t = properties< std::tuple<> >
 
template<typename... PropertyValueTs>
using properties_t = properties< std::tuple< PropertyValueTs... > >
 
template<typename LHSPropertiesT , typename RHSPropertiesT >
using merged_properties_t = typename merged_properties< LHSPropertiesT, RHSPropertiesT >::type
 
template<typename... Ts>
using GetFirstType = typename std::tuple_element< 0, std::tuple< Ts... > >::type
 
using voidPtr = void *
 
using spirv_vec_t = std::vector< uint8_t >
 

Enumerations

enum class  UnsupportedGraphFeatures {
  sycl_reductions = 0 , sycl_specialization_constants = 1 , sycl_kernel_bundle = 2 , sycl_ext_oneapi_kernel_properties = 3 ,
  sycl_ext_oneapi_enqueue_barrier = 4 , sycl_ext_oneapi_memcpy2d = 5 , sycl_ext_oneapi_device_global = 6 , sycl_ext_oneapi_bindless_images = 7
}
 
enum  PropKind : uint32_t {
  DeviceImageScope = 0 , HostAccess = 1 , InitMode = 2 , ImplementInCSR = 3 ,
  LatencyAnchorID = 4 , LatencyConstraint = 5 , WorkGroupSize = 6 , WorkGroupSizeHint = 7 ,
  SubGroupSize = 8 , DeviceHas = 9 , StreamingInterface = 10 , RegisterMapInterface = 11 ,
  Pipelined = 12 , RegisterMap = 13 , Conduit = 14 , Stable = 15 ,
  BufferLocation = 16 , AddrWidth = 17 , DataWidth = 18 , Latency = 19 ,
  RWMode = 20 , MaxBurst = 21 , WaitRequest = 22 , Alignment = 23 ,
  CacheConfig = 24 , BitsPerSymbol = 25 , FirstSymbolInHigherOrderBit = 26 , PipeProtocol = 27 ,
  ReadyLatency = 28 , UsesValid = 29 , UseRootSync = 30 , RegisterAllocMode = 31 ,
  GRFSize = 32 , GRFSizeAutomatic = 33 , Resource = 34 , NumBanks = 35 ,
  StrideSize = 36 , WordSize = 37 , BiDirectionalPorts = 38 , Clock2x = 39 ,
  RAMStitching = 40 , MaxPrivateCopies = 41 , NumReplicates = 42 , Datapath = 43 ,
  ESIMDL1CacheHint = 44 , ESIMDL2CacheHint = 45 , ESIMDL3CacheHint = 46 , UsmKind = 47 ,
  CacheControlReadHint = 48 , CacheControlReadAssertion = 49 , CacheControlWrite = 50 , BuildOptions = 51 ,
  BuildLog = 52 , FloatingPointControls = 53 , FPGACluster = 54 , Balanced = 55 ,
  InvocationCapacity = 56 , ResponseCapacity = 57 , PropKindSize = 58
}
 

Functions

static constexpr int countL (int levels, int mask)
 
template<int countL1, int countL2, int countL3, int countL4>
static constexpr void checkUnique ()
 
template<cache_mode M>
static constexpr int checkReadHint ()
 
template<cache_mode M>
static constexpr int checkReadAssertion ()
 
template<cache_mode M>
static constexpr int checkWriteHint ()
 
template<typename CoordT >
constexpr size_t coord_size ()
 
template<typename DataT >
constexpr auto convert_color (DataT Color)
 
template<typename CoordT >
constexpr void assert_unsampled_coords ()
 
template<typename CoordT >
constexpr void assert_sampled_coords ()
 
template<typename DataT >
constexpr bool is_data_size_valid ()
 
template<typename DataT >
constexpr bool is_recognized_standard_type ()
 
template<size_t N>
uint32_t to_uint32_t (sycl::marray< bfloat16, N > x, size_t start)
 
const char * UnsupportedFeatureToString (UnsupportedGraphFeatures Feature)
 
template<auto SgSize, typename SimdRet >
constexpr void verify_return_type_matches_sg_size ()
 
template<class SimdCallable , class... SpmdArgs>
static constexpr int get_sg_size ()
 
template<int N, class Callable , class... T>
__DPCPP_SYCL_EXTERNAL __regcall detail::SimdRetType< N, Callable, T... > simd_obj_call_helper (const void *obj_ptr, typename detail::spmd2simd< T, N >::type... simd_args)
 
template<int N, class Callable , class... T>
__DPCPP_SYCL_EXTERNAL __regcall detail::SimdRetType< N, Callable, T... > simd_func_call_helper (Callable f, typename detail::spmd2simd< T, N >::type... simd_args)
 
template<typename Ret , typename... Args>
constexpr bool has_ref_arg (Ret(*)(Args...))
 
template<typename Ret , typename... Args>
constexpr bool has_ref_ret (Ret(*)(Args...))
 
template<typename Ret , typename... Args>
constexpr bool has_non_uniform_struct_ret (Ret(*)(Args...))
 
template<typename Ret , typename... Args>
constexpr bool has_non_trivially_copyable_uniform_ret (Ret(*)(Args...))
 
template<class Callable >
constexpr void verify_callable ()
 
template<class... Ts>
constexpr void verify_no_uniform_non_trivially_copyable_args ()
 
template<class... Ts>
constexpr void verify_no_non_uniform_struct_args ()
 
template<class Callable , class... Ts>
constexpr void verify_valid_args_and_ret ()
 
template<typename T , typename Properties >
void prefetch_impl (T *ptr, size_t bytes, Properties properties)
 
template<typename Group , typename T , typename Properties >
void joint_prefetch_impl (Group g, T *ptr, size_t bytes, Properties properties)
 
template<typename GroupHelper , typename T , typename BinaryOperation >
reduce_over_group_impl (GroupHelper group_helper, T x, size_t num_elements, BinaryOperation binary_op)
 
template<typename CTPropertyT , bool HasProperty, typename PropertiesT = void>
static constexpr std::enable_if_t< HasProperty, typename FindCompileTimePropertyValueType< CTPropertyT, PropertiesT >::type > get_property ()
 
template<typename CTPropertyT , bool HasProperty, typename PropertiesT = void>
static constexpr std::enable_if_t<!HasProperty, void > get_property ()
 
kernel_bundle< bundle_state::executablebuild_from_source (kernel_bundle< bundle_state::ext_oneapi_source > &SourceKB, const std::vector< device > &Devices, const std::vector< std::string > &BuildOptions, std::string *LogPtr)
 
node_type getNodeTypeFromCG (sycl::detail::CG::CGTYPE CGType)
 
void checkOclocLibrary (void *OclocLibrary)
 
void * loadOclocLibrary ()
 
bool OpenCLC_Compilation_Available ()
 
void SetupLibrary (voidPtr &oclocInvokeHandle, voidPtr &oclocFreeOutputHandle, std::error_code the_errc)
 
std::string IPVersionsToString (const std::vector< uint32_t > IPVersionVec)
 
spirv_vec_t OpenCLC_to_SPIRV (const std::string &Source, const std::vector< uint32_t > &IPVersionVec, const std::vector< std::string > &UserArgs, std::string *LogPtr)
 
std::string InvokeOclocQuery (uint32_t IPVersion, const char *identifier)
 
bool OpenCLC_Feature_Available (const std::string &Feature, uint32_t IPVersion)
 
bool OpenCLC_Supports_Version (const ext::oneapi::experimental::cl_version &Version, uint32_t IPVersion)
 
bool OpenCLC_Supports_Extension (const std::string &Name, ext::oneapi::experimental::cl_version *VersionPtr, uint32_t IPVersion)
 
std::string OpenCLC_Profile (uint32_t IPVersion)
 
exe_kb build_from_source (source_kb &SourceKB, const std::vector< device > &Devices, const std::vector< std::string > &BuildOptions, std::string *LogPtr)
 

Variables

static constexpr int L1BIT = 1
 
static constexpr int L2BIT = 2
 
static constexpr int L3BIT = 4
 
static constexpr int L4BIT = 8
 
template<typename T >
constexpr bool is_vec_v = is_vec<T>::value
 
template<class T >
constexpr bool is_ann_arg_v
 
template<class T >
constexpr bool is_ann_ref_v
 
template<class Callable >
static constexpr bool is_function_ptr_or_ref_v
 
template<typename T >
constexpr bool is_non_trivially_copyable_uniform_v
 
template<access::address_space AS>
constexpr bool check_prefetch_AS
 
template<access_mode mode>
constexpr bool check_prefetch_acc_mode
 
template<class T , template< int > class Tmpl>
static constexpr bool is_instance_of_tmpl_int_v
 
template<class T , template< int, bool > class Tmpl>
static constexpr bool is_instance_of_tmpl_int_bool_v
 
static void * OclocLibrary = nullptr
 

Typedef Documentation

◆ annotation_filter

Definition at line 63 of file annotated_ptr.hpp.

◆ cache_mode

◆ contains_alignment

Definition at line 53 of file annotated_ptr.hpp.

◆ empty_properties_t

Definition at line 207 of file properties.hpp.

◆ GetAlignFromPropList

template<typename PropertyListT >
using sycl::_V1::ext::oneapi::experimental::detail::GetAlignFromPropList = typedef GetPropertyValueFromPropList<alignment_key, size_t, decltype(alignment<0>), PropertyListT>

Definition at line 67 of file alloc_util.hpp.

◆ GetBufferLocationFromPropList

template<typename PropertyListT >
using sycl::_V1::ext::oneapi::experimental::detail::GetBufferLocationFromPropList = typedef GetPropertyValueFromPropList< buffer_location_key, int, decltype(sycl::ext::intel::experimental::buffer_location<-1>), PropertyListT>

Definition at line 80 of file alloc_util.hpp.

◆ GetFirstType

template<typename... Ts>
using sycl::_V1::ext::oneapi::experimental::detail::GetFirstType = typedef typename std::tuple_element<0, std::tuple<Ts...> >::type

Definition at line 42 of file property_utils.hpp.

◆ GetUnderlyingT

template<class T >
using sycl::_V1::ext::oneapi::experimental::detail::GetUnderlyingT = typedef typename GetUnderlyingTImpl< std::remove_cv_t<std::remove_reference_t<T> >>::type

Definition at line 57 of file annotated_arg.hpp.

◆ GetUsmKindFromPropList

template<typename PropertyListT >
using sycl::_V1::ext::oneapi::experimental::detail::GetUsmKindFromPropList = typedef GetPropertyValueFromPropList<usm_kind_key, sycl::usm::alloc, decltype(usm_kind<sycl::usm::alloc::unknown>), PropertyListT>

Definition at line 73 of file alloc_util.hpp.

◆ HasAlign

template<typename PropertyListT >
using sycl::_V1::ext::oneapi::experimental::detail::HasAlign = typedef HasProperty<alignment_key, PropertyListT>

Definition at line 40 of file alloc_util.hpp.

◆ HasBufferLocation

template<typename PropertyListT >
using sycl::_V1::ext::oneapi::experimental::detail::HasBufferLocation = typedef HasProperty<buffer_location_key, PropertyListT>

Definition at line 44 of file alloc_util.hpp.

◆ HasUsmKind

template<typename PropertyListT >
using sycl::_V1::ext::oneapi::experimental::detail::HasUsmKind = typedef HasProperty<usm_kind_key, PropertyListT>

Definition at line 42 of file alloc_util.hpp.

◆ merged_properties_t

template<typename LHSPropertiesT , typename RHSPropertiesT >
using sycl::_V1::ext::oneapi::experimental::detail::merged_properties_t = typedef typename merged_properties<LHSPropertiesT, RHSPropertiesT>::type

Definition at line 224 of file properties.hpp.

◆ MergeUsmKind

template<sycl::usm::alloc Kind, typename PropertyListT >
using sycl::_V1::ext::oneapi::experimental::detail::MergeUsmKind = typedef detail::merged_properties_t<PropertyListT, decltype(properties{usm_kind<Kind>})>

Definition at line 28 of file alloc_util.hpp.

◆ properties_t

template<typename... PropertyValueTs>
class __SYCL_SPECIAL_CLASS sycl::_V1::ext::oneapi::experimental::detail::properties_t< Props... >
Initial value:
{
properties< std::tuple< PropertyValueTs... > > properties_t
Definition: properties.hpp:212
detail::properties_t< Props... > property_list_t

Definition at line 212 of file properties.hpp.

◆ PropertiesFilter

template<typename property_list , template< class... > typename filter>
using sycl::_V1::ext::oneapi::experimental::detail::PropertiesFilter = typedef sycl::detail::boost::mp11::mp_copy_if<property_list, filter>

Definition at line 58 of file annotated_ptr.hpp.

◆ remove_ref_from_func_ptr_ref_type_t

Definition at line 324 of file invoke_simd.hpp.

◆ SimdRetType

template<int N, class SimdCallable , class... SpmdArgs>
using sycl::_V1::ext::oneapi::experimental::detail::SimdRetType = typedef std::invoke_result_t<SimdCallable, typename spmd2simd<SpmdArgs, N>::type...>

Definition at line 221 of file invoke_simd.hpp.

◆ spirv_vec_t

using sycl::_V1::ext::oneapi::experimental::detail::spirv_vec_t = typedef std::vector<uint8_t>

Definition at line 23 of file kernel_compiler_opencl.hpp.

◆ SpmdRetType

template<int N, class SimdCallable , class... SpmdArgs>
using sycl::_V1::ext::oneapi::experimental::detail::SpmdRetType = typedef typename simd2spmd<SimdRetType<N, SimdCallable, SpmdArgs...> >::type

Definition at line 227 of file invoke_simd.hpp.

◆ strip_regcall_from_function_ptr_t

Definition at line 340 of file invoke_simd.hpp.

◆ voidPtr

Definition at line 96 of file kernel_compiler_opencl.cpp.

Enumeration Type Documentation

◆ PropKind

Enumerator
DeviceImageScope 
HostAccess 
InitMode 
ImplementInCSR 
LatencyAnchorID 
LatencyConstraint 
WorkGroupSize 
WorkGroupSizeHint 
SubGroupSize 
DeviceHas 
StreamingInterface 
RegisterMapInterface 
Pipelined 
RegisterMap 
Conduit 
Stable 
BufferLocation 
AddrWidth 
DataWidth 
Latency 
RWMode 
MaxBurst 
WaitRequest 
Alignment 
CacheConfig 
BitsPerSymbol 
FirstSymbolInHigherOrderBit 
PipeProtocol 
ReadyLatency 
UsesValid 
UseRootSync 
RegisterAllocMode 
GRFSize 
GRFSizeAutomatic 
Resource 
NumBanks 
StrideSize 
WordSize 
BiDirectionalPorts 
Clock2x 
RAMStitching 
MaxPrivateCopies 
NumReplicates 
Datapath 
ESIMDL1CacheHint 
ESIMDL2CacheHint 
ESIMDL3CacheHint 
UsmKind 
CacheControlReadHint 
CacheControlReadAssertion 
CacheControlWrite 
BuildOptions 
BuildLog 
FloatingPointControls 
FPGACluster 
Balanced 
InvocationCapacity 
ResponseCapacity 
PropKindSize 

Definition at line 140 of file property.hpp.

◆ UnsupportedGraphFeatures

Enumerator
sycl_reductions 
sycl_specialization_constants 
sycl_kernel_bundle 
sycl_ext_oneapi_kernel_properties 
sycl_ext_oneapi_enqueue_barrier 
sycl_ext_oneapi_memcpy2d 
sycl_ext_oneapi_device_global 
sycl_ext_oneapi_bindless_images 

Definition at line 48 of file graph.hpp.

Function Documentation

◆ assert_sampled_coords()

template<typename CoordT >
constexpr void sycl::_V1::ext::oneapi::experimental::detail::assert_sampled_coords ( )
constexpr

Definition at line 735 of file bindless_images.hpp.

◆ assert_unsampled_coords()

template<typename CoordT >
constexpr void sycl::_V1::ext::oneapi::experimental::detail::assert_unsampled_coords ( )
constexpr

Definition at line 723 of file bindless_images.hpp.

◆ build_from_source() [1/2]

kernel_bundle<bundle_state::executable> sycl::_V1::ext::oneapi::experimental::detail::build_from_source ( kernel_bundle< bundle_state::ext_oneapi_source > &  SourceKB,
const std::vector< device > &  Devices,
const std::vector< std::string > &  BuildOptions,
std::string *  LogPtr 
)

◆ build_from_source() [2/2]

exe_kb sycl::_V1::ext::oneapi::experimental::detail::build_from_source ( source_kb SourceKB,
const std::vector< device > &  Devices,
const std::vector< std::string > &  BuildOptions,
std::string *  LogPtr 
)

◆ checkOclocLibrary()

void sycl::_V1::ext::oneapi::experimental::detail::checkOclocLibrary ( void *  OclocLibrary)

◆ checkReadAssertion()

template<cache_mode M>
static constexpr int sycl::_V1::ext::oneapi::experimental::detail::checkReadAssertion ( )
staticconstexpr

◆ checkReadHint()

template<cache_mode M>
static constexpr int sycl::_V1::ext::oneapi::experimental::detail::checkReadHint ( )
staticconstexpr

Definition at line 157 of file cache_control_properties.hpp.

◆ checkUnique()

template<int countL1, int countL2, int countL3, int countL4>
static constexpr void sycl::_V1::ext::oneapi::experimental::detail::checkUnique ( )
staticconstexpr

Definition at line 148 of file cache_control_properties.hpp.

◆ checkWriteHint()

template<cache_mode M>
static constexpr int sycl::_V1::ext::oneapi::experimental::detail::checkWriteHint ( )
staticconstexpr

Definition at line 172 of file cache_control_properties.hpp.

◆ convert_color()

template<typename DataT >
constexpr auto sycl::_V1::ext::oneapi::experimental::detail::convert_color ( DataT  Color)
constexpr

◆ coord_size()

template<typename CoordT >
constexpr size_t sycl::_V1::ext::oneapi::experimental::detail::coord_size ( )
constexpr

Definition at line 693 of file bindless_images.hpp.

◆ countL()

static constexpr int sycl::_V1::ext::oneapi::experimental::detail::countL ( int  levels,
int  mask 
)
staticconstexpr

Definition at line 143 of file cache_control_properties.hpp.

◆ get_property() [1/2]

template<typename CTPropertyT , bool HasProperty, typename PropertiesT = void>
static constexpr std::enable_if_t< HasProperty, typename FindCompileTimePropertyValueType<CTPropertyT, PropertiesT>::type> sycl::_V1::ext::oneapi::experimental::detail::get_property ( )
staticconstexpr

Definition at line 63 of file properties.hpp.

◆ get_property() [2/2]

template<typename CTPropertyT , bool HasProperty, typename PropertiesT = void>
static constexpr std::enable_if_t<!HasProperty, void> sycl::_V1::ext::oneapi::experimental::detail::get_property ( )
staticconstexpr

Definition at line 68 of file properties.hpp.

◆ get_sg_size()

template<class SimdCallable , class... SpmdArgs>
static constexpr int sycl::_V1::ext::oneapi::experimental::detail::get_sg_size ( )
staticconstexpr

◆ getNodeTypeFromCG()

◆ has_non_trivially_copyable_uniform_ret()

template<typename Ret , typename... Args>
constexpr bool sycl::_V1::ext::oneapi::experimental::detail::has_non_trivially_copyable_uniform_ret ( Ret(*)(Args...)  )
constexpr

Definition at line 374 of file invoke_simd.hpp.

Referenced by verify_callable().

◆ has_non_uniform_struct_ret()

template<typename Ret , typename... Args>
constexpr bool sycl::_V1::ext::oneapi::experimental::detail::has_non_uniform_struct_ret ( Ret(*)(Args...)  )
constexpr

Definition at line 368 of file invoke_simd.hpp.

Referenced by verify_callable().

◆ has_ref_arg()

template<typename Ret , typename... Args>
constexpr bool sycl::_V1::ext::oneapi::experimental::detail::has_ref_arg ( Ret(*)(Args...)  )
constexpr

Definition at line 358 of file invoke_simd.hpp.

Referenced by verify_callable().

◆ has_ref_ret()

template<typename Ret , typename... Args>
constexpr bool sycl::_V1::ext::oneapi::experimental::detail::has_ref_ret ( Ret(*)(Args...)  )
constexpr

Definition at line 363 of file invoke_simd.hpp.

Referenced by verify_callable().

◆ InvokeOclocQuery()

std::string sycl::_V1::ext::oneapi::experimental::detail::InvokeOclocQuery ( uint32_t  IPVersion,
const char *  identifier 
)

◆ IPVersionsToString()

std::string sycl::_V1::ext::oneapi::experimental::detail::IPVersionsToString ( const std::vector< uint32_t >  IPVersionVec)

Definition at line 116 of file kernel_compiler_opencl.cpp.

Referenced by InvokeOclocQuery(), and OpenCLC_to_SPIRV().

◆ is_data_size_valid()

template<typename DataT >
constexpr bool sycl::_V1::ext::oneapi::experimental::detail::is_data_size_valid ( )
constexpr

Definition at line 746 of file bindless_images.hpp.

◆ is_recognized_standard_type()

template<typename DataT >
constexpr bool sycl::_V1::ext::oneapi::experimental::detail::is_recognized_standard_type ( )
constexpr

Definition at line 751 of file bindless_images.hpp.

◆ joint_prefetch_impl()

template<typename Group , typename T , typename Properties >
void sycl::_V1::ext::oneapi::experimental::detail::joint_prefetch_impl ( Group  g,
T *  ptr,
size_t  bytes,
Properties  properties 
)

Definition at line 93 of file prefetch.hpp.

References prefetch_impl().

◆ loadOclocLibrary()

void* sycl::_V1::ext::oneapi::experimental::detail::loadOclocLibrary ( )

◆ OpenCLC_Compilation_Available()

bool sycl::_V1::ext::oneapi::experimental::detail::OpenCLC_Compilation_Available ( )

◆ OpenCLC_Feature_Available()

bool sycl::_V1::ext::oneapi::experimental::detail::OpenCLC_Feature_Available ( const std::string &  Feature,
uint32_t  IPVersion 
)

◆ OpenCLC_Profile()

std::string sycl::_V1::ext::oneapi::experimental::detail::OpenCLC_Profile ( uint32_t  IPVersion)

Definition at line 366 of file kernel_compiler_opencl.cpp.

References InvokeOclocQuery().

Referenced by sycl::_V1::device::ext_oneapi_cl_profile().

◆ OpenCLC_Supports_Extension()

◆ OpenCLC_Supports_Version()

◆ OpenCLC_to_SPIRV()

spirv_vec_t sycl::_V1::ext::oneapi::experimental::detail::OpenCLC_to_SPIRV ( const std::string &  Source,
const std::vector< uint32_t > &  IPVersionVec,
const std::vector< std::string > &  UserArgs,
std::string *  LogPtr 
)

◆ prefetch_impl()

template<typename T , typename Properties >
void sycl::_V1::ext::oneapi::experimental::detail::prefetch_impl ( T *  ptr,
size_t  bytes,
Properties  properties 
)

◆ reduce_over_group_impl()

template<typename GroupHelper , typename T , typename BinaryOperation >
T sycl::_V1::ext::oneapi::experimental::detail::reduce_over_group_impl ( GroupHelper  group_helper,
x,
size_t  num_elements,
BinaryOperation  binary_op 
)

◆ SetupLibrary()

void sycl::_V1::ext::oneapi::experimental::detail::SetupLibrary ( voidPtr oclocInvokeHandle,
voidPtr oclocFreeOutputHandle,
std::error_code  the_errc 
)

◆ simd_func_call_helper()

template<int N, class Callable , class... T>
__DPCPP_SYCL_EXTERNAL __regcall detail:: SimdRetType<N, Callable, T...> sycl::_V1::ext::oneapi::experimental::detail::simd_func_call_helper ( Callable  f,
typename detail::spmd2simd< T, N >::type...  simd_args 
)

◆ simd_obj_call_helper()

template<int N, class Callable , class... T>
__DPCPP_SYCL_EXTERNAL __regcall detail:: SimdRetType<N, Callable, T...> sycl::_V1::ext::oneapi::experimental::detail::simd_obj_call_helper ( const void *  obj_ptr,
typename detail::spmd2simd< T, N >::type...  simd_args 
)

◆ to_uint32_t()

template<size_t N>
uint32_t sycl::_V1::ext::oneapi::experimental::detail::to_uint32_t ( sycl::marray< bfloat16, N >  x,
size_t  start 
)

◆ UnsupportedFeatureToString()

const char* sycl::_V1::ext::oneapi::experimental::detail::UnsupportedFeatureToString ( UnsupportedGraphFeatures  Feature)
inline

Definition at line 60 of file graph.hpp.

◆ verify_callable()

template<class Callable >
constexpr void sycl::_V1::ext::oneapi::experimental::detail::verify_callable ( )
constexpr

◆ verify_no_non_uniform_struct_args()

template<class... Ts>
constexpr void sycl::_V1::ext::oneapi::experimental::detail::verify_no_non_uniform_struct_args ( )
constexpr

Definition at line 422 of file invoke_simd.hpp.

Referenced by verify_valid_args_and_ret().

◆ verify_no_uniform_non_trivially_copyable_args()

template<class... Ts>
constexpr void sycl::_V1::ext::oneapi::experimental::detail::verify_no_uniform_non_trivially_copyable_args ( )
constexpr

Definition at line 413 of file invoke_simd.hpp.

Referenced by verify_valid_args_and_ret().

◆ verify_return_type_matches_sg_size()

template<auto SgSize, typename SimdRet >
constexpr void sycl::_V1::ext::oneapi::experimental::detail::verify_return_type_matches_sg_size ( )
constexpr

◆ verify_valid_args_and_ret()

template<class Callable , class... Ts>
constexpr void sycl::_V1::ext::oneapi::experimental::detail::verify_valid_args_and_ret ( )
constexpr

Variable Documentation

◆ check_prefetch_acc_mode

template<access_mode mode>
constexpr bool sycl::_V1::ext::oneapi::experimental::detail::check_prefetch_acc_mode
inlineconstexpr
Initial value:
=
mode == access_mode::read || mode == access_mode::read_write
constexpr mode_tag_t< access_mode::read_write > read_write
Definition: access.hpp:85

Definition at line 67 of file prefetch.hpp.

◆ check_prefetch_AS

template<access::address_space AS>
constexpr bool sycl::_V1::ext::oneapi::experimental::detail::check_prefetch_AS
inlineconstexpr
Initial value:
=
AS == access::address_space::global_space ||
AS == access::address_space::generic_space

Definition at line 62 of file prefetch.hpp.

◆ is_ann_arg_v

template<class T >
constexpr bool sycl::_V1::ext::oneapi::experimental::detail::is_ann_arg_v
constexpr
Initial value:
=
is_ann_arg_impl<std::remove_reference_t<T>>::value

Definition at line 49 of file annotated_arg.hpp.

◆ is_ann_ref_v

template<class T >
constexpr bool sycl::_V1::ext::oneapi::experimental::detail::is_ann_ref_v
constexpr
Initial value:
=
is_ann_ref_impl<std::remove_reference_t<T>>::value

Definition at line 49 of file annotated_ptr.hpp.

◆ is_function_ptr_or_ref_v

template<class Callable >
constexpr bool sycl::_V1::ext::oneapi::experimental::detail::is_function_ptr_or_ref_v
staticconstexpr
Initial value:
=
std::is_function_v<std::remove_pointer_t<std::remove_reference_t<Callable>>>

Definition at line 302 of file invoke_simd.hpp.

◆ is_instance_of_tmpl_int_bool_v

template<class T , template< int, bool > class Tmpl>
constexpr bool sycl::_V1::ext::oneapi::experimental::detail::is_instance_of_tmpl_int_bool_v
inlinestaticconstexpr
Initial value:
=
is_instance_of_tmpl_int_bool<T, Tmpl>::value

Definition at line 54 of file uniform.hpp.

◆ is_instance_of_tmpl_int_v

template<class T , template< int > class Tmpl>
constexpr bool sycl::_V1::ext::oneapi::experimental::detail::is_instance_of_tmpl_int_v
inlinestaticconstexpr
Initial value:
=
is_instance_of_tmpl_int<T, Tmpl>::value

Definition at line 43 of file uniform.hpp.

◆ is_non_trivially_copyable_uniform_v

template<typename T >
constexpr bool sycl::_V1::ext::oneapi::experimental::detail::is_non_trivially_copyable_uniform_v
inlineconstexpr
Initial value:
=
is_non_trivially_copyable_uniform<T>::value

Definition at line 354 of file invoke_simd.hpp.

◆ is_vec_v

template<typename T >
constexpr bool sycl::_V1::ext::oneapi::experimental::detail::is_vec_v = is_vec<T>::value
inlineconstexpr

Definition at line 690 of file bindless_images.hpp.

◆ L1BIT

constexpr int sycl::_V1::ext::oneapi::experimental::detail::L1BIT = 1
staticconstexpr

Definition at line 138 of file cache_control_properties.hpp.

◆ L2BIT

constexpr int sycl::_V1::ext::oneapi::experimental::detail::L2BIT = 2
staticconstexpr

Definition at line 139 of file cache_control_properties.hpp.

◆ L3BIT

constexpr int sycl::_V1::ext::oneapi::experimental::detail::L3BIT = 4
staticconstexpr

Definition at line 140 of file cache_control_properties.hpp.

◆ L4BIT

constexpr int sycl::_V1::ext::oneapi::experimental::detail::L4BIT = 8
staticconstexpr

Definition at line 141 of file cache_control_properties.hpp.

◆ OclocLibrary

void* sycl::_V1::ext::oneapi::experimental::detail::OclocLibrary = nullptr
static