diff --git a/External/SPEC/CFP2017rate/507.cactuBSSN_r/CMakeLists.txt b/External/SPEC/CFP2017rate/507.cactuBSSN_r/CMakeLists.txt new file mode 100644 --- /dev/null +++ b/External/SPEC/CFP2017rate/507.cactuBSSN_r/CMakeLists.txt @@ -0,0 +1,83 @@ +# https://www.spec.org/cpu2017/Docs/benchmarks/507.cactuBSSN_r.html +include(../../SpecCPU2017.cmake) +if (NOT TEST_SUITE_SPEC2017_ROOT) + return () +endif () + +speccpu2017_benchmark(RATE) + +speccpu2017_add_include_dirs( + include +) + +# Preprocessing and compiler flags depend on programming language type. +# Create variables for each programming language based on file extension. +file(GLOB_RECURSE FORTRAN_SRC_FILES ${SRC_DIR}/*.f90) +file(GLOB_RECURSE C_SRC_FILES ${SRC_DIR}/*.c) +file(GLOB_RECURSE CPP_SRC_FILES ${SRC_DIR}/*.cc) + +# Important to APPEND instead of using CMake's set_source_files_properties +# which only supports REPLACE. There are flags set in SpecCPU2017.cmake that need to +# be propagated. +set_property( + SOURCE ${FORTRAN_SRC_FILES} + APPEND + PROPERTY COMPILE_DEFINITIONS + "FCODE" +) + +set_property( + SOURCE ${C_SRC_FILES} + APPEND + PROPERTY COMPILE_DEFINITIONS + "CCODE" +) + +set_property( + SOURCE ${CPP_SRC_FILES} + APPEND + PROPERTY COMPILE_DEFINITIONS + "CCODE;CCTK_DISABLE_RESTRICT=1" +) + +set_property( + SOURCE ${C_SRC_FILES} + APPEND + PROPERTY COMPILE_FLAGS + "-std=c99" + ) + +## test ######################################################################## + +speccpu2017_run_test( + spec_test.par + WORKDIR input + STDOUT spec_test.out + RUN_TYPE test +) + + +## train ####################################################################### + +speccpu2017_run_test( + spec_train.par + WORKDIR input + STDOUT spec_train.out + RUN_TYPE train +) + +## ref ######################################################################### + +speccpu2017_run_test( + spec_ref.par + WORKDIR input + STDOUT spec_ref.out + RUN_TYPE ref +) + +################################################################################ + +speccpu2017_verify_output(ABSOLUTE_TOLERANCE 0.0000000000005) +speccpu2017_add_executable() + + diff --git a/External/SPEC/CFP2017rate/CMakeLists.txt b/External/SPEC/CFP2017rate/CMakeLists.txt --- a/External/SPEC/CFP2017rate/CMakeLists.txt +++ b/External/SPEC/CFP2017rate/CMakeLists.txt @@ -1,6 +1,6 @@ if (TEST_SUITE_FORTRAN) add_subdirectory(503.bwaves_r) # Fortran - #add_subdirectory(507.cactuBSSN_r) # C++, C, Fortran + add_subdirectory(507.cactuBSSN_r) # C++, C, Fortran endif () add_subdirectory(508.namd_r) # C++ add_subdirectory(510.parest_r) # C++ diff --git a/External/SPEC/CFP2017speed/607.cactuBSSN_s/CMakeLists.txt b/External/SPEC/CFP2017speed/607.cactuBSSN_s/CMakeLists.txt new file mode 100644 --- /dev/null +++ b/External/SPEC/CFP2017speed/607.cactuBSSN_s/CMakeLists.txt @@ -0,0 +1,9 @@ +# https://www.spec.org/cpu2017/Docs/benchmarks/607.cactuBSSN_s.html +include(../../SpecCPU2017.cmake) +if (NOT TEST_SUITE_SPEC2017_ROOT) + return () +endif () + +speccpu2017_benchmark(SPEED ORIGIN 507.cactuBSSN_r) + +speccpu2017_inherit(../../CFP2017rate/507.cactuBSSN_r) diff --git a/External/SPEC/CFP2017speed/CMakeLists.txt b/External/SPEC/CFP2017speed/CMakeLists.txt --- a/External/SPEC/CFP2017speed/CMakeLists.txt +++ b/External/SPEC/CFP2017speed/CMakeLists.txt @@ -1,6 +1,6 @@ if (TEST_SUITE_FORTRAN) add_subdirectory(603.bwaves_s) # Fortran - #add_subdirectory(607.cactuBSSN_s) # C++, C, Fortran + add_subdirectory(607.cactuBSSN_s) # C++, C, Fortran endif () add_subdirectory(619.lbm_s) # C #add_subdirectory(621.wrf_s) # Fortran, C