Reference documentation for deal.II version 9.5.0
\(\newcommand{\dealvcentcolon}{\mathrel{\mathop{:}}}\) \(\newcommand{\dealcoloneq}{\dealvcentcolon\mathrel{\mkern-1.2mu}=}\) \(\newcommand{\jump}[1]{\left[\!\left[ #1 \right]\!\right]}\) \(\newcommand{\average}[1]{\left\{\!\left\{ #1 \right\}\!\right\}}\)
Loading...
Searching...
No Matches
Classes | Namespaces | Functions | Variables
parallel.h File Reference
#include <deal.II/base/config.h>
#include <deal.II/base/exceptions.h>
#include <deal.II/base/mutex.h>
#include <deal.II/base/synchronous_iterator.h>
#include <deal.II/base/template_constraints.h>
#include <cstddef>
#include <functional>
#include <memory>
#include <tuple>
#include <tbb/blocked_range.h>
#include <tbb/parallel_for.h>
#include <tbb/parallel_reduce.h>
#include <tbb/partitioner.h>

Go to the source code of this file.

Classes

struct  parallel::internal::EnableOpenMPSimdFor< Number >
 
struct  parallel::ParallelForInteger
 
class  parallel::internal::TBBPartitioner
 

Namespaces

namespace  parallel
 
namespace  parallel::internal
 
namespace  internal
 
namespace  internal::VectorImplementation
 
namespace  internal::SparseMatrixImplementation
 

Functions

template<typename Iterator , typename Functor >
void parallel::internal::parallel_for (Iterator x_begin, Iterator x_end, const Functor &functor, const unsigned int grainsize)
 
template<typename Iterator , typename Functor >
void parallel::internal::parallel_for (Iterator x_begin, Iterator x_end, const Functor &functor, const unsigned int grainsize, const std::shared_ptr< tbb::affinity_partitioner > &partitioner)
 
template<typename InputIterator , typename OutputIterator , typename Function >
void parallel::transform (const InputIterator &begin_in, const InputIterator &end_in, OutputIterator out, const Function &function, const unsigned int grainsize)
 
template<typename InputIterator1 , typename InputIterator2 , typename OutputIterator , typename Function >
void parallel::transform (const InputIterator1 &begin_in1, const InputIterator1 &end_in1, InputIterator2 in2, OutputIterator out, const Function &function, const unsigned int grainsize)
 
template<typename InputIterator1 , typename InputIterator2 , typename InputIterator3 , typename OutputIterator , typename Function >
void parallel::transform (const InputIterator1 &begin_in1, const InputIterator1 &end_in1, InputIterator2 in2, InputIterator3 in3, OutputIterator out, const Function &function, const unsigned int grainsize)
 
template<typename Iterator , typename Function >
void parallel::internal::apply_to_subranges (const tbb::blocked_range< Iterator > &range, const Function &f)
 
template<typename Iterator , typename Function >
void parallel::apply_to_subranges (const Iterator &begin, const std_cxx20::type_identity_t< Iterator > &end, const Function &f, const unsigned int grainsize)
 
template<typename ResultType , typename Iterator , typename Function >
ResultType parallel::accumulate_from_subranges (const Function &f, const Iterator &begin, const std_cxx20::type_identity_t< Iterator > &end, const unsigned int grainsize)
 

Variables

unsigned int internal::VectorImplementation::minimum_parallel_grain_size = 4096
 
unsigned int internal::SparseMatrixImplementation::minimum_parallel_grain_size = 256