Parallelization with Hyperplane(Pipelining)
!hpf$ processors Proc(Npe1,Npe2)
!hpf$ distribute(block,block,*) onto Proc::a0,b,r, a1,a2,x,p,q, a3,d
!hpf$ shadow(1:1,1:1,:) :: a1,a2,a3,d,x,p,q
q(i,j,k) = d(i,j,k)*(r(i,j,k)
& - a3(i,j,k)*q(i,j,k-1) )
This simple case can be handled by compiler.
More complecated case: ???