pub struct InputCharacteristics {Show 14 fields
pub size: usize,
pub size_type: SizeCharacteristic,
pub is_power_of_2: bool,
pub is_power_of_4: bool,
pub is_prime: bool,
pub prime_factors: HashMap<usize, usize>,
pub largest_prime_factor: usize,
pub num_distinct_factors: usize,
pub is_smooth: bool,
pub smooth_bound: usize,
pub estimated_memory_bytes: usize,
pub fits_l1_cache: bool,
pub fits_l2_cache: bool,
pub fits_l3_cache: bool,
}Expand description
Detected input characteristics for algorithm selection
Fields§
§size: usizeInput size
size_type: SizeCharacteristicSize characteristic type
is_power_of_2: boolWhether size is a power of 2
is_power_of_4: boolWhether size is a power of 4
is_prime: boolWhether size is prime
prime_factors: HashMap<usize, usize>Prime factorization (factor -> power)
largest_prime_factor: usizeLargest prime factor
num_distinct_factors: usizeNumber of distinct prime factors
is_smooth: boolWhether size is “smooth” (only small prime factors)
smooth_bound: usizeMaximum prime factor for smooth classification
estimated_memory_bytes: usizeEstimated memory requirement in bytes
fits_l1_cache: boolFits in L1 cache
fits_l2_cache: boolFits in L2 cache
fits_l3_cache: boolFits in L3 cache
Implementations§
Trait Implementations§
Source§impl Clone for InputCharacteristics
impl Clone for InputCharacteristics
Source§fn clone(&self) -> InputCharacteristics
fn clone(&self) -> InputCharacteristics
Returns a duplicate of the value. Read more
1.0.0 · 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 InputCharacteristics
impl Debug for InputCharacteristics
Source§impl<'de> Deserialize<'de> for InputCharacteristics
impl<'de> Deserialize<'de> for InputCharacteristics
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for InputCharacteristics
impl RefUnwindSafe for InputCharacteristics
impl Send for InputCharacteristics
impl Sync for InputCharacteristics
impl Unpin for InputCharacteristics
impl UnsafeUnpin for InputCharacteristics
impl UnwindSafe for InputCharacteristics
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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