我有一个使用Fortran 95和gfortran编译器的代码。我也在使用OpenMP,我必须处理非常大的数组。在我的代码中,我还必须使用OpenBLAS的求解器DGTSV来求解线性方程组。我也想使用openblas并行化这个求解器,它应该能够做到这一点。但是我在语法上有问题。使用附带的伪代码,所有4个CPU几乎100%使用,但我不确定是每个内核分别求解线性方程,还是将其分成多个部分并并行计算。$OMP END PA
thread join看起来像是在std::thread join中遇到了竞争条件,可能还遇到了OpenMP中的竞争条件。第二件有趣的事情是,这个任务永远不会完成,当我在调试器中查看正在执行该任务的线程时,它位于OpenMP并行执行的末尾。我没有看到任何其他线程执行并行工作。有许多来自vcomp140的线程 D .dll坐在ntdll.dll代码中,我没有它的符号--我认为它们只是在等待新的工作,而