0

我正在使用 python 并且遇到一个非常奇怪的错误,我似乎在任何地方都找不到。它与 libgomp 库和线程有关。错误是:

libgomp:无法创建线程池析构函数。

奇怪的是,错误发生在一定的时间/过程之后。它不会发生在我的代码的某一行中。我正在运行的代码是一个迭代求解器,因此,我可以通过放宽容差来轻松控制代码运行的时间量。现在,如果我设置容差以使所有内容在 ~9 次迭代(大约 15 秒)中“收敛”,那么代码就可以正常完成。如果我将其增加到 >9,那么我会收到错误消息。这显然不是代码的一部分的问题,因为它每次都发生在不同的部分,并且没有回溯信息。

有任何想法吗?

4

1 回答 1

0

奇怪的。该错误仅在pthread_key_create失败时引发[GCC]/libgomp/team.c:initialize_team,这是一个__attribute__((constructor))函数,仅在 process/libgomp 初始化时调用(一次!)。因此,要么您的进程正在使用 ing libgomp 做“奇怪的事情” dlopen(多次?),要么您在操作系统级别遇到了一些资源短缺/限制。或者,一个 libpthread (glibc) 错误。你能找到任何其他关于pthread_key_create你的操作系统/软件分发失败的报告吗?

于 2015-11-30T09:51:49.770 回答