From 0ff0c5790c65bb5a40a708923e0f3d4c2be7f15d Mon Sep 17 00:00:00 2001 From: Magnus Ulimoen Date: Mon, 31 Aug 2020 21:03:39 +0200 Subject: [PATCH] bench implicit matrix --- maxwell/benches/bench.rs | 21 +++++++++++++++++++++ maxwell/src/lib.rs | 3 --- 2 files changed, 21 insertions(+), 3 deletions(-) diff --git a/maxwell/benches/bench.rs b/maxwell/benches/bench.rs index 7893ff3..5673be7 100644 --- a/maxwell/benches/bench.rs +++ b/maxwell/benches/bench.rs @@ -22,6 +22,13 @@ fn advance_system_matrix(universe: &mut System, n: usiz } } +#[cfg(feature = "sparse")] +fn advance_system_matrix_implicit(universe: &mut System, n: usize) { + for _ in 0..n { + universe.advance_implicit(); + } +} + fn performance_benchmark(c: &mut Criterion) { let mut group = c.benchmark_group("MaxwellSystem"); group.sample_size(25); @@ -64,6 +71,20 @@ fn performance_benchmark(c: &mut Criterion) { advance_system_matrix(&mut universe, black_box(20)) }) }); + let mut universe = System::new(x.clone(), y.clone(), sbp::operators::Upwind9); + group.bench_function("advance_upwind9_as_matrix", |b| { + b.iter(|| { + universe.set_gaussian(0.5, 0.5); + advance_system_matrix(&mut universe, black_box(20)) + }) + }); + let mut universe = System::new(x.clone(), y.clone(), Upwind4); + group.bench_function("advance_upwind9_as_matrix_implicit", |b| { + b.iter(|| { + universe.set_gaussian(0.5, 0.5); + advance_system_matrix_implicit(&mut universe, black_box(20)) + }) + }); } group.finish(); diff --git a/maxwell/src/lib.rs b/maxwell/src/lib.rs index c0988ee..1c72ead 100644 --- a/maxwell/src/lib.rs +++ b/maxwell/src/lib.rs @@ -184,7 +184,6 @@ impl System { let b = self.sys.0.clone(); - let tnow = std::time::Instant::now(); sbp::utils::jacobi_method( lhs, b.as_slice().unwrap(), @@ -192,8 +191,6 @@ impl System { self.sys.1.as_slice_mut().unwrap(), 10, ); - let elapsed = tnow.elapsed(); - println!("{:?}", elapsed); } }