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

问题

pytorch代码报如下错误:
在这里插入图片描述

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:初始化libomp5md.dll,但发现libomp5mD.dll已初始化。

OMP:提示这意味着OpenMP运行时的多个副本已链接到程序中。这很危险,因为它会降低性能或导致错误的结果。最好的做法是确保只有一个OpenMP运行时链接到流程中,例如避免在任何库中静态链接OpenMP运行库。作为一种不安全、不受支持、未记录的解决方法,您可以将环境变量KMP_DUPLICATE_LIB_OK=TRUE设置为允许程序继续执行,但这可能会导致崩溃或无声地产生错误结果。有关详细信息,请参阅http://www.intel.com/software/products/support/.

原因

anaconda的环境下存在多个libiomp5md.dll文件。

解决

1、删除部分libiomp5md.dll文件

但是有可能误删,最好进行备份再删除,备份好文件并备份路径

2、设置允许副本存在

在代码中添加如下代码,可能需要添加在多个文件中,同时注意不要在这两个语句之间插入其他语句

import os
os.environ['KMP_DUPLICATE_LIB_OK'] = 'TRUE'

你可能感兴趣的:(bug解决,python,深度学习)