Get the maximum timer duration across all partitions.
This assumes the same timerhandle to be used across all partitions for all timers.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(tem_timer_type), | intent(inout), | optional | :: | me |
timer object |
|
integer, | intent(in) | :: | timerHandle |
timer handle |
||
integer, | intent(in) | :: | comm |
communicator handle |
timer value
function tem_getMaxTimerVal( me, timerHandle, comm ) result( retValue )
! -------------------------------------------------------------------- !
!> timer object
type(tem_timer_type), intent(inout), optional :: me
!> timer handle
integer, intent(in) :: timerHandle
!> communicator handle
integer, intent(in) :: comm
!> timer value
real(kind=rk) :: retValue
! -------------------------------------------------------------------- !
real(kind=rk) :: send, recv
integer :: iError
! -------------------------------------------------------------------- !
send = tem_getTimerVal( me = me, timerHandle = timerHandle )
call MPI_Allreduce( send, recv, 1, rk_mpi, MPI_MAX, comm, iError )
retValue = recv
end function tem_getMaxTimerVal