only test mpif.h

This commit is contained in:
Radovan Bast 2015-10-30 10:28:45 +01:00
parent 5567198dc1
commit 71bea9bfe5
2 changed files with 14 additions and 35 deletions

View File

@ -1,6 +1,5 @@
if(MPI_FOUND) if(MPI_FOUND)
add_executable(example example.F90) add_executable(example example.F90)
target_link_libraries(example ${MPI_LIBRARIES})
else() else()
message(FATAL_ERROR "MPI not found") message(FATAL_ERROR "MPI not found")
endif() endif()

View File

@ -1,44 +1,24 @@
program example program example
call init() implicit none
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" #include "mpif.h"
integer :: ierr, rank, num_ranks integer :: ierr, rank, num_ranks
logical :: test_ok logical :: test_ok
call MPI_COMM_RANK(MPI_COMM_WORLD, rank, ierr) call MPI_Init(ierr)
call MPI_COMM_SIZE(MPI_COMM_WORLD, num_ranks, ierr)
test_ok = (num_ranks == 2 .and. (rank == 0 .or. rank == 1)) call MPI_COMM_RANK(MPI_COMM_WORLD, rank, ierr)
call MPI_COMM_SIZE(MPI_COMM_WORLD, num_ranks, ierr)
if (test_ok) then test_ok = (num_ranks == 2 .and. (rank == 0 .or. rank == 1))
if (rank == 0) print *, 'PASSED'
else
stop "FAILED"
endif
end subroutine if (test_ok) then
if (rank == 0) print *, 'PASSED'
else
stop "FAILED"
endif
call MPI_Finalize(ierr)
end program end program