pub struct OptimizerBenchmarks { /* private fields */ }Expand description
Optimizer benchmark suite
Implementations§
Source§impl OptimizerBenchmarks
impl OptimizerBenchmarks
Sourcepub fn with_config(config: BenchmarkConfig) -> Self
pub fn with_config(config: BenchmarkConfig) -> Self
Create a new benchmark suite with custom configuration
Sourcepub fn benchmark_step_performance<O: Optimizer>(
&self,
optimizer: O,
problem_size: usize,
) -> OptimizerResult<BenchmarkResult>
pub fn benchmark_step_performance<O: Optimizer>( &self, optimizer: O, problem_size: usize, ) -> OptimizerResult<BenchmarkResult>
Benchmark optimizer step performance
Sourcepub fn benchmark_quadratic_convergence<O: Optimizer>(
&self,
optimizer: O,
dimension: usize,
) -> OptimizerResult<BenchmarkResult>
pub fn benchmark_quadratic_convergence<O: Optimizer>( &self, optimizer: O, dimension: usize, ) -> OptimizerResult<BenchmarkResult>
Benchmark convergence on quadratic function
Sourcepub fn benchmark_memory_scaling<O: Optimizer + Clone>(
&self,
optimizer_factory: impl Fn(Vec<Tensor>) -> OptimizerResult<O>,
) -> OptimizerResult<Vec<BenchmarkResult>>
pub fn benchmark_memory_scaling<O: Optimizer + Clone>( &self, optimizer_factory: impl Fn(Vec<Tensor>) -> OptimizerResult<O>, ) -> OptimizerResult<Vec<BenchmarkResult>>
Benchmark memory usage scaling
Sourcepub fn benchmark_sparse_gradients<O: Optimizer>(
&self,
optimizer: O,
total_params: usize,
sparsity: f32,
) -> OptimizerResult<BenchmarkResult>
pub fn benchmark_sparse_gradients<O: Optimizer>( &self, optimizer: O, total_params: usize, sparsity: f32, ) -> OptimizerResult<BenchmarkResult>
Benchmark sparse gradient handling
Sourcepub fn run_comprehensive_benchmarks<O: Optimizer + Clone>(
&self,
optimizer: O,
) -> OptimizerResult<Vec<BenchmarkResult>>
pub fn run_comprehensive_benchmarks<O: Optimizer + Clone>( &self, optimizer: O, ) -> OptimizerResult<Vec<BenchmarkResult>>
Run comprehensive benchmark suite
Sourcepub fn print_results(&self, results: &[BenchmarkResult])
pub fn print_results(&self, results: &[BenchmarkResult])
Print benchmark results in a formatted table
Sourcepub fn benchmark_noisy_quadratic_convergence<O: Optimizer>(
&self,
optimizer: O,
dimension: usize,
noise_level: f32,
) -> OptimizerResult<BenchmarkResult>
pub fn benchmark_noisy_quadratic_convergence<O: Optimizer>( &self, optimizer: O, dimension: usize, noise_level: f32, ) -> OptimizerResult<BenchmarkResult>
Benchmark noisy quadratic convergence (more realistic optimization scenario)
Sourcepub fn benchmark_rosenbrock_optimization<O: Optimizer>(
&self,
optimizer: O,
dimension: usize,
) -> OptimizerResult<BenchmarkResult>
pub fn benchmark_rosenbrock_optimization<O: Optimizer>( &self, optimizer: O, dimension: usize, ) -> OptimizerResult<BenchmarkResult>
Benchmark Rosenbrock function optimization (classic non-convex benchmark)
Trait Implementations§
Auto Trait Implementations§
impl Freeze for OptimizerBenchmarks
impl RefUnwindSafe for OptimizerBenchmarks
impl Send for OptimizerBenchmarks
impl Sync for OptimizerBenchmarks
impl Unpin for OptimizerBenchmarks
impl UnsafeUnpin for OptimizerBenchmarks
impl UnwindSafe for OptimizerBenchmarks
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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