Hi
I'm writing a Fortran-Program with Open-MP.
!$OMP PARALLEL !$OMP DO PRIVATE(j) DO I=1,10 j = aIndex(I) ... VALUES(j) = ... END DO !$OMP END DO !$OMP END PARALLEL
The compiler refuses to parallelize this:
OpenMP Construct at file.for(2255,7) remark #16201: OpenMP DEFINED REGION WAS PARALLELIZED ... LOOP BEGIN at file.for(2258,7) remark #17104: loop was not parallelized: existence of parallel dependence remark #15300: LOOP WAS VECTORIZED LOOP END
Actually I *do* know, that aIndex contains only different indexes. Therefore the loop *can* be parallelized.
Is there any way to overrule the compiler? In OpenACC for example I could write
!$acc loop independent private(j)
Thanks
Benedikt