Hi,
I was trying to parallel the following code in the following way:
DO 90, J = 1, N
C$OMP Parallel Do Schedule(dynamic,1) Default(shared)
C$OMP+ Private(L,I,TEMP) Reduction(+:C)
DO 80, L = 1, K
IF( B( L, J ).NE.ZERO )THEN
TEMP = ALPHA*B( L, J )
DO 70, I = 1, M
C( I, J ) = C( I, J ) + TEMP*A(I,L)
70 CONTINUE
END IF
80 CONTINUE
C$OMP End Parallel Do
90 CONTINUE
And I tried to compile this by using:
pgf77 -i8 -mp -O2 -tp p7-64 -time -fast -o xgemm.exe xgemm.F -lacml -lpthread -lm -lc
the version of pgf77 is PGI/7.1.6, I have got the following error message:
PGFTN-S-0155-Reduction variable must be a scalar variable - c (xgemm.f: 346)
Does this mean this version of compiler doesn’t support array reduction? If not, which version of pgf77 I can use to compile this code? Or if any of the pgf77 compiler doesn’t support this array reduction, how can I parallel this part (I have to use pgf77 only)? Thank you very much.
Sharp