pub enum NativeReadPath {
RegisteredMappedRead,
GpuDirectNvmePassthrough,
}Expand description
Native-read strategy used by NvmeGpuIngestDriver.
Variants§
RegisteredMappedRead
IORING_OP_READ_FIXED into a registered GPU-visible mapping.
This removes the userspace bounce buffer but still uses normal file reads submitted by the CPU. It is the compatibility path for filesystems and GPU memory APIs that do not expose BAR1 peer DMA.
GpuDirectNvmePassthrough
IORING_OP_URING_CMD NVMe read into BAR1 peer memory.
This is the canonical native ingest path: CPU submits one NVMe command, the device DMAs bytes directly into GPU-owned memory, and the megakernel consumes the published slot.
Trait Implementations§
Source§impl Clone for NativeReadPath
impl Clone for NativeReadPath
Source§fn clone(&self) -> NativeReadPath
fn clone(&self) -> NativeReadPath
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 NativeReadPath
Source§impl Debug for NativeReadPath
impl Debug for NativeReadPath
impl Eq for NativeReadPath
Source§impl PartialEq for NativeReadPath
impl PartialEq for NativeReadPath
Source§fn eq(&self, other: &NativeReadPath) -> bool
fn eq(&self, other: &NativeReadPath) -> bool
Tests for
self and other values to be equal, and is used by ==.impl StructuralPartialEq for NativeReadPath
Auto Trait Implementations§
impl Freeze for NativeReadPath
impl RefUnwindSafe for NativeReadPath
impl Send for NativeReadPath
impl Sync for NativeReadPath
impl Unpin for NativeReadPath
impl UnsafeUnpin for NativeReadPath
impl UnwindSafe for NativeReadPath
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.