OpenMP中的OMP关键

时间:2015-12-18 05:01:49

标签: fortran openmp

这对FORTRAN意味着什么?

C$OMP CRITICAL (UNNAMED)

C$OMP END CRITICAL (UNNAMED)

没有C的行是否意味着这是评论?但显然当我删除这一行时,它不起作用。这是怎么回事?

1 个答案:

答案 0 :(得分:1)

这是Fortran中的OpenMP指令,特别是固定格式。在您的情况下,该部分称为UNNAMED。引用documentation,关键部分

  

指定一次只能由一个线程执行的代码区域。

对于固定格式的Fortran,OpenMP指令以C$OMP为前缀,自由格式为!$OMP。 与Fortran中的所有编译器指令一样,如果编译器不理解它们,则需要将OpenMP指令实现为注释。

关键部分通常用于避免死锁或竞争条件。这可能就是这种情况,因为如果删除指令,代码就会中断。