NeoFOAM
WIP Prototype of a modern OpenFOAM core
Loading...
Searching...
No Matches
Namespaces | Concepts | Functions
parallelAlgorithms.hpp File Reference
#include <Kokkos_Core.hpp>
#include <type_traits>
#include "NeoFOAM/core/executor/executor.hpp"

Go to the source code of this file.

Namespaces

namespace  NeoFOAM
 

Concepts

concept  NeoFOAM::parallelForKernel
 
concept  NeoFOAM::parallelForFieldKernel
 

Functions

template<typename Executor , parallelForKernel Kernel>
void NeoFOAM::parallelFor (const Executor &exec, std::pair< size_t, size_t > range, Kernel kernel, std::string name="parallelFor")
 
template<parallelForKernel Kernel>
void NeoFOAM::parallelFor (const NeoFOAM::Executor &exec, std::pair< size_t, size_t > range, Kernel kernel, std::string name="parallelFor")
 
template<typename Executor , typename ValueType , parallelForFieldKernel< ValueType > Kernel>
void NeoFOAM::parallelFor (const Executor &exec, Field< ValueType > &field, Kernel kernel, std::string name="parallelFor")
 
template<typename ValueType , parallelForFieldKernel< ValueType > Kernel>
void NeoFOAM::parallelFor (Field< ValueType > &field, Kernel kernel, std::string name="parallelFor")
 
template<typename Executor , typename Kernel , typename T >
void NeoFOAM::parallelReduce (const Executor &exec, std::pair< size_t, size_t > range, Kernel kernel, T &value)
 
template<typename Kernel , typename T >
void NeoFOAM::parallelReduce (const NeoFOAM::Executor &exec, std::pair< size_t, size_t > range, Kernel kernel, T &value)
 
template<typename Executor , typename ValueType , typename Kernel , typename T >
void NeoFOAM::parallelReduce (const Executor &exec, Field< ValueType > &field, Kernel kernel, T &value)
 
template<typename ValueType , typename Kernel , typename T >
void NeoFOAM::parallelReduce (Field< ValueType > &field, Kernel kernel, T &value)
 
template<typename Executor , typename Kernel >
void NeoFOAM::parallelScan (const Executor &exec, std::pair< size_t, size_t > range, Kernel kernel)
 
template<typename Kernel >
void NeoFOAM::parallelScan (const NeoFOAM::Executor &exec, std::pair< size_t, size_t > range, Kernel kernel)
 
template<typename Executor , typename Kernel , typename ReturnType >
void NeoFOAM::parallelScan (const Executor &exec, std::pair< size_t, size_t > range, Kernel kernel, ReturnType &returnValue)
 
template<typename Kernel , typename ReturnType >
void NeoFOAM::parallelScan (const NeoFOAM::Executor &exec, std::pair< size_t, size_t > range, Kernel kernel, ReturnType &returnValue)