Merge branch 'master' of github.com:JamesEMcClure/LBPM-WIA
This commit is contained in:
commit
7dc2373f49
@ -108,7 +108,7 @@ IF ( NOT ONLY_BUILD_DOCS )
|
||||
ENDIF()
|
||||
INSTALL_LBPM_TARGET( lbpm-wia )
|
||||
ADD_SUBDIRECTORY( tests )
|
||||
INSTALL( DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/example DESTINATION ${LBPM_INSTALL_DIR} )
|
||||
ADD_SUBDIRECTORY( example )
|
||||
ENDIF()
|
||||
|
||||
|
||||
|
@ -296,9 +296,9 @@ FUNCTION( ADD_LBPM_PROVISIONAL_TEST EXEFILE )
|
||||
# The correct target has already been added
|
||||
ELSE()
|
||||
# We are trying to add 2 different tests with the same name
|
||||
MESSAGE ( "Existing test: ${tmp}" )
|
||||
MESSAGE ( "New test: ${CMAKE_CURRENT_BINARY_DIR}/${EXEFILE}" )
|
||||
MESSAGE ( FATAL_ERROR "Trying to add 2 different tests with the same name" )
|
||||
MESSAGE( "Existing test: ${tmp}" )
|
||||
MESSAGE( "New test: ${CMAKE_CURRENT_BINARY_DIR}/${EXEFILE}" )
|
||||
MESSAGE( FATAL_ERROR "Trying to add 2 different tests with the same name" )
|
||||
ENDIF()
|
||||
ENDFUNCTION()
|
||||
|
||||
@ -388,6 +388,27 @@ MACRO( ADD_LBPM_TEST_THREAD_MPI EXEFILE PROCS THREADS ${ARGN} )
|
||||
ENDMACRO()
|
||||
|
||||
|
||||
# Copy an example folder
|
||||
MACRO( INSTALL_EXAMPLE EXAMPLE )
|
||||
INSTALL( DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/${EXAMPLE}" DESTINATION "${LBPM_INSTALL_DIR}/example" )
|
||||
ENDMACRO()
|
||||
|
||||
|
||||
# Copy an example folder
|
||||
MACRO( TEST_EXAMPLE EXAMPLE EXEFILE PROCS ${ARGN} )
|
||||
ADD_CUSTOM_TARGET(
|
||||
${EXAMPLE} ALL
|
||||
${CMAKE_COMMAND} -E copy_directory "${CMAKE_CURRENT_SOURCE_DIR}/${EXAMPLE}" "${CMAKE_CURRENT_BINARY_DIR}/${EXAMPLE}"
|
||||
DEPENDS ${EXEFILE}
|
||||
)
|
||||
ADD_TEST(
|
||||
NAME example--${EXAMPLE}
|
||||
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/${EXAMPLE}"
|
||||
COMMAND ${MPIEXEC} ${MPIEXEC_NUMPROC_FLAG} ${PROCS} "${LBPM_INSTALL_DIR}/bin/${EXEFILE}" ${ARGN} )
|
||||
SET_TESTS_PROPERTIES( ${TESTNAME} PROPERTIES FAIL_REGULAR_EXPRESSION ".*FAILED.*" PROCESSORS 1 )
|
||||
ENDMACRO()
|
||||
|
||||
|
||||
# Macro to check if a flag is enabled
|
||||
MACRO ( CHECK_ENABLE_FLAG FLAG DEFAULT )
|
||||
IF( NOT DEFINED ${FLAG} )
|
||||
|
@ -19,7 +19,6 @@ ELSEIF( ${HOSTNAME} MATCHES "vayu" )
|
||||
SET( COVERAGE_COMMAND /usr/bin/gcov )
|
||||
SET( VALGRIND_COMMAND /usr/local/bin/valgrind )
|
||||
SET( CUDA_FLAGS "--use_fast_math -Xptxas=-v -arch=sm_20" )
|
||||
SET( CUDA_HOST_COMPILER "g++" )
|
||||
SET( CTEST_CMAKE_GENERATOR "Unix Makefiles" )
|
||||
SET( CC "mpicc" )
|
||||
SET( CXX "mpicxx" )
|
||||
@ -160,24 +159,29 @@ ENDIF()
|
||||
CTEST_EMPTY_BINARY_DIRECTORY (${CTEST_BINARY_DIRECTORY})
|
||||
FILE(WRITE "${CTEST_BINARY_DIRECTORY}/CMakeCache.txt" "CTEST_TEST_CTEST:BOOL=1")
|
||||
|
||||
# Set the configure options
|
||||
SET( CTEST_OPTIONS )
|
||||
SET( CTEST_OPTIONS "-DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}" )
|
||||
SET( CTEST_OPTIONS "${CTEST_OPTIONS};-DCMAKE_C_COMPILER:PATH=${CC};-DCMAKE_C_FLAGS='${C_FLAGS}';" )
|
||||
SET( CTEST_OPTIONS "${CTEST_OPTIONS};-DCMAKE_CXX_COMPILER:PATH=${CXX};-DCMAKE_CXX_FLAGS='${CXX_FLAGS}'" )
|
||||
SET( CTEST_OPTIONS "${CTEST_OPTIONS};-DMPI_COMPILER:BOOL=true;-DMPIEXEC=${MPIEXEC};-DUSE_EXT_MPI_FOR_SERIAL_TESTS:BOOL=true")
|
||||
IF ( USE_CUDA )
|
||||
SET( CTEST_OPTIONS "${CTEST_OPTIONS};-DUSE_CUDA:BOOL=true;-DCUDA_NVCC_FLAGS='${CUDA_FLAGS}';-DCUDA_HOST_COMPILER=${CUDA_HOST_COMPILER}" )
|
||||
ELSE()
|
||||
SET( CTEST_OPTIONS "${CTEST_OPTIONS};-DUSE_CUDA:BOOL=false" )
|
||||
ENDIF()
|
||||
SET( CTEST_OPTIONS "${CTEST_OPTIONS};-DLDLIBS:STRING=\"${LDLIBS}\"" )
|
||||
SET( CTEST_OPTIONS "${CTEST_OPTIONS};-DENABLE_GCOV:BOOL=${ENABLE_GCOV}" )
|
||||
|
||||
# Configure and run the tests
|
||||
SET( CTEST_SITE ${HOSTNAME} )
|
||||
CTEST_START("${CTEST_DASHBOARD}")
|
||||
CTEST_UPDATE()
|
||||
IF ( USE_CUDA )
|
||||
CTEST_CONFIGURE(
|
||||
BUILD ${CTEST_BINARY_DIRECTORY}
|
||||
SOURCE ${CTEST_SOURCE_DIRECTORY}
|
||||
OPTIONS "-DCMAKE_C_COMPILER:PATH=${CC};-DCMAKE_CXX_COMPILER:PATH=${CXX};-DCMAKE_C_FLAGS='${C_FLAGS}';-DCMAKE_CXX_FLAGS='${CXX_FLAGS}';-DMPI_COMPILER:BOOL=true;-DMPIEXEC=${MPIEXEC};-DUSE_EXT_MPI_FOR_SERIAL_TESTS:BOOL=true;-DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE};-DUSE_CUDA:BOOL=true;-DCUDA_NVCC_FLAGS='${CUDA_FLAGS}';-DCUDA_HOST_COMPILER=${CUDA_HOST_COMPILER};-DLDLIBS:STRING=\"${LDLIBS}\";-DENABLE_GCOV:BOOL=${ENABLE_GCOV}"
|
||||
)
|
||||
ELSE()
|
||||
CTEST_CONFIGURE(
|
||||
BUILD ${CTEST_BINARY_DIRECTORY}
|
||||
SOURCE ${CTEST_SOURCE_DIRECTORY}
|
||||
OPTIONS "-DCMAKE_C_COMPILER:PATH=${CC};-DCMAKE_CXX_COMPILER:PATH=${CXX};-DCMAKE_C_FLAGS='${C_FLAGS}';-DCMAKE_CXX_FLAGS='${CXX_FLAGS}';-DMPI_COMPILER:BOOL=true;-DMPIEXEC=${MPIEXEC};-DUSE_EXT_MPI_FOR_SERIAL_TESTS:BOOL=true;-DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE};-DUSE_CUDA:BOOL=false;-DLDLIBS:STRING=\"${LDLIBS}\";-DENABLE_GCOV:BOOL=${ENABLE_GCOV}"
|
||||
)
|
||||
ENDIF()
|
||||
CTEST_CONFIGURE(
|
||||
BUILD ${CTEST_BINARY_DIRECTORY}
|
||||
SOURCE ${CTEST_SOURCE_DIRECTORY}
|
||||
OPTIONS "${CTEST_OPTIONS}"
|
||||
)
|
||||
CTEST_BUILD()
|
||||
IF ( USE_VALGRIND_MATLAB )
|
||||
CTEST_TEST( INCLUDE MATLAB--test_hello_world PARALLEL_LEVEL ${N_PROCS} )
|
||||
|
13
example/CMakeLists.txt
Normal file
13
example/CMakeLists.txt
Normal file
@ -0,0 +1,13 @@
|
||||
# Copy the examples to the install folder
|
||||
INSTALL_EXAMPLE( Bubble )
|
||||
INSTALL_EXAMPLE( ConstrainedBubble )
|
||||
INSTALL_EXAMPLE( Sph1896 )
|
||||
|
||||
# Create unit tests for each example
|
||||
# TEST_EXAMPLE( example exe N_procs )
|
||||
TEST_EXAMPLE( Bubble TestBubble 1 )
|
||||
TEST_EXAMPLE( Sph1896 lb2_Color_wia_mpi 27 )
|
||||
TEST_EXAMPLE( ConstrainedBubble lb2_Color_wia_mpi 1 )
|
||||
|
||||
|
||||
|
@ -1,5 +1,6 @@
|
||||
# Copy files for the tests
|
||||
INSTALL_LBPM_EXE( lb2_Color_wia_mpi )
|
||||
INSTALL_LBPM_EXE( TestBubble )
|
||||
|
||||
CONFIGURE_FILE( ${CMAKE_CURRENT_SOURCE_DIR}/cylindertest ${CMAKE_CURRENT_BINARY_DIR}/cylindertest COPYONLY )
|
||||
|
||||
|
@ -245,9 +245,10 @@ int main(int argc, char **argv)
|
||||
|
||||
if (nprocs != nprocx*nprocy*nprocz){
|
||||
printf("Fatal error in processor number! \n");
|
||||
printf("nprocx = %i \n",nprocx);
|
||||
printf("nprocy = %i \n",nprocy);
|
||||
printf("nprocz = %i \n",nprocz);
|
||||
printf(" nprocx = %i \n",nprocx);
|
||||
printf(" nprocy = %i \n",nprocy);
|
||||
printf(" nprocz = %i \n",nprocz);
|
||||
return 1;
|
||||
}
|
||||
|
||||
if (rank==0){
|
||||
|
Loading…
Reference in New Issue
Block a user