program main implicit none integer, volatile, dimension(1) :: n real, allocatable :: a(:) integer :: i real :: t1, t2 allocate (a(100)) call random_number(a) ! negligible time !call cpu_time(t1) do i=1, 10000000 n = minloc(a, dim=1) end do !call cpu_time(t2) print *, n !, t2-t1 end program main