program main implicit none integer, parameter :: n=500 real, dimension(n,n,n) :: a, c real :: t1, t2 integer :: dim call random_number(a) do dim=1,3 call cpu_time(t1) c = eoshift(a, -3, dim=dim) call cpu_time(t2) print *,"dim = ", dim, " t = ", t2-t1 end do end program main