Additional cleanup in benchmarks

This commit is contained in:
Jean Pierre Cimalando 2020-12-14 14:40:19 +01:00
parent 1f696e943e
commit c33b9a990e
3 changed files with 11 additions and 31 deletions

View file

@ -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) macro(sfizz_add_benchmark TARGET)
add_executable("${TARGET}" ${ARGN}) add_executable("${TARGET}" ${ARGN})
target_link_libraries("${TARGET}" target_link_libraries("${TARGET}"
PRIVATE sfizz::filesystem absl::span absl::algorithm PRIVATE sfizz::internal sfizz::filesystem absl::span absl::algorithm
PRIVATE benchmark::benchmark benchmark::benchmark_main 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)
sfizz_enable_fast_math("${TARGET}") sfizz_enable_fast_math("${TARGET}")
endmacro() 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_divide BM_divide.cpp)
sfizz_add_benchmark(bm_ramp BM_ramp.cpp) sfizz_add_benchmark(bm_ramp BM_ramp.cpp)
sfizz_add_benchmark(bm_ADSR BM_ADSR.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_add BM_add.cpp)
sfizz_add_benchmark(bm_multiplyAdd BM_multiplyAdd.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_allWithin BM_allWithin.cpp)
sfizz_add_benchmark(bm_logger BM_logger.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) sfizz_add_benchmark(bm_smoothers BM_smoothers.cpp)
target_link_libraries(bm_smoothers PRIVATE sfizz::internal)
sfizz_add_benchmark(bm_powerFollower BM_powerFollower.cpp) sfizz_add_benchmark(bm_powerFollower BM_powerFollower.cpp)
target_link_libraries(bm_powerFollower PRIVATE sfizz::internal)
if(TARGET sfizz::samplerate) if(TARGET sfizz::samplerate)
sfizz_add_benchmark(bm_resample BM_resample.cpp ${BENCHMARK_SIMD_SOURCES}) 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() endif()
sfizz_add_benchmark(bm_envelopes BM_envelopes.cpp) 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) sfizz_add_benchmark(bm_filterStereoMono BM_filterStereoMono.cpp ../src/sfizz/SfzFilter.cpp)
target_link_libraries(bm_filterStereoMono PRIVATE sfizz::sndfile) target_link_libraries(bm_filterStereoMono PRIVATE sfizz::sndfile)
sfizz_add_benchmark(bm_stringResonator BM_stringResonator.cpp 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)
target_link_libraries(bm_stringResonator PRIVATE sfizz::sndfile) target_link_libraries(bm_stringResonator PRIVATE sfizz::sndfile)
add_custom_target(sfizz_benchmarks) add_custom_target(sfizz_benchmarks)

View file

@ -188,3 +188,8 @@ if(NOT TARGET sfizz::samplerate)
target_link_libraries(sfizz_samplerate INTERFACE "${SAMPLERATE_LIBRARY}") target_link_libraries(sfizz_samplerate INTERFACE "${SAMPLERATE_LIBRARY}")
endif() endif()
endif() endif()
# The benchmark library
if(SFIZZ_BENCHMARKS)
find_package(benchmark CONFIG REQUIRED)
endif()

View file

@ -239,7 +239,7 @@ target_link_libraries(sfizz_messaging PUBLIC absl::strings)
add_library(sfizz_internal STATIC) add_library(sfizz_internal STATIC)
add_library(sfizz::internal ALIAS sfizz_internal) add_library(sfizz::internal ALIAS sfizz_internal)
target_sources(sfizz_internal PRIVATE ${SFIZZ_HEADERS} ${SFIZZ_SOURCES} ${FAUST_FILES}) 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 target_link_libraries(sfizz_internal
PUBLIC absl::strings absl::span sfizz::filesystem sfizz::atomic_queue 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) 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) target_compile_definitions(sfizz_internal PRIVATE _USE_MATH_DEFINES)
endif() endif()
if(SFIZZ_RELEASE_ASSERTS) 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() endif()
sfizz_enable_fast_math(sfizz_internal) sfizz_enable_fast_math(sfizz_internal)