pub struct MemoryState { /* private fields */ }Expand description
Live resource discovery and process-wide laddu reservation state.
Implementations§
Source§impl MemoryState
impl MemoryState
Sourcepub fn discover() -> MemoryState
pub fn discover() -> MemoryState
Discovers host memory and creates an independent reservation state.
Sourcepub fn current() -> MemoryState
pub fn current() -> MemoryState
Returns the process-wide default state.
Sourcepub fn host(&self) -> MemoryResource
pub fn host(&self) -> MemoryResource
Returns the current host snapshot.
Sourcepub fn register_discovered_device(
&self,
id: impl Into<String>,
name: impl Into<String>,
identity: DeviceIdentity,
fallback_bytes: u64,
)
pub fn register_discovered_device( &self, id: impl Into<String>, name: impl Into<String>, identity: DeviceIdentity, fallback_bytes: u64, )
Registers capacity telemetry for a runtime-selected accelerator.
The runtime owns the stable identifier and adapter identity. Platform
telemetry is used when available; otherwise fallback_bytes becomes an
adaptive capacity estimate.
Sourcepub fn override_device_capacity(
&self,
id: impl Into<String>,
name: impl Into<String>,
total_bytes: u64,
available_bytes: Option<u64>,
)
pub fn override_device_capacity( &self, id: impl Into<String>, name: impl Into<String>, total_bytes: u64, available_bytes: Option<u64>, )
Overrides capacity telemetry for a device until another user override.
Sourcepub fn resource(&self, id: &str) -> Option<MemoryResource>
pub fn resource(&self, id: &str) -> Option<MemoryResource>
Returns one resource by stable identifier.
Sourcepub fn devices(&self) -> Vec<MemoryResource>
pub fn devices(&self) -> Vec<MemoryResource>
Returns all registered accelerator resources.
Sourcepub fn pool(
&self,
resource_id: &str,
budget: MemoryBudget,
) -> Result<MemoryPool, MemoryError>
pub fn pool( &self, resource_id: &str, budget: MemoryBudget, ) -> Result<MemoryPool, MemoryError>
Resolves a budget and creates a local pool for a resource.
§Errors
Returns an error when the resource is unknown or the budget cannot be resolved.
Sourcepub fn report(&self) -> MemoryReport
pub fn report(&self) -> MemoryReport
Returns a structured report for all resources.
Trait Implementations§
Source§impl Clone for MemoryState
impl Clone for MemoryState
Source§fn clone(&self) -> MemoryState
fn clone(&self) -> MemoryState
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreAuto Trait Implementations§
impl Freeze for MemoryState
impl RefUnwindSafe for MemoryState
impl Send for MemoryState
impl Sync for MemoryState
impl Unpin for MemoryState
impl UnsafeUnpin for MemoryState
impl UnwindSafe for MemoryState
Blanket Implementations§
impl<T> Allocation for T
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pointable for T
impl<T> Pointable for T
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.