入れ子とバインドの規則 (TU*X のみ)

本項では,OpenMP Fortran API 指示文の動的な入れ子とバインドの規則について説明します。

バインドの規則

動的なバインドには,以下の規則が適用されます。

入れ子の規則

動的な入れ子には,以下の規則が適用されます。

次の例は,入れ子にされた PARALLEL 領域を示しています。

	c$OMP PARALLEL DEFAULT(SHARED)
	c$OMP DO
	      DO I =1, N
	c$OMP PARALLEL SHARED(I,N)
	c$OMP DO
	        DO J =1, N
	          CALL WORK(I,J)
	        END DO
	c$OMP END PARALLEL
	      END DO
	c$OMP END PARALLEL

内側と外側の DO 指示文が異なる PARALLEL 領域にバインドされていることに注意してください。

次の例は,上の例のバリエーションを示しています。

	c$OMP PARALLEL DEFAULT(SHARED)
	c$OMP DO
	        DO I =1, N
	          CALL SOME_WORK(I,N)
	        END DO
	c$OMP END PARALLEL
	      ...
	      SUBROUTINE SOME_WORK(I,N)
	c$OMP PARALLEL DEFAULT(SHARED)
	c$OMP DO
	        DO J =1, N
	          CALL WORK(I,J)
	        END DO
	c$OMP END PARALLEL
	      RETURN
	      END