TRIBITS_INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}) # value types SET(Intrepid2_TEST_ETI_VALUETYPE_NAME "") SET(Intrepid2_TEST_ETI_VALUETYPE "") LIST(APPEND Intrepid2_TEST_ETI_VALUETYPE_NAME "DOUBLE") LIST(APPEND Intrepid2_TEST_ETI_VALUETYPE "double") LIST(APPEND Intrepid2_TEST_ETI_SACADO "0") LIST(LENGTH Intrepid2_TEST_ETI_VALUETYPE_NAME ETI_VALUETYPE_COUNT) MATH(EXPR ETI_VALUETYPE_COUNT "${ETI_VALUETYPE_COUNT}-1") # Host test SET(Intrepid2_TEST_ETI_FILE "") LIST(APPEND Intrepid2_TEST_ETI_FILE "test_orientation_encoding" "test_orientation_HEX" "test_orientation_HEX_newBasis" "test_orientation_PYR_QuadFace_newBasis" "test_orientation_PYR_TriFace_newBasis" "test_orientation_QUAD" "test_orientation_QUAD_newBasis" "test_orientation_TET" "test_orientationtools_coeff_matrix" "test_orientationtools_mesh" "test_orientationtools_modify_basis_hcurl" "test_orientationtools_modify_basis_hdiv" "test_orientationtools_modify_basis_hgrad" "test_orientationtools_modify_basis_lower_order" "test_orientation_TRI") SET(Intrepid2_TEST_ETI_DEVICE_NAME "") SET(Intrepid2_TEST_ETI_DEVICE "") IF(Kokkos_ENABLE_SERIAL) LIST(APPEND Intrepid2_TEST_ETI_DEVICE_NAME "Serial") LIST(APPEND Intrepid2_TEST_ETI_DEVICE "Kokkos::Device") ENDIF() # disable openmp for PR test failure due to wall time #IF(Kokkos_ENABLE_OPENMP) # LIST(APPEND Intrepid2_TEST_ETI_DEVICE_NAME "OpenMP") # LIST(APPEND Intrepid2_TEST_ETI_DEVICE "Kokkos::Device") #ENDIF() LIST(LENGTH Intrepid2_TEST_ETI_DEVICE_NAME ETI_DEVICE_COUNT) MATH(EXPR ETI_DEVICE_COUNT "${ETI_DEVICE_COUNT}-1") IF (${ETI_DEVICE_COUNT} GREATER_EQUAL 0) FOREACH(I RANGE ${ETI_DEVICE_COUNT}) LIST(GET Intrepid2_TEST_ETI_DEVICE_NAME ${I} ETI_DEVICE_NAME) LIST(GET Intrepid2_TEST_ETI_DEVICE ${I} ETI_DEVICE) #MESSAGE(STATUS "Generating TEST OrientationTools for ${ETI_DEVICE_NAME} with ${ETI_DEVICE}") FOREACH(J RANGE ${ETI_VALUETYPE_COUNT}) LIST(GET Intrepid2_TEST_ETI_VALUETYPE_NAME ${J} ETI_VALUETYPE_NAME) LIST(GET Intrepid2_TEST_ETI_VALUETYPE ${J} ETI_VALUETYPE) LIST(GET Intrepid2_TEST_ETI_SACADO ${J} ETI_SACADO) FOREACH(ETI_FILE IN LISTS Intrepid2_TEST_ETI_FILE) SET(ETI_NAME "${ETI_FILE}_${ETI_DEVICE_NAME}_${ETI_VALUETYPE_NAME}") MESSAGE(STATUS "Generating TEST: OrientationTools ${ETI_NAME}.cpp") CONFIGURE_FILE(eti/${ETI_FILE}_ETI.in ${ETI_NAME}.cpp) TRIBITS_ADD_EXECUTABLE_AND_TEST( ${ETI_NAME} SOURCES ${ETI_NAME}.cpp ARGS PrintItAll NUM_MPI_PROCS 1 PASS_REGULAR_EXPRESSION "TEST PASSED" ADD_DIR_TO_NAME ) ENDFOREACH() ENDFOREACH() ENDFOREACH() ENDIF() # Device test SET(Intrepid2_TEST_ETI_FILE "") LIST(APPEND Intrepid2_TEST_ETI_FILE "test_orientationtools_modify_basis_hcurl" "test_orientationtools_modify_basis_hdiv" "test_orientationtools_modify_basis_hgrad" "test_orientationtools_modify_basis_lower_order") SET(Intrepid2_TEST_ETI_DEVICE_NAME "") SET(Intrepid2_TEST_ETI_DEVICE "") IF(Kokkos_ENABLE_CUDA) LIST(APPEND Intrepid2_TEST_ETI_DEVICE_NAME "CUDA") LIST(APPEND Intrepid2_TEST_ETI_DEVICE "Kokkos::Device") ENDIF() IF(Kokkos_ENABLE_HIP) LIST(APPEND Intrepid2_TEST_ETI_DEVICE_NAME "HIP") LIST(APPEND Intrepid2_TEST_ETI_DEVICE "Kokkos::Device") ENDIF() LIST(LENGTH Intrepid2_TEST_ETI_DEVICE_NAME ETI_DEVICE_COUNT) MATH(EXPR ETI_DEVICE_COUNT "${ETI_DEVICE_COUNT}-1") IF (${ETI_DEVICE_COUNT} GREATER_EQUAL 0) FOREACH(I RANGE ${ETI_DEVICE_COUNT}) LIST(GET Intrepid2_TEST_ETI_DEVICE_NAME ${I} ETI_DEVICE_NAME) LIST(GET Intrepid2_TEST_ETI_DEVICE ${I} ETI_DEVICE) #MESSAGE(STATUS "Generating TEST for OrientationTools ${ETI_DEVICE_NAME} with ${ETI_DEVICE}") FOREACH(J RANGE ${ETI_VALUETYPE_COUNT}) LIST(GET Intrepid2_TEST_ETI_VALUETYPE_NAME ${J} ETI_VALUETYPE_NAME) LIST(GET Intrepid2_TEST_ETI_VALUETYPE ${J} ETI_VALUETYPE) LIST(GET Intrepid2_TEST_ETI_SACADO ${J} ETI_SACADO) FOREACH(ETI_FILE IN LISTS Intrepid2_TEST_ETI_FILE) SET(ETI_NAME "${ETI_FILE}_${ETI_DEVICE_NAME}_${ETI_VALUETYPE_NAME}") MESSAGE(STATUS "Generating TEST: OrientationTools ${ETI_NAME}.cpp") CONFIGURE_FILE(eti/${ETI_FILE}_ETI.in ${ETI_NAME}.cpp) TRIBITS_ADD_EXECUTABLE_AND_TEST( ${ETI_NAME} SOURCES ${ETI_NAME}.cpp ARGS PrintItAll NUM_MPI_PROCS 1 PASS_REGULAR_EXPRESSION "TEST PASSED" ADD_DIR_TO_NAME ) ENDFOREACH() ENDFOREACH() ENDFOREACH() ENDIF()