Hi,
I added the commands and i see that all processors are working but the program is much slower. How can i detect bootlenick. Thanks, is there a phone number i can call you at to discuss it more. Thanks again,
Yasser
You might start with something like the following:
!$omp parallel
!$omp do private(i,j)
do i=nx1+1,nx2-2
do j=ny1+2,ny2-2
“stuff1”
enddo
enddo
!$omp end do nowait
!$omp do private(i,j)
do i=nx1+2,nx2-2
do j=ny1+1,ny2-2
“stuff2”
enddo
enddo
!$omp end do nowait
!$omp end parallel
Note, depending on what is inside of stuff1 and stuff2 you may need to use different temporaries (or make subroutines out of stuff1 and stuff2 and passing i and j into the routines.
Also, if the computation overhead varies per iteration then experiment with adding the schedule clause.
Once you get the above working for stuff1 and stuff2 apply what you learned to the remaining stuff sections.
Jim Dempsey