I wonder what the compiler support for that processor will say about this!
@everythingfunctional , perhaps you will take a look at this thread and this one for the “my_cpu_time” snippet with SYSTEM_CLOCK
:
subroutine my_cpu_time( time )
use, intrinsic :: iso_fortran_env, only : I8 => int64
! Argument list
real(kind=xx), intent(inout) :: time !<-- where xx is the REAL kind of interest
! Local variables
integer(I8) :: tick
integer(I8) :: rate
call system_clock (tick, rate)
time = real(tick, kind=kind(time) ) / real(rate, kind=kind(time) )
return
end subroutine my_cpu_time
It will be interesting to see how NAG Fortran results turn out for the first case involving the dynamic growth of an array shape i.e., whether SYSTEM_CLOCK
works ok with a 64-bit integer kind as rate.
That is, as opposed to your usage of a 128-bit floating point kind which is typically unseen in such C parlance around clock
and its clock_t
type which the NAG transpiler may use behind the scenes and thus it may have inadequate support built-in and validated for the case you presented it.