OpenMP でいくつかのコードを最適化しています。ループで遭遇した場合NO_VALUE
は、ブレークしたいと思います。ただし、コンパイラは、これは openMP では許可されていないことを示しています。どうすればこれを処理できますか?
#pragma omp parallel
{
#pragma omp for reduction(+:functionEvaluation) schedule(dynamic) nowait
for (int j=m_colStart;j<m_colEnd+1;j++)
{
double d = command_->execute().toDouble();
if(d==NO_VALUE)
{
functionEvaluation = NO_VALUE;
break;
}
else
{
functionEvaluation += d;
}
delete command_;
}
}
どうすれば回避できますか?ありがとう!