Autotasking Example: Reduction
original
!ODIR CONCUR
DO J=1,M
DO I=1,N
S=S+A(I,J)
ENDDO
ENDDO
IF (M*N.GT.1666)THEN
CALL R$1(A,N,M,S)
ELSE
...
SUBROUTINE R$1(A,N,M,S)
INTEGER M,N,I,J
REAL A(M,N),S,S1
S1=0
*PDIR PARDO FOR=4
DO J=1,M
DO I=1,N
S1=S1+A(I,J)
ENDDO
ENDDO
*PDIR CRITICAL
S=S+S1
*PDIR END CRITICAL
RETURN
END
!CDIR CONCUR
DO J=1,M
DO I=1,N
S = S + A(I,J)
ENDDO
ENDDO
translation
Vorherige Folie
Nächste Folie
Zurück zur ersten Folie
Graphik-Version anzeigen