Fora Telemetry & Validation¶
SimGe can generate telemetry-instrumented federate code so a run can be measured and compared against your design-time model. This chapter explains how to turn it on, what gets emitted, and how the results flow back into SimGe. For the generator itself, see Code Generator; for inspecting results, see Telemetry Visualizer.
What it is for¶
Design-time metrics (from the dashboard and reports) describe how a model should behave. Telemetry captures how it actually behaves at run time — warm-up cost, latency, and where time is spent per event sub-phase. Comparing the two reveals operational drift between design and runtime.
Enabling telemetry generation¶
Telemetry is a code-generation option, controlled by the Enable Fora Telemetry project setting in the Code Generator's Fora Telemetry Settings section (see Code Generator).
When enabled, SimGe:
- wraps the generated encoders, decoders, and specialized codecs so their serialization/deserialization runs inside telemetry scopes, and
- emits design metadata for the model (per-class design figures such as declared counts and semantic weights) alongside the generated code, so a run can be correlated with the model that produced it.
When disabled, the generated code carries no instrumentation overhead.
Capturing a run¶
- Generate federate code with telemetry enabled.
- Run the federate(s) under the SimGe validation harness, which executes the scenario and records telemetry.
- The harness produces run artifacts in an output folder:
- a
manifest.jsondescribing the run (including the FOM checksum used), and - one or more
.fortlog files (one per federate stream). - optional generated reports (e.g.
ValidationReport.md,TelemetryReliabilityReport.md).
Each manifest is a single replication. Pooling across multiple independent runs is the harness's responsibility — see its documentation.
Inspecting results¶
Open the Telemetry Visualizer (Tools → Experimental) and load the run's manifest.json. The visualizer:
- verifies the run's FOM against the open project (FOM Matched / Mismatch / Standalone),
- shows the scenario, federate roster, and class inventory,
- charts warm-up, latency, sub-phase breakdown, and the Operational Drift radar,
- surfaces the accompanying Markdown reports.
Typical workflow¶
- Author and validate the FOM in SimGe (OME, FOM Validation).
- Generate federate code with Enable Fora Telemetry on.
- Run under the validation harness to capture telemetry.
- Load the run in the Telemetry Visualizer and review drift, latency, and hotspots.
- Adjust the model or generation settings and repeat.
Deeper specifications of the telemetry/validation integration live in the project's Architecture documentation ("Fora Telemetry and Validation Integration").
Next: Preferences & Options