我正在研究OpenMP fortran。 我有关于日程安排的问题。
所以从这两个选项中哪个会有更好的表现?
!$OMP PARALLEL DO PRIVATE(j) SCHEDULE(STATIC)
do j=1,l
call dgemm("N","N",..)
end do
!$OMP END PARALLEL DO
!$OMP PARALLEL DO PRIVATE(j)
do j=1,l
call dgemm("N","N",..)
end do
!$OMP END PARALLEL DO
答案 0 :(得分:0)
OpenMP定义了三个调度子句:静态,动态和引导。
默认调度是独立于实现的(未在标准中指定)。因此,对于您的问题,根据编译器,它可能不会改变任何内容(如果默认实现是静态)。如果它发生了变化,会发生以下情况: