OpenMP 中的 OMP 关键
OMP CRITICAL in OpenMP
这在 FORTRAN 中是什么意思?
C$OMP CRITICAL (UNNAMED)
和
C$OMP END CRITICAL (UNNAMED)
C
那一行不是表示注释吗?但显然当我删除这条线时,它不起作用。这是怎么回事?
这是 Fortran 中的 OpenMP 指令,特别是固定形式。在您的例子中,该部分称为 UNNAMED
。引用自documentation,临界区
specifies a region of code that must be executed by only one thread at a time.
对于固定格式的 Fortran,OpenMP 指令以 C$OMP
为前缀,对于自由格式则为 !$OMP
。
与 Fortran 中的所有编译器指令一样,OpenMP 指令需要作为注释来实现,以防您的编译器不理解它们。
临界区通常用于避免死锁或竞争条件。这可能就是这种情况,因为如果您删除指令,您的代码就会中断。
这在 FORTRAN 中是什么意思?
C$OMP CRITICAL (UNNAMED)
和
C$OMP END CRITICAL (UNNAMED)
C
那一行不是表示注释吗?但显然当我删除这条线时,它不起作用。这是怎么回事?
这是 Fortran 中的 OpenMP 指令,特别是固定形式。在您的例子中,该部分称为 UNNAMED
。引用自documentation,临界区
specifies a region of code that must be executed by only one thread at a time.
对于固定格式的 Fortran,OpenMP 指令以 C$OMP
为前缀,对于自由格式则为 !$OMP
。
与 Fortran 中的所有编译器指令一样,OpenMP 指令需要作为注释来实现,以防您的编译器不理解它们。
临界区通常用于避免死锁或竞争条件。这可能就是这种情况,因为如果您删除指令,您的代码就会中断。