pub struct MegakernelIoLoop { /* private fields */ }Expand description
Host-side pump that services GPU-driven IO requests.
Implementations§
Source§impl MegakernelIoLoop
impl MegakernelIoLoop
Sourcepub fn spawn(
stream: AsyncUringStream<'static>,
io_queue_mapped: &'static mut [u8],
) -> Self
pub fn spawn( stream: AsyncUringStream<'static>, io_queue_mapped: &'static mut [u8], ) -> Self
Start a background thread that polls io_queue_mapped.
READ requests require registered destinations; call
Self::spawn_with_registered_destinations for production IO.
Sourcepub fn spawn_with_registered_destinations(
stream: AsyncUringStream<'static>,
io_queue_mapped: &'static mut [u8],
registered_destinations: Vec<RegisteredIoDestination>,
) -> Self
pub fn spawn_with_registered_destinations( stream: AsyncUringStream<'static>, io_queue_mapped: &'static mut [u8], registered_destinations: Vec<RegisteredIoDestination>, ) -> Self
Start a background IO pump with a registered destination table.
Requests whose dst_handle is present in registered_destinations use
fixed-buffer reads. Unregistered READ destinations stop the pump with a
host-visible error instead of silently taking a host-iovec compatibility
route.
Sourcepub fn stop(&mut self) -> Result<(), PipelineError>
pub fn stop(&mut self) -> Result<(), PipelineError>
Stop the pump thread.
Auto Trait Implementations§
impl !RefUnwindSafe for MegakernelIoLoop
impl !UnwindSafe for MegakernelIoLoop
impl Freeze for MegakernelIoLoop
impl Send for MegakernelIoLoop
impl Sync for MegakernelIoLoop
impl Unpin for MegakernelIoLoop
impl UnsafeUnpin for MegakernelIoLoop
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