batchlas::portable::detail Namespace Reference

Functions

◆ map_words()

template<typename T, typename F>
T batchlas::portable::detail::map_words ( const T & v,
F && f )
inline

Definition at line 47 of file group-collectives.hh.

◆ __attribute__() [1/2]

batchlas::portable::detail::__attribute__ ( (always_inline) )

Definition at line 89 of file group-collectives.hh.

◆ __attribute__() [2/2]

template<typename T>
batchlas::portable::detail::__attribute__ ( (always_inline) )

Definition at line 99 of file group-collectives.hh.

◆ wg_reduce_floating()

template<typename Group, typename T, typename Op>
T batchlas::portable::detail::wg_reduce_floating ( Group g,
T x,
Op op )
inline

Definition at line 112 of file group-collectives.hh.

Types

◆ local_ptr

template<typename T>
using batchlas::portable::detail::local_ptr = __attribute__((address_space(3))) T*

Definition at line 85 of file group-collectives.hh.

Variables

◆ kSplitWords

template<typename T>
bool batchlas::portable::detail::kSplitWords = sizeof(T) > 8 || (sizeof(T) & (sizeof(T) - 1)) != 0
inlineconstexpr

Definition at line 35 of file group-collectives.hh.

◆ kSplitComplexSum

template<typename T, typename Op>
bool batchlas::portable::detail::kSplitComplexSum
inlineconstexpr
Initial value:
=
is_std_complex<T>::value && (std::is_same_v<Op, sycl::plus<T>> || std::is_same_v<Op, sycl::plus<>>)

Definition at line 43 of file group-collectives.hh.

◆ kWorkGroup

template<typename G>
bool batchlas::portable::detail::kWorkGroup = false
inlineconstexpr

Definition at line 61 of file group-collectives.hh.

◆ kWorkGroup< sycl::group< D > >

template<int D>
bool batchlas::portable::detail::kWorkGroup< sycl::group< D > > = true
inlineconstexpr

Definition at line 63 of file group-collectives.hh.

◆ kFloating

template<typename T>
bool batchlas::portable::detail::kFloating = std::is_floating_point_v<T> || std::is_same_v<T, sycl::half>
inlineconstexpr

Definition at line 66 of file group-collectives.hh.

Classes

struct  is_std_complex
struct  is_std_complex< std::complex< R > >
struct  sycl_vec
struct  sycl_vec< sycl::vec< R, N > >
struct  rebind_op
struct  rebind_op< OpT< V >, R >