poulpy/poulpy-cpu-ref/benches/convolution.rs
poulpy-cpu-ref/benches/convolution.rsRaw
1use criterion::{Criterion, criterion_group, criterion_main};
2use poulpy_cpu_ref::FFT64Ref;
3use poulpy_hal::bench_suite::convolution::{
4 bench_cnv_apply_dft, bench_cnv_by_const_apply, bench_cnv_pairwise_apply_dft, bench_cnv_prepare_left, bench_cnv_prepare_right,
5};
6
7fn bench_cnv_prepare_left_cpu_ref_fft64(c: &mut Criterion) {
8 bench_cnv_prepare_left::<FFT64Ref>(c, "cpu_ref::fft64");
9}
10
11fn bench_cnv_prepare_right_cpu_ref_fft64(c: &mut Criterion) {
12 bench_cnv_prepare_right::<FFT64Ref>(c, "cpu_ref::fft64");
13}
14
15fn bench_bench_cnv_apply_dft_cpu_ref_fft64(c: &mut Criterion) {
16 bench_cnv_apply_dft::<FFT64Ref>(c, "cpu_ref::fft64");
17}
18
19fn bench_bench_bench_cnv_pairwise_apply_dft_cpu_ref_fft64(c: &mut Criterion) {
20 bench_cnv_pairwise_apply_dft::<FFT64Ref>(c, "cpu_ref::fft64");
21}
22
23fn bench_cnv_by_const_apply_cpu_ref_fft64(c: &mut Criterion) {
24 bench_cnv_by_const_apply::<FFT64Ref>(c, "cpu_ref::fft64");
25}
26
27criterion_group!(
28 benches,
29 bench_cnv_prepare_left_cpu_ref_fft64,
30 bench_cnv_prepare_right_cpu_ref_fft64,
31 bench_bench_cnv_apply_dft_cpu_ref_fft64,
32 bench_bench_bench_cnv_pairwise_apply_dft_cpu_ref_fft64,
33 bench_cnv_by_const_apply_cpu_ref_fft64,
34);
35criterion_main!(benches);