From c33b9a990ef55b8f5d9f0a6a2c1bbfdaff7014c8 Mon Sep 17 00:00:00 2001 From: Jean Pierre Cimalando Date: Mon, 14 Dec 2020 14:40:19 +0100 Subject: [PATCH] Additional cleanup in benchmarks --- benchmarks/CMakeLists.txt | 33 ++++----------------------------- cmake/SfizzDeps.cmake | 5 +++++ src/CMakeLists.txt | 4 ++-- 3 files changed, 11 insertions(+), 31 deletions(-) diff --git a/benchmarks/CMakeLists.txt b/benchmarks/CMakeLists.txt index f9e3732c..0c06b046 100644 --- a/benchmarks/CMakeLists.txt +++ b/benchmarks/CMakeLists.txt @@ -1,23 +1,8 @@ -# Check SIMD -include(SfizzSIMDSourceFiles) -set(BENCHMARK_SIMD_SOURCES) -sfizz_add_simd_sources(BENCHMARK_SIMD_SOURCES "../src") -find_package(benchmark CONFIG REQUIRED) - -add_library(bm_simd STATIC ${BENCHMARK_SIMD_SOURCES}) -target_link_libraries(bm_simd PRIVATE absl::span sfizz::cpuid) -add_library(bm_ftz STATIC ../src/sfizz/ScopedFTZ.cpp) - macro(sfizz_add_benchmark TARGET) add_executable("${TARGET}" ${ARGN}) target_link_libraries("${TARGET}" - PRIVATE sfizz::filesystem absl::span absl::algorithm - PRIVATE benchmark::benchmark benchmark::benchmark_main - PRIVATE bm_simd bm_ftz) - if(LIBATOMIC_FOUND) - target_link_libraries("${TARGET}" PRIVATE atomic) - endif() - target_include_directories("${TARGET}" PRIVATE ../src/sfizz) + PRIVATE sfizz::internal sfizz::filesystem absl::span absl::algorithm + PRIVATE benchmark::benchmark benchmark::benchmark_main) sfizz_enable_fast_math("${TARGET}") endmacro() @@ -30,7 +15,6 @@ sfizz_add_benchmark(bm_gain BM_gain.cpp) sfizz_add_benchmark(bm_divide BM_divide.cpp) sfizz_add_benchmark(bm_ramp BM_ramp.cpp) sfizz_add_benchmark(bm_ADSR BM_ADSR.cpp) -target_link_libraries(bm_ADSR PRIVATE sfizz::internal) sfizz_add_benchmark(bm_add BM_add.cpp) sfizz_add_benchmark(bm_multiplyAdd BM_multiplyAdd.cpp) @@ -52,15 +36,12 @@ sfizz_add_benchmark(bm_clamp BM_clamp.cpp) sfizz_add_benchmark(bm_allWithin BM_allWithin.cpp) sfizz_add_benchmark(bm_logger BM_logger.cpp) -target_link_libraries(bm_logger PRIVATE sfizz::internal) sfizz_add_benchmark(bm_smoothers BM_smoothers.cpp) -target_link_libraries(bm_smoothers PRIVATE sfizz::internal) sfizz_add_benchmark(bm_powerFollower BM_powerFollower.cpp) -target_link_libraries(bm_powerFollower PRIVATE sfizz::internal) if(TARGET sfizz::samplerate) sfizz_add_benchmark(bm_resample BM_resample.cpp ${BENCHMARK_SIMD_SOURCES}) -target_link_libraries(bm_resample PRIVATE sfizz::samplerate sfizz::sndfile sfizz::cpuid sfizz::hiir) +target_link_libraries(bm_resample PRIVATE sfizz::samplerate sfizz::sndfile sfizz::hiir) endif() sfizz_add_benchmark(bm_envelopes BM_envelopes.cpp) @@ -90,13 +71,7 @@ target_link_libraries(bm_filterModulation PRIVATE sfizz::sndfile) sfizz_add_benchmark(bm_filterStereoMono BM_filterStereoMono.cpp ../src/sfizz/SfzFilter.cpp) target_link_libraries(bm_filterStereoMono PRIVATE sfizz::sndfile) -sfizz_add_benchmark(bm_stringResonator BM_stringResonator.cpp - ../src/sfizz/effects/impl/ResonantArray.cpp - ../src/sfizz/effects/impl/ResonantArraySSE.cpp - ../src/sfizz/effects/impl/ResonantArrayAVX.cpp - ../src/sfizz/effects/impl/ResonantString.cpp - ../src/sfizz/effects/impl/ResonantStringSSE.cpp - ../src/sfizz/effects/impl/ResonantStringAVX.cpp) +sfizz_add_benchmark(bm_stringResonator BM_stringResonator.cpp) target_link_libraries(bm_stringResonator PRIVATE sfizz::sndfile) add_custom_target(sfizz_benchmarks) diff --git a/cmake/SfizzDeps.cmake b/cmake/SfizzDeps.cmake index 24ce0916..1348b558 100644 --- a/cmake/SfizzDeps.cmake +++ b/cmake/SfizzDeps.cmake @@ -188,3 +188,8 @@ if(NOT TARGET sfizz::samplerate) target_link_libraries(sfizz_samplerate INTERFACE "${SAMPLERATE_LIBRARY}") endif() endif() + +# The benchmark library +if(SFIZZ_BENCHMARKS) + find_package(benchmark CONFIG REQUIRED) +endif() diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index bf1c3edd..df68a26b 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -239,7 +239,7 @@ target_link_libraries(sfizz_messaging PUBLIC absl::strings) add_library(sfizz_internal STATIC) add_library(sfizz::internal ALIAS sfizz_internal) target_sources(sfizz_internal PRIVATE ${SFIZZ_HEADERS} ${SFIZZ_SOURCES} ${FAUST_FILES}) -target_include_directories(sfizz_internal PUBLIC .) +target_include_directories(sfizz_internal PUBLIC "." "sfizz") target_link_libraries(sfizz_internal PUBLIC absl::strings absl::span sfizz::filesystem sfizz::atomic_queue PRIVATE sfizz::parser sfizz::messaging absl::flat_hash_map Threads::Threads st_audiofile sfizz::pugixml sfizz::spline sfizz::tunings sfizz::hiir sfizz::kissfft sfizz::cpuid sfizz::threadpool sfizz::jsl sfizz::atomic) @@ -251,7 +251,7 @@ if(WIN32) target_compile_definitions(sfizz_internal PRIVATE _USE_MATH_DEFINES) endif() if(SFIZZ_RELEASE_ASSERTS) - target_compile_definitions(sfizz_internal PRIVATE "SFIZZ_ENABLE_RELEASE_ASSERT=1") + target_compile_definitions(sfizz_internal PUBLIC "SFIZZ_ENABLE_RELEASE_ASSERT=1") endif() sfizz_enable_fast_math(sfizz_internal)