pub struct ReductionFusionGroup {
pub id: usize,
pub root: NodeId,
pub sink: NodeId,
pub members: Vec<NodeId>,
pub pattern: ReductionPattern,
pub config: KernelConfig,
pub tag: String,
}Expand description
A reduction-broadcast region that the pass merges into a single kernel.
Members are listed in topological order (the rooting reduction first, the post-dominating sink last).
Fields§
§id: usizeGroup identifier (sequential, 0-based).
root: NodeIdThe rooting reduction node (single entry of the region).
sink: NodeIdThe post-dominating exit node (single exit of the region).
members: Vec<NodeId>All region members in topological order (root first, sink last).
pattern: ReductionPatternClassified pattern shape.
config: KernelConfigCombined launch configuration (uses the root’s config).
tag: StringHuman-readable tag for debugging.
Implementations§
Trait Implementations§
Source§impl Clone for ReductionFusionGroup
impl Clone for ReductionFusionGroup
Source§fn clone(&self) -> ReductionFusionGroup
fn clone(&self) -> ReductionFusionGroup
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 moreSource§impl Debug for ReductionFusionGroup
impl Debug for ReductionFusionGroup
impl Eq for ReductionFusionGroup
Source§impl PartialEq for ReductionFusionGroup
impl PartialEq for ReductionFusionGroup
Source§fn eq(&self, other: &ReductionFusionGroup) -> bool
fn eq(&self, other: &ReductionFusionGroup) -> bool
Tests for
self and other values to be equal, and is used by ==.impl StructuralPartialEq for ReductionFusionGroup
Auto Trait Implementations§
impl Freeze for ReductionFusionGroup
impl RefUnwindSafe for ReductionFusionGroup
impl Send for ReductionFusionGroup
impl Sync for ReductionFusionGroup
impl Unpin for ReductionFusionGroup
impl UnsafeUnpin for ReductionFusionGroup
impl UnwindSafe for ReductionFusionGroup
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