FERS 0.1.0
The Flexible Extensible Radar Simulator
Loading...
Searching...
No Matches
core::SimulationMemoryProjection Struct Reference

Captures startup memory and rendered-output projections for a simulation. More...

#include "memory_projection.h"

+ Collaboration diagram for core::SimulationMemoryProjection:

Public Attributes

RealType duration_seconds = 0.0
 Simulated duration covered by the projection.
 
RealType simulation_sample_rate_hz = 0.0
 Oversampled simulation rate used for sample counts.
 
unsigned oversample_ratio = 1
 Oversampling ratio applied to the configured output rate.
 
std::uint64_t streaming_sample_count = 0
 Internal samples produced for each full-duration stream.
 
std::uint64_t phase_noise_sample_count = 0
 Samples held by each enabled phase-noise lookup.
 
std::uint64_t phase_noise_timing_count = 0
 Unique streaming timing sources considered.
 
std::uint64_t enabled_phase_noise_timing_count = 0
 Unique timing sources with phase noise enabled.
 
std::uint64_t streaming_receiver_count = 0
 Receivers that emit streaming output.
 
std::uint64_t pulsed_receiver_count = 0
 Receivers that render finite pulsed receive windows.
 
std::uint64_t pulsed_window_count = 0
 Projected count of pulsed receive windows.
 
std::uint64_t rendered_hdf5_sample_count = 0
 Projected IQ samples written to HDF5 datasets.
 
ByteProjection phase_noise_lookup
 Projected memory for all enabled timing-source lookup tables.
 
ByteProjection streaming_iq_buffers
 Projected full-duration streaming output sink memory.
 
ByteProjection rendered_hdf5_payload
 Projected raw I/Q dataset payload bytes written to HDF5.
 
std::optional< ByteProjectionresident_baseline
 Startup RSS observed before projected run allocations.
 
std::optional< ByteProjectionprojected_total_footprint
 Projected total resident footprint at peak.
 
std::optional< std::uint64_t > current_resident_set
 Process RSS at projection time, when available.
 

Detailed Description

Captures startup memory and rendered-output projections for a simulation.

The projection separates memory that is expected to be allocated by the simulation run itself from the resident baseline already present at startup. Byte totals are estimates intended for logging, diagnostics, and API reporting.

Definition at line 47 of file memory_projection.h.

Member Data Documentation

◆ current_resident_set

std::optional<std::uint64_t> core::SimulationMemoryProjection::current_resident_set

Process RSS at projection time, when available.

Definition at line 67 of file memory_projection.h.

◆ duration_seconds

RealType core::SimulationMemoryProjection::duration_seconds = 0.0

Simulated duration covered by the projection.

Definition at line 49 of file memory_projection.h.

◆ enabled_phase_noise_timing_count

std::uint64_t core::SimulationMemoryProjection::enabled_phase_noise_timing_count = 0

Unique timing sources with phase noise enabled.

Definition at line 56 of file memory_projection.h.

◆ oversample_ratio

unsigned core::SimulationMemoryProjection::oversample_ratio = 1

Oversampling ratio applied to the configured output rate.

Definition at line 51 of file memory_projection.h.

◆ phase_noise_lookup

ByteProjection core::SimulationMemoryProjection::phase_noise_lookup

Projected memory for all enabled timing-source lookup tables.

Definition at line 62 of file memory_projection.h.

◆ phase_noise_sample_count

std::uint64_t core::SimulationMemoryProjection::phase_noise_sample_count = 0

Samples held by each enabled phase-noise lookup.

Definition at line 54 of file memory_projection.h.

◆ phase_noise_timing_count

std::uint64_t core::SimulationMemoryProjection::phase_noise_timing_count = 0

Unique streaming timing sources considered.

Definition at line 55 of file memory_projection.h.

◆ projected_total_footprint

std::optional<ByteProjection> core::SimulationMemoryProjection::projected_total_footprint

Projected total resident footprint at peak.

Definition at line 66 of file memory_projection.h.

◆ pulsed_receiver_count

std::uint64_t core::SimulationMemoryProjection::pulsed_receiver_count = 0

Receivers that render finite pulsed receive windows.

Definition at line 58 of file memory_projection.h.

◆ pulsed_window_count

std::uint64_t core::SimulationMemoryProjection::pulsed_window_count = 0

Projected count of pulsed receive windows.

Definition at line 59 of file memory_projection.h.

◆ rendered_hdf5_payload

ByteProjection core::SimulationMemoryProjection::rendered_hdf5_payload

Projected raw I/Q dataset payload bytes written to HDF5.

Definition at line 64 of file memory_projection.h.

◆ rendered_hdf5_sample_count

std::uint64_t core::SimulationMemoryProjection::rendered_hdf5_sample_count = 0

Projected IQ samples written to HDF5 datasets.

Definition at line 60 of file memory_projection.h.

◆ resident_baseline

std::optional<ByteProjection> core::SimulationMemoryProjection::resident_baseline

Startup RSS observed before projected run allocations.

Definition at line 65 of file memory_projection.h.

◆ simulation_sample_rate_hz

RealType core::SimulationMemoryProjection::simulation_sample_rate_hz = 0.0

Oversampled simulation rate used for sample counts.

Definition at line 50 of file memory_projection.h.

◆ streaming_iq_buffers

ByteProjection core::SimulationMemoryProjection::streaming_iq_buffers

Projected full-duration streaming output sink memory.

Definition at line 63 of file memory_projection.h.

◆ streaming_receiver_count

std::uint64_t core::SimulationMemoryProjection::streaming_receiver_count = 0

Receivers that emit streaming output.

Definition at line 57 of file memory_projection.h.

◆ streaming_sample_count

std::uint64_t core::SimulationMemoryProjection::streaming_sample_count = 0

Internal samples produced for each full-duration stream.

Definition at line 53 of file memory_projection.h.


The documentation for this struct was generated from the following file: