program simd use util !DIR$ attributes align : 64 :: s,a,b,c,d double precision, pointer, dimension(:) :: s, a, b, c, d double precision, pointer, dimension(:) :: bptr integer :: i, size size = 1024*1024 allocate(s(size), a(size), b(size), c(size), d(size)) !a = 1.0 !b = 2.0 !c = 3.0 !d = 4.0 do i = 1, size s(i) = a(i) + b(i) + c(i) + d(i) end do end program