Reference documentation for deal.II version Git 98872c4d47 2020-10-01 08:48:12 +0200
\(\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\}}\)
Classes | Functions
WorkStream::internal::tbb_no_coloring Namespace Reference

Classes

class  IteratorRangeToItemStream
 
class  TBBCopier
 
class  TBBWorker
 

Functions

template<typename Worker , typename Copier , typename Iterator , typename ScratchData , typename CopyData >
void run (const Iterator &begin, const typename identity< Iterator >::type &end, Worker worker, Copier copier, const ScratchData &sample_scratch_data, const CopyData &sample_copy_data, const unsigned int queue_length, const unsigned int chunk_size)
 

Detailed Description

A namespace for the implementation of details of the WorkStream pattern and function. This namespace holds classes that deal with the second implementation described in the paper by Turcksin, Kronbichler and Bangerth (see workstream_paper). Here, no coloring is provided, so copying is done sequentially using a TBB filter.

Even though this implementation is slower than the third implementation discussed in that paper, we need to keep it around for two reasons: (i) a user may not give us a graph coloring, (ii) we want to use this implementation for colors that are just too small.

Function Documentation

◆ run()

template<typename Worker , typename Copier , typename Iterator , typename ScratchData , typename CopyData >
void WorkStream::internal::tbb_no_coloring::run ( const Iterator &  begin,
const typename identity< Iterator >::type &  end,
Worker  worker,
Copier  copier,
const ScratchData &  sample_scratch_data,
const CopyData &  sample_copy_data,
const unsigned int  queue_length,
const unsigned int  chunk_size 
)

Definition at line 691 of file work_stream.h.