pub enum AuthorityState {
Host,
Device(DeviceLocation),
}Expand description
Coherence authority for one KV slot’s storage. Placeholder for the
multi-device protocol; today every slot starts and stays
AuthorityState::Host for the lifetime of the session unless
future code explicitly transitions it.
The intended protocol (deferred until multi-GPU lands):
- Host: the host has the most recent version. Devices may hold stale copies. The default at session start.
- Device(loc): a device owns the most recent version. The host’s copy may be stale until an explicit flush.
Variants§
Host
Device(DeviceLocation)
Trait Implementations§
Source§impl Clone for AuthorityState
impl Clone for AuthorityState
Auto Trait Implementations§
impl Freeze for AuthorityState
impl RefUnwindSafe for AuthorityState
impl Send for AuthorityState
impl Sync for AuthorityState
impl Unpin for AuthorityState
impl UnsafeUnpin for AuthorityState
impl UnwindSafe for AuthorityState
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> ErasedDestructor for Twhere
T: 'static,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§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