Table of Contents

Struct EdgeChatDeviceProfile

Namespace
Qavren.Edge.Chat
Assembly
Qavren.Edge.Chat.Onnx.dll

Static facts about the device, read once at startup and cached for the life of the process. Everything here is constant, which is what stops this and IEdgeResourceMonitor drifting apart: per-turn readings come from the monitor and nowhere else.

public readonly record struct EdgeChatDeviceProfile : IEquatable<EdgeChatDeviceProfile>
Implements
Inherited Members

Constructors

EdgeChatDeviceProfile(long?, EdgeTotalMemorySource, EdgeMemoryBudgetKind, bool?, string, string?)

Static facts about the device, read once at startup and cached for the life of the process. Everything here is constant, which is what stops this and IEdgeResourceMonitor drifting apart: per-turn readings come from the monitor and nowhere else.

Properties

Abi

The running Android ABI, or null off Android.

AvailableMemoryKind

How to read the monitor's available-memory figure.

IsLowRamDevice

Android's ActivityManager.IsLowRamDevice, documented as "1GB or less of RAM". Reported, and used only as a hard refusal - it is false on every phone that is still far too small for a 1.24 GB model, so it is useless as the gate.

RuntimeIdentifier

The running RID.

TotalMemoryBytes

The platform's best total-memory figure, or null when it will not say. Not comparable across platforms without TotalMemorySource - see that parameter.

TotalMemorySource

Which of three different measurements TotalMemoryBytes actually is. The device floor consults it: it applies to a real physical reading and is skipped for GcMemoryInfo.