pub struct ResourceAllocator { /* private fields */ }
Expand description
Resource allocation and management
Implementations§
Source§impl ResourceAllocator
impl ResourceAllocator
pub fn new() -> Self
pub fn update_available_resources( &mut self, nodes: &[NodeInfo], ) -> CoreResult<()>
pub fn allocate_resources( &self, requirements: &ResourceRequirements, ) -> CoreResult<ResourceAllocation>
pub fn optimize_resource_allocation(&mut self) -> CoreResult<()>
pub fn get_available_capacity(&self) -> ComputeCapacity
pub fn available_capacity(&self) -> &ComputeCapacity
pub fn attempt_consolidation( &mut self, _taskid: &TaskId, _allocation: &ResourceAllocation, ) -> CoreResult<bool>
pub fn attempt_best_fit_pairing( &mut self, _taskid: &TaskId, _allocation: &ResourceAllocation, ) -> CoreResult<bool>
pub fn attempt_small_allocation_packing( &mut self, _taskid: &TaskId, _allocation: &ResourceAllocation, ) -> CoreResult<bool>
pub fn find_best_target_node( &mut self, _resources: &ComputeCapacity, _underloaded_nodes: &[(String, f64)], ) -> CoreResult<Option<(String, f64)>>
pub fn attempt_allocation_migration( &mut self, _taskid: &TaskId, _to_node: &str, ) -> CoreResult<bool>
pub fn attempt_allocation_spreading( &mut self, _taskid: &TaskId, _allocation: &ResourceAllocation, ) -> CoreResult<bool>
Trait Implementations§
Source§impl Debug for ResourceAllocator
impl Debug for ResourceAllocator
Auto Trait Implementations§
impl Freeze for ResourceAllocator
impl RefUnwindSafe for ResourceAllocator
impl Send for ResourceAllocator
impl Sync for ResourceAllocator
impl Unpin for ResourceAllocator
impl UnwindSafe for ResourceAllocator
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
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 more