simplify MPI test
This commit is contained in:
		| @@ -1,27 +1,44 @@ | ||||
| program example | ||||
|  | ||||
| #if defined USE_MPI_MODULE | ||||
|    use mpi | ||||
|    implicit none | ||||
| #else | ||||
|    implicit none | ||||
|    call init() | ||||
|    call test_use() | ||||
|    call finalize() | ||||
|  | ||||
| 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" | ||||
| #endif | ||||
|  | ||||
|    integer :: ierr, rank, num_ranks | ||||
|    logical :: test_ok | ||||
|       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) | ||||
|       call MPI_COMM_RANK(MPI_COMM_WORLD, rank, ierr) | ||||
|       call MPI_COMM_SIZE(MPI_COMM_WORLD, num_ranks, 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 (rank == 0) print *, 'PASSED' | ||||
|    else | ||||
|       stop "FAILED" | ||||
|    endif | ||||
|       if (test_ok) then | ||||
|          if (rank == 0) print *, 'PASSED' | ||||
|       else | ||||
|          stop "FAILED" | ||||
|       endif | ||||
|  | ||||
|    end subroutine | ||||
|  | ||||
| end program | ||||
|   | ||||
							
								
								
									
										12
									
								
								test/test.py
									
									
									
									
									
								
							
							
						
						
									
										12
									
								
								test/test.py
									
									
									
									
									
								
							| @@ -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 | ||||
|   | ||||
		Reference in New Issue
	
	Block a user