Skip to main content

Telemetry Struct

Board telemetry Sentinel recorded during a window. More...

Declaration​

struct simaai::neat::Telemetry { ... }

Included Headers​

#include <TelemetryMonitor.h>

Public Member Functions Index​

std::filesystem::pathsave (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::stringstatus

"ok" once a sample was counted; otherwise why there is no telemetry, or "not started" before the monitor first started. More...

std::stringsentinel_version

Version of the Sentinel daemon that took the samples. More...

intsample_interval_ms = 0

Time between Sentinel samples. More...

intsamples = 0

Sentinel samples counted in the window. More...

doubleduration_ms = 0.0

Window length so far, or up to stop(). More...

TelemetryStatspower_som_watts

Estimated total SoM power. More...

TelemetryStatspower_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...

TelemetryStatsdie_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...

TelemetryStatscpu_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...

TelemetryStatsmla_memory_mib

DMA buffers the MLA holds, in MiB: buffers from the MLA memory pool, plus shared buffers only the MLA uses. More...

TelemetryStatsev74_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...

TelemetryStatslinux_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()​

std::filesystem::path simaai::neat::Telemetry::save (const std::filesystem::path & file_path)

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​

std::vector<TelemetryStats> simaai::neat::Telemetry::board_temperatures_c

SoM top-side and bottom-side sensors.

Definition at line 64 of file TelemetryMonitor.h.

cpu_cores_usage_pct​

std::vector<TelemetryStats> simaai::neat::Telemetry::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​

TelemetryStats simaai::neat::Telemetry::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​

TelemetryStats simaai::neat::Telemetry::die_temperature_max_c

Hottest die sensor per sample, then summarized.

Definition at line 63 of file TelemetryMonitor.h.

die_temperatures_c​

std::vector<TelemetryStats> simaai::neat::Telemetry::die_temperatures_c

Die sensors at the MLA, APU, CVU, and TOP.

Definition at line 62 of file TelemetryMonitor.h.

duration_ms​

double simaai::neat::Telemetry::duration_ms = 0.0

Window length so far, or up to stop().

Definition at line 58 of file TelemetryMonitor.h.

ev74_memory_mib​

TelemetryStats simaai::neat::Telemetry::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​

TelemetryStats simaai::neat::Telemetry::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​

TelemetryStats simaai::neat::Telemetry::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​

TelemetryStats simaai::neat::Telemetry::power_mla_watts

MLA rail power; not reported on boards without that rail.

Definition at line 60 of file TelemetryMonitor.h.

power_rails_watts​

std::vector<TelemetryStats> simaai::neat::Telemetry::power_rails_watts

Every power rail the board reports.

Definition at line 61 of file TelemetryMonitor.h.

power_som_watts​

TelemetryStats simaai::neat::Telemetry::power_som_watts

Estimated total SoM power.

Definition at line 59 of file TelemetryMonitor.h.

sample_interval_ms​

int simaai::neat::Telemetry::sample_interval_ms = 0

Time between Sentinel samples.

Definition at line 56 of file TelemetryMonitor.h.

samples​

int simaai::neat::Telemetry::samples = 0

Sentinel samples counted in the window.

Definition at line 57 of file TelemetryMonitor.h.

sentinel_version​

std::string simaai::neat::Telemetry::sentinel_version

Version of the Sentinel daemon that took the samples.

Definition at line 55 of file TelemetryMonitor.h.

status​

std::string simaai::neat::Telemetry::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.