diff options
author | Erik Schnetter <schnetter@gmail.com> | 2013-11-28 09:39:24 -0500 |
---|---|---|
committer | Erik Schnetter <schnetter@gmail.com> | 2013-11-28 09:39:24 -0500 |
commit | 0c6c0a0397fa4ee6d5e22bf11bde679490a706bb (patch) | |
tree | 0e45830fe043d2351f3c88c99d6c29cb90924a9a | |
parent | c086afdcb429922ed82043ecc773a6822d97dd58 (diff) | |
download | vecmathlib-0c6c0a0397fa4ee6d5e22bf11bde679490a706bb.zip vecmathlib-0c6c0a0397fa4ee6d5e22bf11bde679490a706bb.tar.gz |
Don’t test builtin vectors; they are too slow
-rw-r--r-- | bench.cc | 32 |
1 files changed, 30 insertions, 2 deletions
@@ -300,51 +300,79 @@ void bench_func() cout << "\n" << "Benchmarking " << func_t<float32_vec>().name() << ":\n"; + // Note: We benchmark neither testvec (since this is known to be + // slow), nor builtinvec (since this has about the same performance + // as pseudovec, and is also not very efficient). + bench_type_func<realpseudovec<float,1>, func_t>(); - // bench_type_func<realbuiltinvec<float,1>, func_t>(); +#ifdef __clang__ + bench_type_func<realbuiltinvec<float,1>, func_t>(); +#endif bench_type_func<realtestvec<float,1>, func_t>(); #ifdef VECMATHLIB_HAVE_VEC_FLOAT_1 bench_type_func<realvec<float,1>, func_t>(); #endif #ifdef VECMATHLIB_HAVE_VEC_FLOAT_2 bench_type_func<realpseudovec<float,2>, func_t>(); +#ifdef __clang__ // bench_type_func<realbuiltinvec<float,2>, func_t>(); +#endif // bench_type_func<realtestvec<float,2>, func_t>(); bench_type_func<realvec<float,2>, func_t>(); #endif #ifdef VECMATHLIB_HAVE_VEC_FLOAT_4 bench_type_func<realpseudovec<float,4>, func_t>(); +#ifdef __clang__ // bench_type_func<realbuiltinvec<float,4>, func_t>(); +#endif // bench_type_func<realtestvec<float,4>, func_t>(); bench_type_func<realvec<float,4>, func_t>(); #endif #ifdef VECMATHLIB_HAVE_VEC_FLOAT_8 bench_type_func<realpseudovec<float,8>, func_t>(); +#ifdef __clang__ // bench_type_func<realbuiltinvec<float,8>, func_t>(); +#endif // bench_type_func<realtestvec<float,8>, func_t>(); bench_type_func<realvec<float,8>, func_t>(); #endif bench_type_func<realpseudovec<double,1>, func_t>(); - // bench_type_func<realbuiltinvec<double,1>, func_t>(); +#ifdef __clang__ + bench_type_func<realbuiltinvec<double,1>, func_t>(); +#endif bench_type_func<realtestvec<double,1>, func_t>(); #ifdef VECMATHLIB_HAVE_VEC_DOUBLE_1 bench_type_func<realvec<double,1>, func_t>(); #endif #ifdef VECMATHLIB_HAVE_VEC_DOUBLE_2 bench_type_func<realpseudovec<double,2>, func_t>(); +#ifdef __clang__ // bench_type_func<realbuiltinvec<double,2>, func_t>(); +#endif // bench_type_func<realtestvec<double,2>, func_t>(); bench_type_func<realvec<double,2>, func_t>(); #endif #ifdef VECMATHLIB_HAVE_VEC_DOUBLE_4 bench_type_func<realpseudovec<double,4>, func_t>(); +#ifdef __clang__ // bench_type_func<realbuiltinvec<double,4>, func_t>(); +#endif // bench_type_func<realtestvec<double,4>, func_t>(); bench_type_func<realvec<double,4>, func_t>(); #endif +#ifdef VECMATHLIB_HAVE_VEC_DOUBLE_8 + bench_type_func<realpseudovec<double,8>, func_t>(); +#ifdef __clang__ + // bench_type_func<realbuiltinvec<double,8>, func_t>(); +#endif + // bench_type_func<realtestvec<double,8>, func_t>(); + bench_type_func<realvec<double,8>, func_t>(); +#endif } + + void bench() { bench_func<functor_nop>(); |