之间的行动所以,我大致有这样的代码:OpenMP;嵌套循环
for (int i = 0; i != 10000; ++i) {
doAction(i);
for (int j = 0; j != 10000; ++j) {
...
}
}
而且我想使用OpenMP来parallellize它。据我所知,在这种情况下,一个简单的collapse
不会做;我尝试使用单独的#pragma omp for
也没有结果。有没有简单的方法来轻松地并行化,或者我不得不求助于doAction
i*j
次?
如何更换!= by <? – tim18
@ tim18那应该做什么?我一直认为它们在这方面是等同的。另外,我不明白这与问题 – Akiiino
的嵌套循环部分相关** [A]:**您是否考虑调用一个'doAction(i);'函数来表示*(cit )“在**嵌套循环之间的动作**”*? ** [B]:**您是如何认识到'doAction(i)'代码被称为**'i * j' **倍的? ** [C]:**在'...'里面的实际处理是什么? MCVE代码应该代表一个可重复的例子。如何验证这样的代码,而没有机会确认/拒绝安排一个“只”的可能性 - **'[CONCURRENT]'**或者真正的** ** [PARALLEL] **代码执行,一块MCVE代码实际上是缺少的? – user3666197