![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
OpenMP
chnyac
chnyac
展开
-
OpemMP:包含隐式数据同步的指导语句(Fortran)
以下语句包含隐式数据同步!$OMP BARRIER!$OMP CRITICAL + !$OMP END CRITICAL!$OMP END DO!$OMP END SECTIONS!$OMP END SINGLE!$OMP END WORKSHARE!$OMP ORDERED + !$OMP END ORDERED!$OMP PARALLEL + !$OMP END...原创 2019-03-30 16:48:58 · 352 阅读 · 0 评论 -
OpenMP:基本制导指令(Fortran)
常用制导语句!设置线程数!$OMP PARALLEL NUM_THREADS(64)!并行区域!$OMP END PARALLEL!对do/for循环并行化!$OMP DO!并行区域!$OMP END DO!对多个没有依赖关系(没有顺序因果关系)的代码块并行化!$OMP SECTIONS!$OMP section!并行代码1(与代码2、代码3同时执行)...原创 2019-03-30 18:49:55 · 1458 阅读 · 0 评论 -
OpenMP:常见规则(Fortran)
作用域静态扩展 文本代码在一个编译制导语句之后,被封装到一个结构块中 孤立语句 一个OpenMP的编译制导语句不依赖于其他的语句 动态扩展 包括静态范围和孤立语句 绑定规则Do/for、Sections、Single、Master 和 Barrier 需要在并行域中使用,否则无效(并行域如Parallel中的代码块部分); Ordered 绑定到动态 Do/For ...原创 2019-03-30 19:48:38 · 1393 阅读 · 0 评论 -
OpenMP:隐式包含Flush的语句(Fortran)
隐式包含Flush的语句Barrier Critical + End Critical End Do End Sections End Single Ordered + End Ordered End Parallelnowait 子句除外原创 2019-03-30 20:13:33 · 840 阅读 · 0 评论 -
OpenMP:制导指令子句
NoWait不需要所有线程同时结束工作,且接下来的操作不依赖于之前的结果可使用 NoWait 避免隐式同步;ThreadPrivate声明的变量必须在Common中,若未在Common声明,则须有save属性。!$OMP THREADPRIVATE指令必须紧跟变量声明,且在主程序之前:real(8), save :: a!$OMP , THREADPRIVATE(a)!$OMP ...原创 2019-03-30 21:45:43 · 458 阅读 · 0 评论