deal.II version GIT relicensing-2206-gaa53ff9447 2024-12-02 09:10:00+00:00
\(\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 | Functions
WorkStream::internal::tbb_no_coloring Namespace Reference

Classes

class  IteratorRangeToItemStream
 

Functions

template<typename Worker , typename Copier , typename Iterator , typename ScratchData , typename CopyData >
void run (const Iterator &begin, const std_cxx20::type_identity_t< Iterator > &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 std_cxx20::type_identity_t< Iterator > &  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 511 of file work_stream.h.