问题标签 [libgomp]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c - libgomp:线程创建失败:资源暂时不可用 OpenMP 并行合并排序
我是 OpenMP 的新手。我试图实现合并排序的并行版本。我的串行实现的代码与此相同,但我没有使用 parallelMergeSort 函数。我的并行实现如下:
我在 parallelMergeSort 函数中有错误,因为printf("\n--------------\n");
已打印。错误是标题中的错误:libgomp: Thread creation failed: Resource temporarily unavailable
。我不知道错误在哪里。我尝试按照以下示例实现:OpenMP 中的并行合并排序
我不认为这是资源问题,因为简单的程序可以工作。显然我在那个函数中犯了一些错误......
编辑:如果我使用 2 个或 3 个或 4 个线程等,都会发生这种情况。
编辑:如果我使用 OMP_DISPLAY_ENV=TRUE
编辑:
这是最后一个代码。如果我写 level=8 它可以工作,但是如果我写例如 level=0 或 level=1 数组将不会被排序。编辑:如果我在代码中写了与 8 不同的东西,我有Segmentation error
. 特别是如果我增加数组的随机元素的数量。还有1000个级别= 8的元素我有这个分割错误
gcc - 将 GCC 构建的目标文件与 LLVM 和 OpenMP 链接
我的情况是,我必须将一些使用 GCC 构建的目标文件链接到我基于 LLVM 的应用程序。问题是应用程序依赖于 LLVM 的 OpenMP 库,而 GCC 对象引用了 GCC 的 OpenMP。因此,我收到了链接器错误。该命令相当复杂,但归结为以下内容:
上述函数在 LLVM 的 OpenMP 库中不可用,但在 GNU OpenMP 库中。
即使我使用 GCC 作为链接器,是否有某种方法可以使这项工作?最终目标是消除对 GCC 的 OpenMP 库的依赖并改用 LLVM。