並列化のための実用的なソリューションが 1 つあります。ただし、並列化によって実行時間はごくわずかに改善されます。ループ内の変数を新規作成して削除したことが原因だと思います。スタックを作成したいのですが、 Command クラスは抽象的であり、抽象的である必要があります。それを回避するにはどうすればよいですか? これらの非常に長いループに費やされる時間を改善するにはどうすればよいですか???
#pragma omp parallel for reduction(+:functionEvaluation)
for (int i=rowStart;i<rowEnd+1;i++)
{
Model model_(varModel_);
model_.addVariable("i", i);
model_.addVariable("j", 1);
Command* command_ = formulaCommand->duplicate(&model_);
functionEvaluation += command_->execute().toDouble();
delete command_;
}
問題は別のところにあるかもしれません!アドバイス大歓迎!!
ありがとうございます。