pub struct SizeAnalyzer;Expand description
Size analysis for quantized models
Implementations§
Source§impl SizeAnalyzer
impl SizeAnalyzer
Sourcepub fn calculate_model_size(num_parameters: usize, scheme: QScheme) -> f32
pub fn calculate_model_size(num_parameters: usize, scheme: QScheme) -> f32
Calculate theoretical model size for different quantization schemes
Sourcepub fn calculate_size_reduction_ratio(
num_parameters: usize,
scheme: QScheme,
) -> f32
pub fn calculate_size_reduction_ratio( num_parameters: usize, scheme: QScheme, ) -> f32
Calculate size reduction ratio compared to FP32
Sourcepub fn calculate_total_memory_footprint(
num_parameters: usize,
num_activations: usize,
param_scheme: QScheme,
activation_scheme: QScheme,
) -> f32
pub fn calculate_total_memory_footprint( num_parameters: usize, num_activations: usize, param_scheme: QScheme, activation_scheme: QScheme, ) -> f32
Calculate memory footprint including activations
Sourcepub fn estimate_compressed_size(base_size_mb: f32, scheme: QScheme) -> f32
pub fn estimate_compressed_size(base_size_mb: f32, scheme: QScheme) -> f32
Estimate disk storage requirements with compression
Sourcepub fn size_reduction_factor(
original_scheme: QScheme,
quantized_scheme: QScheme,
num_parameters: usize,
) -> f32
pub fn size_reduction_factor( original_scheme: QScheme, quantized_scheme: QScheme, num_parameters: usize, ) -> f32
Calculate size reduction factor (legacy compatibility)
Sourcepub fn analyze_size_impact(num_parameters: usize) -> HashMap<QScheme, f32>
pub fn analyze_size_impact(num_parameters: usize) -> HashMap<QScheme, f32>
Analyze size impact for different quantization schemes
Sourcepub fn model_size_mb(num_parameters: usize, scheme: QScheme) -> f32
pub fn model_size_mb(num_parameters: usize, scheme: QScheme) -> f32
Calculate model size in megabytes
Sourcepub fn generate_size_report(
num_parameters: usize,
schemes: &[QScheme],
) -> HashMap<QScheme, SizeReport>
pub fn generate_size_report( num_parameters: usize, schemes: &[QScheme], ) -> HashMap<QScheme, SizeReport>
Generate comprehensive size analysis report
Auto Trait Implementations§
impl Freeze for SizeAnalyzer
impl RefUnwindSafe for SizeAnalyzer
impl Send for SizeAnalyzer
impl Sync for SizeAnalyzer
impl Unpin for SizeAnalyzer
impl UnsafeUnpin for SizeAnalyzer
impl UnwindSafe for SizeAnalyzer
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