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

Namespaces

 detail
 
 esimd
 
 experimental
 
 math
 
 property
 

Classes

class  platform_selector
 
struct  burst_coalesce_impl
 
struct  cache
 
struct  prefetch_impl
 
struct  statically_coalesce_impl
 
class  lsu
 
struct  _MatchType
 
struct  _GetValue
 
struct  _GetValue< _Type, _T1, _T... >
 
class  pipe
 
class  kernel_readable_io_pipe
 
class  kernel_writeable_io_pipe
 

Typedefs

template<bool _B>
using burst_coalesce = burst_coalesce_impl< _B >
 
template<bool _B>
using prefetch = prefetch_impl< _B >
 
template<bool _B>
using statically_coalesce = statically_coalesce_impl< _B >
 
template<typename ElementType , access::decorated IsDecorated = access::decorated::legacy>
using device_ptr = multi_ptr< ElementType, access::address_space::ext_intel_global_device_space, IsDecorated >
 
template<typename ElementType , access::decorated IsDecorated = access::decorated::legacy>
using host_ptr = multi_ptr< ElementType, access::address_space::ext_intel_global_host_space, IsDecorated >
 
template<typename ElementType >
using raw_device_ptr = multi_ptr< ElementType, access::address_space::ext_intel_global_device_space, access::decorated::no >
 
template<typename ElementType >
using raw_host_ptr = multi_ptr< ElementType, access::address_space::ext_intel_global_host_space, access::decorated::no >
 
template<typename ElementType >
using decorated_device_ptr = multi_ptr< ElementType, access::address_space::ext_intel_global_device_space, access::decorated::yes >
 
template<typename ElementType >
using decorated_host_ptr = multi_ptr< ElementType, access::address_space::ext_intel_global_host_space, access::decorated::yes >
 

Enumerations

enum class  Preference { DSP , Softlogic , Compiler_default }
 
enum class  Propagate { On , Off }
 

Functions

int fpga_selector_v (const device &device)
 
int fpga_emulator_selector_v (const device &device)
 
int fpga_simulator_selector_v (const device &device)
 
template<typename Function >
void math_prefer_dsp_propagate (Function f)
 
template<typename Function >
void math_prefer_dsp_no_propagate (Function f)
 
template<typename Function >
void math_prefer_softlogic_propagate (Function f)
 
template<typename Function >
void math_prefer_softlogic_no_propagate (Function f)
 
template<Preference my_preference = Preference::DSP, Propagate my_propagate = Propagate::On, typename Function >
void math_dsp_control (Function f)
 Preference: Control the hardware implementation of math operations in the lambda expression. More...
 
template<int _N = 1, typename _F >
void fpga_loop_fuse (_F f)
 
template<int _N = 1, typename _F >
void fpga_loop_fuse_independent (_F f)
 
template<typename _T >
std::enable_if_t< std::is_trivially_copyable_v< _T >, _T > fpga_reg (_T t)
 
template<typename _T >
std::enable_if_t< std::is_trivially_copyable_v< _T >==false, _T > fpga_reg (_T t)
 

Variables

static constexpr auto EMULATION_PLATFORM_NAME
 
static constexpr auto HARDWARE_PLATFORM_NAME
 
constexpr uint8_t BURST_COALESCE = 0x1
 
constexpr uint8_t CACHE = 0x2
 
constexpr uint8_t STATICALLY_COALESCE = 0x4
 
constexpr uint8_t PREFETCH = 0x8
 
template<int A>
constexpr property::buffer_location::instance< A > buffer_location {}
 

Typedef Documentation

◆ burst_coalesce

template<bool _B>
using sycl::_V1::ext::intel::burst_coalesce = typedef burst_coalesce_impl<_B>

Definition at line 42 of file fpga_lsu.hpp.

◆ decorated_device_ptr

Definition at line 53 of file usm_pointers.hpp.

◆ decorated_host_ptr

Definition at line 58 of file usm_pointers.hpp.

◆ device_ptr

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

Definition at line 25 of file usm_pointers.hpp.

◆ host_ptr

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

Definition at line 31 of file usm_pointers.hpp.

◆ prefetch

template<bool _B>
using sycl::_V1::ext::intel::prefetch = typedef prefetch_impl<_B>

Definition at line 43 of file fpga_lsu.hpp.

◆ raw_device_ptr

Definition at line 40 of file usm_pointers.hpp.

◆ raw_host_ptr

Definition at line 45 of file usm_pointers.hpp.

◆ statically_coalesce

Definition at line 44 of file fpga_lsu.hpp.

Enumeration Type Documentation

◆ Preference

Enumerator
DSP 
Softlogic 
Compiler_default 

Definition at line 15 of file fpga_dsp_control.hpp.

◆ Propagate

Enumerator
On 
Off 

Definition at line 16 of file fpga_dsp_control.hpp.

Function Documentation

◆ fpga_emulator_selector_v()

int sycl::_V1::ext::intel::fpga_emulator_selector_v ( const device device)
inline

◆ fpga_loop_fuse()

