Files
spbt/timers_sp.for
2025-05-06 22:04:43 +03:00

87 lines
2.8 KiB
Fortran

! *** generated by SAPFOR with version 2415 and build date: May 4 2025 14:48:40
! *** Enabled options ***:
! *** maximum shadow width is 50 percent
! *** generated by SAPFOR
!---------------------------------------------------------------------
!---------------------------------------------------------------------
subroutine timer_clear_sp (n)
!---------------------------------------------------------------------
!---------------------------------------------------------------------
implicit none
integer :: n
double precision :: start(64),elapsed(64)
common /tt/start,elapsed
elapsed(n) = 0.0
return
end
!---------------------------------------------------------------------
!---------------------------------------------------------------------
subroutine timer_start_sp (n)
!---------------------------------------------------------------------
!---------------------------------------------------------------------
implicit none
external elapsed_time_sp
double precision :: elapsed_time_sp
integer :: n
double precision :: start(64),elapsed(64)
common /tt/start,elapsed
start(n) = elapsed_time_sp ()
return
end
!---------------------------------------------------------------------
!---------------------------------------------------------------------
subroutine timer_stop_sp (n)
!---------------------------------------------------------------------
!---------------------------------------------------------------------
implicit none
external elapsed_time_sp
double precision :: elapsed_time_sp
integer :: n
double precision :: start(64),elapsed(64)
common /tt/start,elapsed
double precision :: t,now
now = elapsed_time_sp ()
t = now - start(n)
elapsed(n) = elapsed(n) + t
return
end
!---------------------------------------------------------------------
!---------------------------------------------------------------------
double precision function timer_read_sp (n)
!---------------------------------------------------------------------
!---------------------------------------------------------------------
implicit none
integer :: n
double precision :: start(64),elapsed(64)
common /tt/start,elapsed
timer_read_sp = elapsed(n)
return
end
!---------------------------------------------------------------------
!---------------------------------------------------------------------
double precision function elapsed_time_sp ()
!---------------------------------------------------------------------
!---------------------------------------------------------------------
implicit none
double precision :: t,dvtime
t = dvtime ()
elapsed_time_sp = t
return
end