diff --git a/benches/lib.rs b/benches/lib.rs index 6c107ee..7a1908e 100644 --- a/benches/lib.rs +++ b/benches/lib.rs @@ -1,18 +1,20 @@ #![feature(test)] +extern crate complex; extern crate fft; extern crate test; -#[bench] fn forward_0004(bencher: &mut test::Bencher) { forward( 4, bencher); } -#[bench] fn forward_0016(bencher: &mut test::Bencher) { forward( 16, bencher); } -#[bench] fn forward_0064(bencher: &mut test::Bencher) { forward( 64, bencher); } -#[bench] fn forward_0256(bencher: &mut test::Bencher) { forward( 256, bencher); } -#[bench] fn forward_1024(bencher: &mut test::Bencher) { forward(1024, bencher); } -#[bench] fn forward_4096(bencher: &mut test::Bencher) { forward(4096, bencher); } +use complex::c64; +use test::{Bencher, black_box}; -fn forward(size: usize, bencher: &mut test::Bencher) { - let mut data = vec![fft::c64(42.0, 0.0); size]; - bencher.iter(|| { - test::black_box(fft::forward(&mut data)); - }); +#[bench] fn complex_forward_0004(bencher: &mut Bencher) { complex_forward( 4, bencher); } +#[bench] fn complex_forward_0016(bencher: &mut Bencher) { complex_forward( 16, bencher); } +#[bench] fn complex_forward_0064(bencher: &mut Bencher) { complex_forward( 64, bencher); } +#[bench] fn complex_forward_0256(bencher: &mut Bencher) { complex_forward( 256, bencher); } +#[bench] fn complex_forward_1024(bencher: &mut Bencher) { complex_forward(1024, bencher); } +#[bench] fn complex_forward_4096(bencher: &mut Bencher) { complex_forward(4096, bencher); } + +fn complex_forward(size: usize, bencher: &mut Bencher) { + let mut data = vec![c64(42.0, 0.0); size]; + bencher.iter(|| black_box(fft::complex::forward(&mut data))); }