pub(super) struct ChunkPacer {
floor: usize,
ceiling: usize,
target_seconds: f64,
tokens: usize,
contended: bool,
}Fields§
§floor: usize§ceiling: usize§target_seconds: f64Zero uses the configured ceiling for every chunk.
tokens: usize§contended: boolImplementations§
Source§impl ChunkPacer
impl ChunkPacer
pub(super) fn new(ceiling: usize, target_seconds: f64) -> Self
Sourcepub(super) fn quantum(&mut self, contended: bool) -> usize
pub(super) fn quantum(&mut self, contended: bool) -> usize
A new contention period starts small. Work already on the GPU still finishes its current chunk before another request can run.
Auto Trait Implementations§
impl Freeze for ChunkPacer
impl RefUnwindSafe for ChunkPacer
impl Send for ChunkPacer
impl Sync for ChunkPacer
impl Unpin for ChunkPacer
impl UnsafeUnpin for ChunkPacer
impl UnwindSafe for ChunkPacer
Blanket Implementations§
impl<T> AutoreleaseSafe for Twhere
T: ?Sized,
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
impl<T> ErasedDestructor for Twhere
T: 'static,
§impl<T> Identity for Twhere
T: ?Sized,
impl<T> Identity for Twhere
T: ?Sized,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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