... | ... | @@ -27,16 +27,19 @@ module kernels |
|
|
! Double Precision -----------------------------------------------------
|
|
|
INTEGER,PARAMETER :: wp = selected_real_kind(12, 307)
|
|
|
contains
|
|
|
subroutine kernel(A,B,C,D,pa,pb,pc,pd,asiz)
|
|
|
integer :: ii,jj
|
|
|
integer :: asiz
|
|
|
real(wp) , allocatable, dimension(:) :: A,B,C,D ! Arrays
|
|
|
subroutine kernel(A,B,C,D,pa,pb,pc,pd,sizex,sizey)
|
|
|
integer :: ii,jj,kk
|
|
|
integer :: sizex,sizey
|
|
|
real(wp) , allocatable, dimension(:,:) :: A,B,C,D ! Arrays
|
|
|
real(wp) :: pa,pb,pc,pd ! Parameters
|
|
|
do ii=1,100
|
|
|
!dir$ vector aligned
|
|
|
do jj=1,asiz
|
|
|
!Simple kernel
|
|
|
a(jj) = pa*(pb+b(jj))+pc+pd*c(jj) ! Line (do not remove this comment )
|
|
|
do kk=1,sizex
|
|
|
!dir$ vector aligned
|
|
|
do jj=1,sizey
|
|
|
!Simple kernel
|
|
|
a(jj,kk) = pa+a(jj,kk)*b(jj,kk)+c(jj,kk)*d(jj,kk)*pb ! Line (do not remove this comment )
|
|
|
end do
|
|
|
end do
|
|
|
end do
|
|
|
end subroutine
|
... | ... | |