【发布时间】:2014-09-22 18:37:36
【问题描述】:
我有一个 Fortran 代码。代码包含两个循环。我想并行化 ONLY 内部循环。这是我的代码:
!$OMP PARALLEL PRIVATE(i,j)
do i=1, N
!$OMP PARALLEL DO
do j=1, M
! do some calculations
end do
!$OMP END PARALLEL DO
end do
!$OMP END PARALLEL
并行化是否正确?我不确定,是否需要将!$OMP PARALLEL PRIVATE(i,j)放在开头?我应该省略它并在第二个循环之前只声明 PRIVATE(i) 吗?无论如何,我有点困惑,请解释什么是正确的行为。
【问题讨论】:
标签: for-loop parallel-processing fortran openmp