Fortran Coder
标题:
Fortran程序的openmp如何解决同一个变量被多个线程调用
[打印本页]
作者:
12138世界
时间:
2022-8-24 11:18
标题:
Fortran程序的openmp如何解决同一个变量被多个线程调用
Fortran程序的openmp如何解决同一个变量被多个线程调用
作者:
li913
时间:
2022-8-25 09:39
1、为什么要解决,遇到啥问题,你需要说清楚这些。
2、是否需要解决,怎么解决,需要根据具体情况判断。
3、你可以先看看openmp视频
https://www.bilibili.com/video/BV1uA411v776?p=1
作者:
12138世界
时间:
2022-8-25 16:07
在循环调用同一个子函数时,出现无法并行的问题,发现是在子函数中使用了一个程序包FM(Fortran中将一些变量转变为任意精度),这个程序包涉及变化的全局变量,会引起竞争。所以想问这个问题如何解决才能并行
作者:
li913
时间:
2022-8-26 09:48
试试用 critical 指令把FM相关的圈起来。
作者:
12138世界
时间:
2022-8-26 15:11
但是这样不就变成单线程运行,实现不了并行加速啊
作者:
li913
时间:
2022-8-27 14:02
如果FM不支持omp并行,怎么都不行,除非改代码。或者用mpi。
欢迎光临 Fortran Coder (http://bbs.fcode.cn/)
Powered by Discuz! X3.2