poulpy/poulpy-cpu-avx/benches/vmp.rs
poulpy-cpu-avx/benches/vmp.rsRaw
1// poulpy-backend/benches/vec_znx_add.rs
2use criterion::{Criterion, criterion_group, criterion_main};
3#[cfg(target_arch = "x86_64")]
4use poulpy_cpu_avx::FFT64Avx;
5#[cfg(not(target_arch = "x86_64"))]
6use poulpy_cpu_ref::FFT64Ref;
7
8use poulpy_hal::bench_suite::vmp::bench_vmp_apply_dft_to_dft;
9
10#[cfg(target_arch = "x86_64")]
11fn bench_vmp_apply_dft_to_dft_cpu_avx_fft64(c: &mut Criterion) {
12 bench_vmp_apply_dft_to_dft::<FFT64Avx>(c, "FFT64Avx");
13}
14#[cfg(not(target_arch = "x86_64"))]
15fn bench_vmp_apply_dft_to_dft_cpu_ref_fft64(c: &mut Criterion) {
16 bench_vmp_apply_dft_to_dft::<FFT64Ref>(c, "FFT64Ref");
17}
18
19#[cfg(target_arch = "x86_64")]
20criterion_group!(benches_x86, bench_vmp_apply_dft_to_dft_cpu_avx_fft64,);
21#[cfg(not(target_arch = "x86_64"))]
22criterion_group!(benches_ref, bench_vmp_apply_dft_to_dft_cpu_ref_fft64,);
23
24#[cfg(target_arch = "x86_64")]
25criterion_main!(benches_x86);
26#[cfg(not(target_arch = "x86_64"))]
27criterion_main!(benches_ref);