1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
|
program main
use mpi
implicit none
integer :: provided, ierr, size, rank, len
character (len=MPI_MAX_PROCESSOR_NAME) :: name
call MPI_Init_thread(MPI_THREAD_MULTIPLE, provided, ierr)
call MPI_Comm_rank(MPI_COMM_WORLD, rank, ierr)
call MPI_Comm_size(MPI_COMM_WORLD, size, ierr)
call MPI_Get_processor_name(name, len, ierr)
write(*, '(2A,I2,A,I2,3A)') &
'Hello, World! ', &
'I am process ', rank, &
' of ', size, &
' on ', name(1:len), '.'
call MPI_Finalize(ierr)
end program main
|