YAKL
Namespaces | Functions
YAKL_parallel_for_fortran_unused_doc_only.h File Reference

Go to the source code of this file.

Namespaces

 yakl
 
 yakl::fortran
 Contains Bounds class, and parallel_for() routines using Fortran-style indexing and ordering.
 

Functions

template<class F , int N, bool simple, int VecLen = YAKL_DEFAULT_VECTOR_LEN, bool B4B = false>
void yakl::fortran::parallel_for (Bounds< N, simple > const &bounds, F const &f, LaunchConfig< VecLen, B4B > config=LaunchConfig<>())
 [ASYNCHRONOUS] Launch the passed functor in parallel. More...
 
template<class F , int N, bool simple, int VecLen = YAKL_DEFAULT_VECTOR_LEN, bool B4B = false>
void yakl::fortran::parallel_for (char const *str, Bounds< N, simple > const &bounds, F const &f, LaunchConfig< VecLen, B4B > config=LaunchConfig<>())
 [ASYNCHRONOUS] Launch the passed functor in parallel. More...
 
template<class F , int N, bool simple>
YAKL_INLINE void yakl::fortran::parallel_inner (Bounds< N, simple > const &bounds, F const &f, InnerHandler handler)
 Launch the passed functor in parallel in the finenst-level parallelism on the device. More...
 
template<class F , int N, bool simple, int VecLen = YAKL_DEFAULT_VECTOR_LEN, bool B4B = false>
void yakl::fortran::parallel_outer (Bounds< N, simple > const &bounds, F const &f, LaunchConfig< VecLen, B4B > config=LaunchConfig<>())
 [ASYNCHRONOUS] Launch the passed functor in parallel in the coarsest-level parallelism on the device More...
 
template<class F , int N, bool simple, int VecLen = YAKL_DEFAULT_VECTOR_LEN, bool B4B = false>
void yakl::fortran::parallel_outer (char const *str, Bounds< N, simple > const &bounds, F const &f, LaunchConfig< VecLen, B4B > config=LaunchConfig<>())
 [ASYNCHRONOUS] Launch the passed functor in parallel in the coarsest-level parallelism on the device More...
 
template<class F >
YAKL_INLINE void yakl::fortran::single_inner (F const &f, InnerHandler handler)
 Launch the passed functor to only use one of the inner threads (still parallel over outer threads). More...