arnaucube
arnaucube/poulpyPublic Self-hosted repository
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);