具体报错问题是:
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/.
网上有提供解决解决方法:
加上这句代码
import os
os.environ["KMP_DUPLICATE_LIB_OK"] = "TRUE"
BUT,但是
对我没用,其实上面的原因翻译过来就是:
OpenMP运行时的多个副本已链接到程序中。这很危险,因为它会降低性能或导致错误的结果。最好的做法是确保只有一个OpenMP运行时链接到流程中,例如避免在任何库中静态链接OpenMP运行库
说白了,就是你电脑性能不够,你得降低需求,(对我来说是因为:我双开了两个Pycharm,一个跑模型,另一个想渲染显示医学的3D图像)
哈哈哈,我把我的宝贝电脑折腾的够呛,肯定给你报错呀
解决方法:
- 减少需求,若是模型的,减少Batch_size,或是其他
- 内存性能不够,把其他能关的软件都关了
- 等程序运行完,在跑下一个程序