我想执行一些应用程序平行使用sse指令和openmp。 关于的openmp部分我有这样的代码:OpenMP划分循环通过核心
for(r=0; r<end_condition; r++){
.. several nested for loops inside ..
}
我想要分割该环R上在多个核,例如使用两个核心当一个核心应该执行使r = 0 .. R = end_condition/2 -1,另一个r = end_condition/2 .. r = end_condition-1。循环迭代之间没有任何通信,所以它们可以并行运行,在循环结束时应该同步结果。
我怎样才能使用openmp指令以这种方式在内核上分配这个内核呢?我是否必须在r上展开循环并使用openmp部分?
在此先感谢
通过告诉OpenMP为循环使用静态计划可能会鼓励分解,但这可能不会有帮助。 – Novelocrat