AssemblySchedule Struct Reference#

DiFfRG: DiFfRG::AssemblySchedule Struct Reference
DiFfRG
Discretization Framework for functional Renormalization Group flows
DiFfRG::AssemblySchedule Struct Reference

The two trailing arguments of dealii::MeshWorker::mesh_loop. More...

#include <assembly_schedule.hh>

Public Attributes

uint queue_length = 1
 mesh_loop's queue_length: how many work items are live in the pipeline at once.
 
uint chunk_size = 1
 mesh_loop's chunk_size: cells per work item, processed back-to-back by one worker.
 

Friends

bool operator== (const AssemblySchedule &, const AssemblySchedule &)=default
 

Detailed Description

The two trailing arguments of dealii::MeshWorker::mesh_loop.

Neither value can change a computed number: mesh_loop drives a tbb::parallel_pipeline whose copier stage is serial and runs in iterator order, so the assembled result is bitwise identical for any schedule. They are purely a performance choice, which is what makes it safe to derive them rather than pin them per configuration.

Friends And Related Symbol Documentation

◆ operator==

bool operator== ( const AssemblySchedule & ,
const AssemblySchedule &  )
friend

Member Data Documentation

◆ chunk_size

uint DiFfRG::AssemblySchedule::chunk_size = 1

mesh_loop's chunk_size: cells per work item, processed back-to-back by one worker.

◆ queue_length

uint DiFfRG::AssemblySchedule::queue_length = 1

mesh_loop's queue_length: how many work items are live in the pipeline at once.


The documentation for this struct was generated from the following file:
  • /home/runner/work/DiFfRG_current/DiFfRG_current/DiFfRG/include/DiFfRG/discretization/common/assembly_schedule.hh