pub struct MudaDetector {
pub thresholds: MudaThresholds,
}Expand description
Analyze a kernel profile for all seven Muda categories.
Fields§
§thresholds: MudaThresholdsThresholds for each waste category.
Implementations§
Source§impl MudaDetector
impl MudaDetector
pub fn new() -> Self
pub fn with_thresholds(thresholds: MudaThresholds) -> Self
Sourcepub fn detect_transport(
&self,
register_spills: u64,
unnecessary_global_loads: u64,
redundant_shared_stores: u64,
) -> Option<MudaDetection>
pub fn detect_transport( &self, register_spills: u64, unnecessary_global_loads: u64, redundant_shared_stores: u64, ) -> Option<MudaDetection>
Detect Transport muda from register spill and memory traffic data.
Sourcepub fn detect_waiting(
&self,
barrier_stall_cycles: u64,
memory_stall_cycles: u64,
pipeline_bubbles: u64,
warp_scheduler_idle_pct: f64,
) -> Option<MudaDetection>
pub fn detect_waiting( &self, barrier_stall_cycles: u64, memory_stall_cycles: u64, pipeline_bubbles: u64, warp_scheduler_idle_pct: f64, ) -> Option<MudaDetection>
Detect Waiting muda from stall cycle data.
Sourcepub fn detect_motion(
&self,
divergent_branches: u64,
branch_efficiency_pct: f64,
loop_overhead_cycles: u64,
) -> Option<MudaDetection>
pub fn detect_motion( &self, divergent_branches: u64, branch_efficiency_pct: f64, loop_overhead_cycles: u64, ) -> Option<MudaDetection>
Detect Motion muda from branch divergence data.
Sourcepub fn detect_inventory(
&self,
unused_shared_memory_bytes: u64,
unused_registers_per_thread: u32,
occupancy_loss_pct: f64,
) -> Option<MudaDetection>
pub fn detect_inventory( &self, unused_shared_memory_bytes: u64, unused_registers_per_thread: u32, occupancy_loss_pct: f64, ) -> Option<MudaDetection>
Detect Inventory muda from resource allocation data.
Sourcepub fn detect_defects(
&self,
nan_count: u64,
inf_count: u64,
precision_loss_bits: f64,
) -> Option<MudaDetection>
pub fn detect_defects( &self, nan_count: u64, inf_count: u64, precision_loss_bits: f64, ) -> Option<MudaDetection>
Detect Defects muda from numerical error data.
Sourcepub fn detect_overproduction(
&self,
padding_waste_pct: f64,
inactive_thread_pct: f64,
unused_output_elements: u64,
) -> Option<MudaDetection>
pub fn detect_overproduction( &self, padding_waste_pct: f64, inactive_thread_pct: f64, unused_output_elements: u64, ) -> Option<MudaDetection>
Detect Overproduction muda from padding/inactive thread data.
Trait Implementations§
Source§impl Default for MudaDetector
impl Default for MudaDetector
Source§fn default() -> MudaDetector
fn default() -> MudaDetector
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for MudaDetector
impl RefUnwindSafe for MudaDetector
impl Send for MudaDetector
impl Sync for MudaDetector
impl Unpin for MudaDetector
impl UnsafeUnpin for MudaDetector
impl UnwindSafe for MudaDetector
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> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more