Skip to main content

WgpuMegakernelDispatcher

Struct WgpuMegakernelDispatcher 

Source
pub struct WgpuMegakernelDispatcher<'a> { /* private fields */ }
Expand description

Runtime wrapper for persistent megakernel dispatch.

Implementations§

Source§

impl<'a> WgpuMegakernelDispatcher<'a>

Source

pub fn new(backend: &'a dyn VyreBackend) -> Self

Create a new dispatcher.

Source

pub fn dispatch_megakernel_bytes( &self, work_queue_bytes: &[u8], config: &MegakernelConfig, ) -> Result<MegakernelReport, BackendError>

Decode a raw little-endian MegakernelWorkItem queue and launch the megakernel.

§Errors

Returns a backend error when work_queue_bytes is not exactly aligned to MegakernelWorkItem records or when backend dispatch fails.

Source

pub fn dispatch_megakernel( &self, work_items: &[MegakernelWorkItem], config: &MegakernelConfig, ) -> Result<MegakernelReport, BackendError>

Launch the megakernel.

Source

pub fn dispatch_megakernel_with_io_queue( &self, work_items: &[MegakernelWorkItem], config: &MegakernelConfig, io_queue_bytes: Vec<u8>, ) -> Result<MegakernelReport, BackendError>

Launch the megakernel with a caller-supplied IO queue.

The queue is validated against the megakernel ABI before any backend work starts, so malformed queue views fail before compilation or GPU submission.

Trait Implementations§

Source§

impl MegakernelDispatch for WgpuMegakernelDispatcher<'_>

Source§

fn dispatch_megakernel( &self, work_queue: &[MegakernelWorkItem], config: &MegakernelConfig, ) -> Result<MegakernelReport, BackendError>

Drain the requested megakernel dispatch.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> Downcast<T> for T

Source§

fn downcast(&self) -> &T

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> Upcast<T> for T

Source§

fn upcast(&self) -> Option<&T>

Source§

impl<T> WasmNotSend for T
where T: Send,

Source§

impl<T> WasmNotSendSync for T

Source§

impl<T> WasmNotSync for T
where T: Sync,

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more