Telemetry Struct
Board telemetry Sentinel recorded during a window. More...
Declaration
Included Headers
Public Member Functions Index
| std::filesystem::path | save (const std::filesystem::path &file_path) const |
|
Write the telemetry as YAML or JSON to the exact destination filename. More... | |
Public Member Attributes Index
| std::string | status |
|
"ok" once a sample was counted; otherwise why there is no telemetry, or "not started" before the monitor first started. More... | |
| std::string | sentinel_version |
|
Version of the Sentinel daemon that took the samples. More... | |
| int | sample_interval_ms = 0 |
|
Time between Sentinel samples. More... | |
| int | samples = 0 |
|
Sentinel samples counted in the window. More... | |
| double | duration_ms = 0.0 |
|
Window length so far, or up to stop(). More... | |
| TelemetryStats | power_som_watts |
|
Estimated total SoM power. More... | |
| TelemetryStats | power_mla_watts |
|
MLA rail power; not reported on boards without that rail. More... | |
| std::vector< TelemetryStats > | power_rails_watts |
|
Every power rail the board reports. More... | |
| std::vector< TelemetryStats > | die_temperatures_c |
|
Die sensors at the MLA, APU, CVU, and TOP. More... | |
| TelemetryStats | die_temperature_max_c |
|
Hottest die sensor per sample, then summarized. More... | |
| std::vector< TelemetryStats > | board_temperatures_c |
|
SoM top-side and bottom-side sensors. More... | |
| TelemetryStats | cpu_usage_pct |
|
CPU utilization. More... | |
| std::vector< TelemetryStats > | cpu_cores_usage_pct |
|
Utilization of each CPU core, in core order, summarized like cpu_usage_pct. More... | |
| TelemetryStats | mla_memory_mib |
|
DMA buffers the MLA holds, in MiB: buffers from the MLA memory pool, plus shared buffers only the MLA uses. More... | |
| TelemetryStats | ev74_memory_mib |
|
DMA buffers EV74 holds, in MiB, excluding buffers from the MLA memory pool and frames a video decoder or camera ISP produced. More... | |
| TelemetryStats | linux_memory_used_mib |
|
Memory the whole board uses (Linux MemTotal - MemAvailable), in MiB. More... | |
Description
Board telemetry Sentinel recorded during a window.
Every value is board-wide and includes whatever else is running, including Sentinel and the monitor themselves. Each power value is one 250 ms PMBus reading per Sentinel sample, so the mean and maximum come from one reading in eight and can miss short spikes.
Definition at line 51 of file TelemetryMonitor.h.
Public Member Functions
save()
|
Write the telemetry as YAML or JSON to the exact destination filename.
A .json extension selects JSON; .yaml and all other endings select YAML. Creates missing parent directories and atomically replaces an existing file. Returns file_path unchanged. Throws on invalid values or filesystem/write failures.
Definition at line 91 of file TelemetryMonitor.h.
Public Member Attributes
board_temperatures_c
|
SoM top-side and bottom-side sensors.
Definition at line 64 of file TelemetryMonitor.h.
cpu_cores_usage_pct
|
Utilization of each CPU core, in core order, summarized like cpu_usage_pct.
A single busy core shows here even when the all-core average stays low.
Definition at line 70 of file TelemetryMonitor.h.
cpu_usage_pct
|
CPU utilization.
Each sample averages the preceding interval, so maximum is the busiest interval rather than an instantaneous peak.
Definition at line 67 of file TelemetryMonitor.h.
die_temperature_max_c
|
Hottest die sensor per sample, then summarized.
Definition at line 63 of file TelemetryMonitor.h.
die_temperatures_c
|
Die sensors at the MLA, APU, CVU, and TOP.
Definition at line 62 of file TelemetryMonitor.h.
duration_ms
|
Window length so far, or up to stop().
Definition at line 58 of file TelemetryMonitor.h.
ev74_memory_mib
|
DMA buffers EV74 holds, in MiB, excluding buffers from the MLA memory pool and frames a video decoder or camera ISP produced.
With nothing else running this is the model's EV74 memory, such as the input frames EV74 preprocesses and hands to the MLA.
Definition at line 78 of file TelemetryMonitor.h.
linux_memory_used_mib
|
Memory the whole board uses (Linux MemTotal - MemAvailable), in MiB.
It covers every process and the buffers allocated from Linux contiguous memory (CMA), such as EV74's, so do not add it to the memory above.
Definition at line 82 of file TelemetryMonitor.h.
mla_memory_mib
|
DMA buffers the MLA holds, in MiB: buffers from the MLA memory pool, plus shared buffers only the MLA uses.
A shared buffer EV74 also uses counts in ev74_memory_mib, so the two add up. With nothing else running this is the model's MLA memory.
Definition at line 74 of file TelemetryMonitor.h.
power_mla_watts
|
MLA rail power; not reported on boards without that rail.
Definition at line 60 of file TelemetryMonitor.h.
power_rails_watts
|
Every power rail the board reports.
Definition at line 61 of file TelemetryMonitor.h.
power_som_watts
|
Estimated total SoM power.
Definition at line 59 of file TelemetryMonitor.h.
sample_interval_ms
|
Time between Sentinel samples.
Definition at line 56 of file TelemetryMonitor.h.
samples
|
Sentinel samples counted in the window.
Definition at line 57 of file TelemetryMonitor.h.
sentinel_version
|
Version of the Sentinel daemon that took the samples.
Definition at line 55 of file TelemetryMonitor.h.
status
|
"ok" once a sample was counted; otherwise why there is no telemetry, or "not started" before the monitor first started.
Definition at line 54 of file TelemetryMonitor.h.
The documentation for this struct was generated from the following file:
Generated via doxygen2docusaurus 2.0.0 by Doxygen 1.15.0.