pub enum DequeVariant {
ChaseLev,
Khpd,
Loh,
Urd,
Khl,
}Expand description
The deque-family variants the dispatcher routes across.
Variants§
ChaseLev
Chase-Lev work-stealing deque, per-item push.
Khpd
KHPD publication-line deque, 3 items per Release-store.
Loh
LOH LCRQ-on-LIFO Hybrid, amortizes tail.fetch_add over the
whole batch.
Urd
URD per-thief mailbox deque + WAITPKG wait.
Khl
KHL K-axis Hierarchical LCRQ - SubEtha-native hybrid that pulls KHPD’s per-slot packing + LOH’s per-batch counter amortization + Chase-Lev’s owner-private tail simultaneously. Empirically the strongest single-thief batched primitive on Zen+ R7 2700 (4.7 ns/item at K=64 producer-fast).
Implementations§
Trait Implementations§
Source§impl Clone for DequeVariant
impl Clone for DequeVariant
Source§fn clone(&self) -> DequeVariant
fn clone(&self) -> DequeVariant
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for DequeVariant
Source§impl Debug for DequeVariant
impl Debug for DequeVariant
impl Eq for DequeVariant
Source§impl PartialEq for DequeVariant
impl PartialEq for DequeVariant
impl StructuralPartialEq for DequeVariant
Auto Trait Implementations§
impl Freeze for DequeVariant
impl RefUnwindSafe for DequeVariant
impl Send for DequeVariant
impl Sync for DequeVariant
impl Unpin for DequeVariant
impl UnsafeUnpin for DequeVariant
impl UnwindSafe for DequeVariant
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