#include <output_settings.hh>
Typed configuration consumed by output sinks.
◆ OutputSettings() [1/2]
| DiFfRG::Config::OutputSettings::OutputSettings |
( |
| ) |
|
|
default |
◆ OutputSettings() [2/2]
| DiFfRG::Config::OutputSettings::OutputSettings |
( |
const ConfigTree & | config | ) |
|
|
explicit |
◆ asynchronous
| bool DiFfRG::Config::OutputSettings::asynchronous = true |
◆ configuration_json
| std::string DiFfRG::Config::OutputSettings::configuration_json = "{}" |
◆ configuration_log
| std::string DiFfRG::Config::OutputSettings::configuration_log = "{}" |
◆ default_max_pending_bytes
| std::size_t DiFfRG::Config::OutputSettings::default_max_pending_bytes = 2ull * 1024ull * 1024ull * 1024ull |
|
inlinestaticconstexpr |
◆ hdf5_queue_depth
| unsigned int DiFfRG::Config::OutputSettings::hdf5_queue_depth = 1 |
Frames the HDF5 writer thread may have in flight. Deliberately separate from max_pending_frames, which bounds VTK/DataOut memory and has nothing to do with this.
The default of 1 is a durability choice rather than a throughput one: each frame is still closed on disk before the next is opened, so a hard abort (SIGKILL, node eviction) loses at most this many frames on top of the one being written. Depth 1 already hides the whole open/write/close behind the next output interval, because frames are separated by many timesteps. Ignored when asynchronous is false.
◆ Lambda
| double DiFfRG::Config::OutputSettings::Lambda = -1. |
◆ log_level
| spdlog::level::level_enum DiFfRG::Config::OutputSettings::log_level = spdlog::level::info |
◆ log_queue_size
| std::size_t DiFfRG::Config::OutputSettings::log_queue_size = 8192 |
◆ max_pending_bytes
◆ max_pending_frames
| unsigned int DiFfRG::Config::OutputSettings::max_pending_frames = 2 |
◆ subdivisions
| unsigned int DiFfRG::Config::OutputSettings::subdivisions = 1 |
◆ verbosity
| int DiFfRG::Config::OutputSettings::verbosity = 0 |
Mirrors /output/verbosity, which the timesteppers already read. It sets how much of the run log reaches the console: at 0 only warnings and errors, at 1 the ordinary messages, from 2 upwards also debug records. The log file always receives everything, independent of this.
At 3 and above the output sinks additionally emit one per-frame timing line and one output_timings.csv row. The aggregate timing report at the end of a run is a debug record: it is always written to the log file, and reaches the console from verbosity 2 upwards.
◆ write_hdf5
| bool DiFfRG::Config::OutputSettings::write_hdf5 = true |
◆ write_json
| bool DiFfRG::Config::OutputSettings::write_json = false |
Mirrors /output/json. Forces the <name>.log.json copy of the configuration to be written; without it the file is only produced when there is no HDF5 output to carry the configuration in its /config group.
◆ write_vtk
| bool DiFfRG::Config::OutputSettings::write_vtk = true |
The documentation for this struct was generated from the following file:
- /home/runner/work/DiFfRG_current/DiFfRG_current/DiFfRG/include/DiFfRG/discretization/data/output_settings.hh