RAJA
RAJA provides a collection of platform portability abstractions for C++ HPC applications.
Namespaces | Functions
forall.hpp File Reference

Header file containing RAJA segment template methods for SIMD execution. More...

#include "RAJA/config.hpp"
#include <iterator>
#include <type_traits>
#include "RAJA/util/types.hpp"
#include "RAJA/policy/simd/policy.hpp"
#include "RAJA/pattern/params/forall.hpp"

Go to the source code of this file.

Namespaces

 RAJA
 
 RAJA::policy
 
 RAJA::policy::simd
 

Functions

template<typename Iterable , typename Func , typename ForallParam >
RAJA_INLINE concepts::enable_if_t< resources::EventProxy< resources::Host >, expt::type_traits::is_ForallParamPack< ForallParam >, concepts::negate< expt::type_traits::is_ForallParamPack_empty< ForallParam > > > RAJA::policy::simd::forall_impl (resources::Host host_res, const simd_exec &pol, Iterable &&iter, Func &&body, ForallParam f_params)
 
template<typename Iterable , typename Func , typename ForallParam >
RAJA_INLINE concepts::enable_if_t< resources::EventProxy< resources::Host >, expt::type_traits::is_ForallParamPack< ForallParam >, expt::type_traits::is_ForallParamPack_empty< ForallParam > > RAJA::policy::simd::forall_impl (resources::Host host_res, const simd_exec &, Iterable &&iter, Func &&body, ForallParam)
 

Detailed Description

Header file containing RAJA segment template methods for SIMD execution.

These methods should work on any platform. They make no asumptions about data alignment.

Note: Reduction operations should not be used with simd policies. Limited support.