解决 OMP: Error #15: Initializing libiomp5md.dll, but found libiomp5md.dll already initialized问题

文章目录

  • 前言`
  • 原因分析


前言`

今天调试代码,遇到了这样的问题:

OMP: Error #15: Initializing libiomp5md.dll, but found libiomp5md.dll already initialized.
OMP: Hint This means that multiple copies of the OpenMP runtime have been linked into the program. That is dangerous, since it can degrade performance or cause incorrect results. The best thing to do is to ensure that only a single OpenMP runtime is linked into the process, e.g. by avoiding static linking of the OpenMP runtime in any library. As an unsafe, unsupported, undocumented workaround you can set the environment variable KMP_DUPLICATE_LIB_OK=TRUE to allow the program to continue to execute, but that may cause crashes or silently produce incorrect results. For more information, please see http://www.intel.com/software/products/support/.

我去翻译了一下:

OMP:错误#15:初始化libiomp5md.dll,但发现libiomp5md.dll已经初始化。
OMP:提示这意味着OpenMP运行时的多个副本已经链接到程序中。这是危险的,因为它会降低性能或导致不正确的结果。最好的做法是确保只有一个OpenMP运行时链接到进程中,例如避免在任何库中静态链接OpenMP运行时。作为一种不安全、不受支持、无文档记录的解决方案,您可以设置环境变量KMP_DUPLICATE_LIB_OK=TRUE,以允许程序继续执行,但这可能会导致崩溃或悄悄地产生不正确的结果。欲了解更多信息,请参见http://www.intel.com/software/products/support/。

原因分析

我在conda里边有很多个环境
在这里插入图片描述
后来发现环境太多也不是个好事,报错后我索性直接用最初的conda提供的base解释器,然后在
E:\Anaconda\anacanda3文件夹下搜索发现有很多个libiomp5md.dll
我没有管pkgs中的一些老的该dll文件。
我删除了
E:\Anaconda\anacanda3\Library\bin下的这个dll文件。
接着我去继续调试,发现不再报错

你可能感兴趣的:(python)