pub struct MemoryManager { /* private fields */ }Expand description
Memory management utilities
Implementations§
Source§impl MemoryManager
impl MemoryManager
pub fn new() -> Self
Sourcepub fn can_allocate(
&self,
backend: Backend,
deviceid: usize,
size: usize,
) -> bool
pub fn can_allocate( &self, backend: Backend, deviceid: usize, size: usize, ) -> bool
Check if allocation is possible
Sourcepub fn allocate(
&mut self,
backend: Backend,
device_id: usize,
size: usize,
) -> NdimageResult<()>
pub fn allocate( &mut self, backend: Backend, device_id: usize, size: usize, ) -> NdimageResult<()>
Track memory allocation
Sourcepub fn deallocate(&mut self, backend: Backend, deviceid: usize, size: usize)
pub fn deallocate(&mut self, backend: Backend, deviceid: usize, size: usize)
Track memory deallocation
Sourcepub fn set_memory_limit(
&mut self,
backend: Backend,
deviceid: usize,
limit: usize,
)
pub fn set_memory_limit( &mut self, backend: Backend, deviceid: usize, limit: usize, )
Set memory limit for a device
Sourcepub fn get_memory_usage(&self, backend: Backend, deviceid: usize) -> usize
pub fn get_memory_usage(&self, backend: Backend, deviceid: usize) -> usize
Get current memory usage
Auto Trait Implementations§
impl Freeze for MemoryManager
impl RefUnwindSafe for MemoryManager
impl Send for MemoryManager
impl Sync for MemoryManager
impl Unpin for MemoryManager
impl UnsafeUnpin for MemoryManager
impl UnwindSafe for MemoryManager
Blanket Implementations§
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
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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>
Converts
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>
Converts
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>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
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
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.