Skip to main content

MegakernelLaunchRequest

Struct MegakernelLaunchRequest 

Source
pub struct MegakernelLaunchRequest {
Show 17 fields pub queue_len: u32, pub requested_worker_groups: u32, pub max_workgroup_size_x: u32, pub max_compute_workgroups_per_dimension: u32, pub max_compute_invocations_per_workgroup: u32, pub requested_hit_capacity: u32, pub expected_hits_per_item: u32, pub hot_opcode_count: u32, pub hot_window_count: u32, pub requeue_count: u64, pub max_priority_age: u32, pub graph_node_count: u32, pub graph_edge_count: u32, pub frontier_density_bps: u16, pub memory_pressure_bps: u16, pub resident_device_bytes: u64, pub device_memory_budget_bytes: u64,
}
Expand description

Inputs for one launch-policy recommendation.

Fields§

§queue_len: u32

Logical ring slots or work items queued for this launch.

§requested_worker_groups: u32

Caller-requested worker workgroup ceiling. Zero means derive from occupancy.

§max_workgroup_size_x: u32

Adapter maximum workgroup size in the x dimension.

§max_compute_workgroups_per_dimension: u32

Adapter maximum compute workgroups per dimension.

§max_compute_invocations_per_workgroup: u32

Adapter maximum invocations per compute workgroup.

§requested_hit_capacity: u32

Caller-requested sparse-hit capacity. Zero means derive from queue shape.

§expected_hits_per_item: u32

Expected sparse hits per queued item when deriving hit capacity.

§hot_opcode_count: u32

Count of opcodes observed hot enough for promotion.

§hot_window_count: u32

Count of ticketed route windows observed hot enough for promotion.

§requeue_count: u64

Slots requeued by priority scheduling since the last recommendation.

§max_priority_age: u32

Maximum priority age observed since the last recommendation.

§graph_node_count: u32

Nodes in the resident dependency graph. Zero means the caller has no graph-shape telemetry for this launch.

§graph_edge_count: u32

Edges in the resident dependency graph. Zero means the caller has no graph-shape telemetry for this launch.

§frontier_density_bps: u16

Active frontier density in basis points relative to graph nodes.

§memory_pressure_bps: u16

Device-memory pressure in basis points relative to the active budget.

§resident_device_bytes: u64

Device-resident bytes already required by this dispatch family.

§device_memory_budget_bytes: u64

Hard device-memory budget for this launch. Zero means unbounded.

Implementations§

Source§

impl MegakernelLaunchRequest

Source

pub const fn direct( queue_len: u32, requested_worker_groups: u32, max_workgroup_size_x: u32, ) -> Self

Construct a direct-dispatch request with conservative defaults.

Trait Implementations§

Source§

impl Clone for MegakernelLaunchRequest

Source§

fn clone(&self) -> MegakernelLaunchRequest

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for MegakernelLaunchRequest

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Hash for MegakernelLaunchRequest

Source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
Source§

impl PartialEq for MegakernelLaunchRequest

Source§

fn eq(&self, other: &MegakernelLaunchRequest) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Copy for MegakernelLaunchRequest

Source§

impl Eq for MegakernelLaunchRequest

Source§

impl StructuralPartialEq for MegakernelLaunchRequest

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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
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> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
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> 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