Table of Contents

Constructor EdgeChatDeviceProfile

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

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.

public EdgeChatDeviceProfile(long? TotalMemoryBytes, EdgeTotalMemorySource TotalMemorySource, EdgeMemoryBudgetKind AvailableMemoryKind, bool? IsLowRamDevice, string RuntimeIdentifier, string? Abi)

Parameters

TotalMemoryBytes long?

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

TotalMemorySource EdgeTotalMemorySource

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.

AvailableMemoryKind EdgeMemoryBudgetKind

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

IsLowRamDevice bool?

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 string

The running RID.

Abi string

The running Android ABI, or null off Android.