/home/runner/work/DiFfRG_current/DiFfRG_current/DiFfRG/include/DiFfRG/discretization/common/assembly_schedule.hh File Reference#
|
DiFfRG
Discretization Framework for functional Renormalization Group flows
|
assembly_schedule.hh File Reference
#include <deal.II/base/multithread_info.h>#include <deal.II/distributed/tria_base.h>#include <deal.II/dofs/dof_handler.h>#include <deal.II/grid/filtered_iterator.h>#include <deal.II/grid/tria.h>#include <DiFfRG/common/config_tree.hh>#include <DiFfRG/common/threads.hh>#include <DiFfRG/common/types.hh>#include <algorithm>#include <cmath>#include <optional>Go to the source code of this file.
Classes | |
| struct | DiFfRG::AssemblySchedule |
| The two trailing arguments of dealii::MeshWorker::mesh_loop. More... | |
| struct | DiFfRG::AssemblyScheduleOverrides |
| Overrides, if really wanted by the user: /discretization/{mesh_workers,batch_size}. More... | |
Namespaces | |
| namespace | DiFfRG |
| namespace | DiFfRG::assembly_cost |
| Representative per-cell costs, in nanoseconds, for the loops DiFfRG assembles. | |
| namespace | DiFfRG::assembly_schedule_defaults |
Functions | |
| AssemblySchedule | DiFfRG::make_assembly_schedule (const uint n_local_cells, const uint thread_budget, const double cost_ns, const AssemblyScheduleOverrides &overrides={}) |
| Derive one mesh_loop schedule from the cost of a cell. | |
| template<int dim> | |
| auto | DiFfRG::locally_owned_cells (const dealii::DoFHandler< dim > &dof_handler) |
| The cells this rank assembles. | |
| template<typename Discretization > | |
| uint | DiFfRG::n_locally_owned_cells (const Discretization &discretization) |
| How many cells locally_owned_cells() yields. | |
Variables | |
| constexpr double | DiFfRG::assembly_cost::local_fe = 250. |
| Local FE work only: mass matrices, refinement indicators. ~0.2-0.3 us/cell for CG p=3. | |
| constexpr double | DiFfRG::assembly_cost::algebraic = 1000. |
| Algebraic couplings without momentum quadrature, e.g. LDG's level-to-level transfers. | |
| constexpr double | DiFfRG::assembly_cost::momentum_integral = 3000. |
| constexpr double | DiFfRG::assembly_schedule_defaults::chunk_work_ns = 8.0e3 |
| constexpr double | DiFfRG::assembly_schedule_defaults::worker_work_ns = 64.0e3 |
| constexpr uint | DiFfRG::assembly_schedule_defaults::chunk_cap = 256 |
Generated by