Jet  v1.3.3
Namespaces | Enumerations | Functions
parallel.h File Reference
#include "detail/parallel-inl.h"

Go to the source code of this file.

Namespaces

 jet
 

Enumerations

enum  jet::ExecutionPolicy { jet::ExecutionPolicy::kSerial, jet::ExecutionPolicy::kParallel }
 Execution policy tag. More...
 

Functions

template<typename RandomIterator , typename T >
void jet::parallelFill (const RandomIterator &begin, const RandomIterator &end, const T &value, ExecutionPolicy policy=ExecutionPolicy::kParallel)
 Fills from begin to end with value in parallel. More...
 
template<typename IndexType , typename Function >
void jet::parallelFor (IndexType beginIndex, IndexType endIndex, const Function &function, ExecutionPolicy policy=ExecutionPolicy::kParallel)
 Makes a for-loop from beginIndex to endIndex in parallel. More...
 
template<typename IndexType , typename Function >
void jet::parallelRangeFor (IndexType beginIndex, IndexType endIndex, const Function &function, ExecutionPolicy policy=ExecutionPolicy::kParallel)
 Makes a range-loop from beginIndex to endIndex in parallel. More...
 
template<typename IndexType , typename Function >
void jet::parallelFor (IndexType beginIndexX, IndexType endIndexX, IndexType beginIndexY, IndexType endIndexY, const Function &function, ExecutionPolicy policy=ExecutionPolicy::kParallel)
 Makes a 2D nested for-loop in parallel. More...
 
template<typename IndexType , typename Function >
void jet::parallelRangeFor (IndexType beginIndexX, IndexType endIndexX, IndexType beginIndexY, IndexType endIndexY, const Function &function, ExecutionPolicy policy=ExecutionPolicy::kParallel)
 Makes a 2D nested range-loop in parallel. More...
 
template<typename IndexType , typename Function >
void jet::parallelFor (IndexType beginIndexX, IndexType endIndexX, IndexType beginIndexY, IndexType endIndexY, IndexType beginIndexZ, IndexType endIndexZ, const Function &function, ExecutionPolicy policy=ExecutionPolicy::kParallel)
 Makes a 3D nested for-loop in parallel. More...
 
template<typename IndexType , typename Function >
void jet::parallelRangeFor (IndexType beginIndexX, IndexType endIndexX, IndexType beginIndexY, IndexType endIndexY, IndexType beginIndexZ, IndexType endIndexZ, const Function &function, ExecutionPolicy policy=ExecutionPolicy::kParallel)
 Makes a 3D nested range-loop in parallel. More...
 
template<typename IndexType , typename Value , typename Function , typename Reduce >
Value jet::parallelReduce (IndexType beginIndex, IndexType endIndex, const Value &identity, const Function &func, const Reduce &reduce, ExecutionPolicy policy=ExecutionPolicy::kParallel)
 Performs reduce operation in parallel. More...
 
template<typename RandomIterator >
void jet::parallelSort (RandomIterator begin, RandomIterator end, ExecutionPolicy policy=ExecutionPolicy::kParallel)
 Sorts a container in parallel. More...
 
template<typename RandomIterator , typename CompareFunction >
void jet::parallelSort (RandomIterator begin, RandomIterator end, CompareFunction compare, ExecutionPolicy policy=ExecutionPolicy::kParallel)
 Sorts a container in parallel with a custom compare function. More...
 
void jet::setMaxNumberOfThreads (unsigned int numThreads)
 Sets maximum number of threads to use. More...
 
unsigned int jet::maxNumberOfThreads ()
 Returns maximum number of threads to use. More...