Quick answer: Vulkan pipeline statistic counters showing impossible values (e.g., -1 frame triangle count) after long sessions? uint64 wrapped to negative when interpreted as int64 - cast carefully.

Telemetry shows 'triangle count: -2 billion'. Display widget treats counter as signed.

Cast to unsigned

Always read counters as uint64. Display widget reads same type. Negative is impossible.

Or reset periodically

Reset counter pool every minute. Prevents overflow risk; you compute via deltas.

Audit telemetry pipeline

Each layer (read, transmit, display) must agree on type. Casts between signed/unsigned are the bug source.

“Unsigned types underflow silently. Casts to signed surface as negative.”

Establish 'counters are uint64' as a project rule. Display widgets, telemetry, alerts all match.

Related reading