LavaUI docs GitHub

message GpuReport

Control plane

message GpuReport

Everything the compositor knows about its own GPU memory.

idl/lava.npidl:955

Fields

allocations: vector<GpuAllocation>

Not documented.

idl/lava.npidl:978

atlases: vector<GpuAtlas>

Not documented.

idl/lava.npidl:979

cacheEvictions: u64

Not documented.

idl/lava.npidl:1005

cacheHits: u64

Not documented.

idl/lava.npidl:1004

deviceName: string

Not documented.

idl/lava.npidl:956

dormantAllowanceBytes: u64

Not documented.

idl/lava.npidl:998

dormantBudgetBytes: u64

The configured speculative ceiling, and what it comes to once the in-use set has taken its share of imageBudgetBytes. The second is the number eviction actually runs against, and it reaches zero first.

idl/lava.npidl:997

dormantBytes: u64

Not documented.

idl/lava.npidl:993

foreignBytes: u64

Foreign (mapped-in client) bytes, and bytes waiting for a frame to retire.

idl/lava.npidl:975

heapBudgetBytes: u64

Not documented.

idl/lava.npidl:965

heapSizeBytes: u64

Not documented.

idl/lava.npidl:966

heapUsageBytes: u64

What the driver attributes to this process, what it would allow, and what the card has. The number to compare against nvidia-smi.

idl/lava.npidl:964

imageBudgetBytes: u64

Not documented.

idl/lava.npidl:992

liveBytes: u64

Standalone images something is currently pointing at, and the ceiling they are counted against. The two halves of the cache behave completely differently and a single figure hides which one is the problem: dormant bytes go when the number says so, in-use bytes are a texture id a client is drawing with and there is no way to ask for them back.

idl/lava.npidl:991

maxSamples: u32

Not documented.

idl/lava.npidl:961

ownBytes: u64

What the entries below add up to: this process's own memory, without the client buffers it merely maps.

idl/lava.npidl:973

retiringBytes: u64

Not documented.

idl/lava.npidl:976

samples: u32

Samples every render target is allocated with, and the most the device would allow. Two numbers because the first being the second is a choice, and it multiplies the two largest categories in the report.

idl/lava.npidl:960

speculating: boolean

Whether the cache is holding anything on spec at all. A zero allowance means two unrelated things — the in-use set has taken the whole budget, or the cache has been told to stand down because a client is being scanned out — and a reader cannot tell them apart from the numbers.

idl/lava.npidl:1003

textureBytes: u64

Not documented.

idl/lava.npidl:985

textureCount: u32

Cache totals, which are the whole cache rather than only the entries sent.

idl/lava.npidl:984

textures: vector<GpuTexture>

Largest first, and capped — a cache with thousands of entries would make this message the reason for the next report.

idl/lava.npidl:982

vmaAllocatedBytes: u64

What the allocator has handed out, and the device-memory blocks it holds to serve that. The difference is slack it could give back.

idl/lava.npidl:969

vmaBlockBytes: u64

Not documented.

idl/lava.npidl:970

windows: vector<GpuWindow>

Not documented.

idl/lava.npidl:977