pulsatrix
Loading...
Searching...
No Matches
pulsatrix::GpuSample Struct Reference

One GPU's readings within a SystemSample. More...

#include <system_monitor.hpp>

Public Attributes

int index = 0
 Position in SystemSample::gpus (AMD sysfs devices first, then NVML devices).
 
std::string name
 Driver-reported name (NVML), or "AMD GPU <pci id> (<card>)" for sysfs devices.
 
std::string vendor
 "AMD" or "NVIDIA".
 
std::optional< double > utilization_percent
 0-100, busy fraction of the GPU since the driver's last window.
 
std::optional< double > memory_used_bytes
 Dedicated memory (VRAM / APU carve-out) in use.
 
std::optional< double > memory_total_bytes
 
std::optional< double > memory_gtt_used_bytes
 AMD only: GTT (system memory mapped for the GPU). On APUs this is where most allocations live.
 
std::optional< double > temperature_c
 Die/edge temperature, degrees Celsius.
 
std::optional< double > power_watts
 Board/package power draw, watts.
 

Detailed Description

One GPU's readings within a SystemSample.

Note
Every reading is std::optional: a value the platform/driver cannot provide is std::nullopt, never 0. SystemMonitor::capabilities() says why a metric is missing.

Member Data Documentation

◆ index

int pulsatrix::GpuSample::index = 0

Position in SystemSample::gpus (AMD sysfs devices first, then NVML devices).

◆ memory_gtt_used_bytes

std::optional<double> pulsatrix::GpuSample::memory_gtt_used_bytes

AMD only: GTT (system memory mapped for the GPU). On APUs this is where most allocations live.

◆ memory_total_bytes

std::optional<double> pulsatrix::GpuSample::memory_total_bytes

Dedicated memory capacity.

◆ memory_used_bytes

std::optional<double> pulsatrix::GpuSample::memory_used_bytes

Dedicated memory (VRAM / APU carve-out) in use.

◆ name

std::string pulsatrix::GpuSample::name

Driver-reported name (NVML), or "AMD GPU <pci id> (<card>)" for sysfs devices.

◆ power_watts

std::optional<double> pulsatrix::GpuSample::power_watts

Board/package power draw, watts.

◆ temperature_c

std::optional<double> pulsatrix::GpuSample::temperature_c

Die/edge temperature, degrees Celsius.

◆ utilization_percent

std::optional<double> pulsatrix::GpuSample::utilization_percent

0-100, busy fraction of the GPU since the driver's last window.

◆ vendor

std::string pulsatrix::GpuSample::vendor

"AMD" or "NVIDIA".


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