simplify MPI test
This commit is contained in:
parent
7548f26a08
commit
05fadb04ee
@ -1,27 +1,44 @@
|
|||||||
program example
|
program example
|
||||||
|
|
||||||
#if defined USE_MPI_MODULE
|
call init()
|
||||||
use mpi
|
call test_use()
|
||||||
implicit none
|
call finalize()
|
||||||
#else
|
|
||||||
implicit none
|
contains
|
||||||
|
|
||||||
|
subroutine init()
|
||||||
|
use mpi, only: MPI_Init
|
||||||
|
implicit none
|
||||||
|
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"
|
#include "mpif.h"
|
||||||
#endif
|
|
||||||
|
|
||||||
integer :: ierr, rank, num_ranks
|
integer :: ierr, rank, num_ranks
|
||||||
logical :: test_ok
|
logical :: test_ok
|
||||||
|
|
||||||
call MPI_INIT(ierr)
|
call MPI_COMM_RANK(MPI_COMM_WORLD, rank, ierr)
|
||||||
call MPI_COMM_RANK(MPI_COMM_WORLD, rank, ierr)
|
call MPI_COMM_SIZE(MPI_COMM_WORLD, num_ranks, 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))
|
test_ok = (num_ranks == 2 .and. (rank == 0 .or. rank == 1))
|
||||||
|
|
||||||
if (test_ok) then
|
if (test_ok) then
|
||||||
if (rank == 0) print *, 'PASSED'
|
if (rank == 0) print *, 'PASSED'
|
||||||
else
|
else
|
||||||
stop "FAILED"
|
stop "FAILED"
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
end subroutine
|
||||||
|
|
||||||
end program
|
end program
|
||||||
|
12
test/test.py
12
test/test.py
@ -115,16 +115,10 @@ def test_fc_int64():
|
|||||||
|
|
||||||
def test_fc_mpi():
|
def test_fc_mpi():
|
||||||
if sys.platform == 'win32':
|
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:
|
else:
|
||||||
configure_build_and_exe('fc_mpi', 'python setup.py --mpi --fc=mpif90 --add-definitions="-D USE_MPI_MODULE"', 'mpirun -np 2')
|
setup_line = 'python setup.py --mpi --fc=mpif90"'
|
||||||
|
configure_build_and_exe('fc_mpi', setup_line, 'mpiexec -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')
|
|
||||||
|
|
||||||
|
|
||||||
@skip_on_osx
|
@skip_on_osx
|
||||||
|
Loading…
x
Reference in New Issue
Block a user