template<int _N = 1, typename _F >
void sycl::_V1::ext::intel::fpga_loop_fuse ( _F  f)

Definition at line 16 of file fpga_loop_fuse.hpp.

◆ fpga_loop_fuse_independent()

template<int _N = 1, typename _F >
void sycl::_V1::ext::intel::fpga_loop_fuse_independent ( _F  f)

Definition at line 21 of file fpga_loop_fuse.hpp.

◆ fpga_reg() [1/2]

template<typename _T >
std::enable_if_t<std::is_trivially_copyable_v<_T>, _T> sycl::_V1::ext::intel::fpga_reg ( _T  t)

Definition at line 22 of file fpga_reg.hpp.

References sycl::_V1::t.

◆ fpga_reg() [2/2]

template<typename _T >
std:: enable_if_t<std::is_trivially_copyable_v<_T> == false, _T> sycl::_V1::ext::intel::fpga_reg ( _T  t)

Definition at line 35 of file fpga_reg.hpp.

References sycl::_V1::t.

◆ fpga_selector_v()

int sycl::_V1::ext::intel::fpga_selector_v ( const device device)
inline

◆ fpga_simulator_selector_v()

int sycl::_V1::ext::intel::fpga_simulator_selector_v ( const device device)
inline

◆ math_dsp_control()

template<Preference my_preference = Preference::DSP, Propagate my_propagate = Propagate::On, typename Function >
void sycl::_V1::ext::intel::math_dsp_control ( Function  f)

Preference: Control the hardware implementation of math operations in the lambda expression.

– DSP: Prefer math operations to be implemented in DSPs. – Softlogic: Prefer math operations to be implemented in soft-logic. – Compiler_default: Compiler determines the implementation based on the data type and math operation.

Propagate: Determine the propagation of 'Preference' to function calls in the lambda expression. – On: 'Preference' recursively applies to math operations in all function calls in the lambda expression. – Off: 'Preference' applies only to math operations directly inside the lambda expression. Math operations in function calls inside the lambda expression are not affected by 'Preference'.

Definition at line 72 of file fpga_dsp_control.hpp.

References DSP, math_prefer_dsp_no_propagate(), math_prefer_dsp_propagate(), math_prefer_softlogic_no_propagate(), math_prefer_softlogic_propagate(), On, and Softlogic.

◆ math_prefer_dsp_no_propagate()

template<typename Function >
void sycl::_V1::ext::intel::math_prefer_dsp_no_propagate ( Function  f)

Definition at line 32 of file fpga_dsp_control.hpp.

Referenced by math_dsp_control().

◆ math_prefer_dsp_propagate()

template<typename Function >
void sycl::_V1::ext::intel::math_prefer_dsp_propagate ( Function  f)

Definition at line 23 of file fpga_dsp_control.hpp.

Referenced by math_dsp_control().

◆ math_prefer_softlogic_no_propagate()

template<typename Function >
void sycl::_V1::ext::intel::math_prefer_softlogic_no_propagate ( Function  f)

Definition at line 51 of file fpga_dsp_control.hpp.

Referenced by math_dsp_control().

◆ math_prefer_softlogic_propagate()

template<typename Function >
void sycl::_V1::ext::intel::math_prefer_softlogic_propagate ( Function  f)

Definition at line 42 of file fpga_dsp_control.hpp.

Referenced by math_dsp_control().

Variable Documentation

◆ buffer_location

template<int A>
constexpr property::buffer_location::instance<A> sycl::_V1::ext::intel::buffer_location {}
inlineconstexpr

Definition at line 55 of file accessor_properties.hpp.

◆ BURST_COALESCE

constexpr uint8_t sycl::_V1::ext::intel::BURST_COALESCE = 0x1
constexpr

Definition at line 17 of file fpga_lsu.hpp.

◆ CACHE

constexpr uint8_t sycl::_V1::ext::intel::CACHE = 0x2
constexpr

Definition at line 18 of file fpga_lsu.hpp.

◆ EMULATION_PLATFORM_NAME

constexpr auto sycl::_V1::ext::intel::EMULATION_PLATFORM_NAME
staticconstexpr
Initial value:
=
"Intel(R) FPGA Emulation Platform for OpenCL(TM)"

Definition at line 58 of file fpga_device_selector.hpp.

Referenced by fpga_emulator_selector_v().

◆ HARDWARE_PLATFORM_NAME

constexpr auto sycl::_V1::ext::intel::HARDWARE_PLATFORM_NAME
staticconstexpr
Initial value:
=
"Intel(R) FPGA SDK for OpenCL(TM)"

Definition at line 60 of file fpga_device_selector.hpp.

Referenced by fpga_selector_v().

◆ PREFETCH

constexpr uint8_t sycl::_V1::ext::intel::PREFETCH = 0x8
constexpr

Definition at line 20 of file fpga_lsu.hpp.

◆ STATICALLY_COALESCE

constexpr uint8_t sycl::_V1::ext::intel::STATICALLY_COALESCE = 0x4
constexpr

Definition at line 19 of file fpga_lsu.hpp.