simplify MPI test

This commit is contained in:
Radovan Bast 2015-09-18 12:04:33 +02:00
parent 7548f26a08
commit 05fadb04ee
2 changed files with 38 additions and 27 deletions

View File

@ -1,20 +1,35 @@
program example
#if defined USE_MPI_MODULE
use mpi
call init()
call test_use()
call finalize()
contains
subroutine init()
use mpi, only: MPI_Init
implicit none
#else
integer :: ierr
call MPI_Init(ierr)
end subroutine
subroutine finalize()
use mpi, only: MPI_Finalize
implicit none
integer :: ierr
call MPI_Finalize(ierr)
end subroutine
subroutine test_use()
implicit none
#include "mpif.h"
#endif
integer :: ierr, rank, num_ranks
logical :: test_ok
call MPI_INIT(ierr)
call MPI_COMM_RANK(MPI_COMM_WORLD, rank, ierr)
call MPI_COMM_SIZE(MPI_COMM_WORLD, num_ranks, ierr)
call MPI_FINALIZE(ierr)
test_ok = (num_ranks == 2 .and. (rank == 0 .or. rank == 1))
@ -24,4 +39,6 @@ program example
stop "FAILED"
endif
end subroutine
end program

View File

@ -115,16 +115,10 @@ def test_fc_int64():
def test_fc_mpi():
if sys.platform == 'win32':
configure_build_and_exe('fc_mpi', 'python setup.py --mpi --fc=gfortran --extra-fc-flags="-D_WIN64 -D INT_PTR_KIND()=8 -fno-range-check" --add-definitions="-D USE_MPI_MODULE"', 'mpiexec -n 2')
setup_line = 'python setup.py --mpi --fc=gfortran --extra-fc-flags="-D_WIN64 -D INT_PTR_KIND()=8 -fno-range-check"'
else:
configure_build_and_exe('fc_mpi', 'python setup.py --mpi --fc=mpif90 --add-definitions="-D USE_MPI_MODULE"', 'mpirun -np 2')
def test_fc_mpi_include():
if sys.platform == 'win32':
configure_build_and_exe('fc_mpi', 'python setup.py --mpi --fc=gfortran --extra-fc-flags="-D_WIN64 -D INT_PTR_KIND()=8 -fno-range-check"', 'mpiexec -np 2')
else:
configure_build_and_exe('fc_mpi', 'python setup.py --mpi --fc=mpif90', 'mpirun -np 2')
setup_line = 'python setup.py --mpi --fc=mpif90"'
configure_build_and_exe('fc_mpi', setup_line, 'mpiexec -np 2')
@skip_on_osx