我正在尝试测量openMP程序中的锁争用。我一直在使用OpenMP Profiler(ompP)。对于使用编译器指令表示所有并行化的代码,ompP非常适用。但是,当代码使用运行时例程omp_set_lock()
时,探查器似乎失败了我得到的错误信息是:
export OMPP_DISABLE_LOCKS=yes
在使用gdb运行程序时,我发现错误是在omp_set_lock()命令之后立即触发的。此外,如果我设置环境变量
Document doc = Jsoup.connect(url).timeout(5000).get();
然后我没有收到任何错误。
我还检查了第870行的文件ompp_regstat.c。代码本质上是switch语句,如果并行化不是通过编译器指令,则设计为失败。
这让我提出两个问题: