Privacy & telemetry

Data contract

What the Goodput agent transmits. There is no workload data — no process names, command lines, env vars, filenames, container images, model or dataset identifiers, or memory contents.

Transport

Batch fields

FieldMeaning
schema_versionWire schema version
cluster_idOperator-supplied cluster name
node_idNode identity (default: hostname)
agent_versionAgent build string
intervals[]Up to four 15s samples packed into one ~60s upload

Per-interval fields

FieldMeaning
tsSample timestamp (UTC)
gpus[]One entry per GPU
ib_ports[]InfiniBand port counters (empty if no IB)
xids[]Xid events observed since the previous interval

Per-GPU fields (NVML)

UUID, name, PCI bus ID, memory used/total, SM clock current/max, throttle reasons (bitmask + supported flag), temperature (°C, if supported), volatile ECC corrected/uncorrected (if supported), PCIe gen/width current/max (if supported), GPU/memory utilisation (if supported).

Fields the driver reports as unsupported are omitted or flagged — never invented as zero.

Per-IB-port fields

Device name, port number, state, link rate (Gbps), counter deltas since the previous sample (wrap-corrected), reason codes (e.g. IB_PORT_DOWN).

Per-Xid fields

Numeric Xid code, PCI bus ID, derived reason code (XID_<n>). Not the raw kernel-log line.

What is never collected