Mac OS 遇到 OMP: Error #15: Initializing libiomp5.dylib, but found libiomp5.dylib already initialized.
最近在做圖像對抗用到foolbox, tensorflow, keras 等機器學習模塊。
在jupyter notebook中運行的時候一運行服務器就掛掉重啟。沒有任何錯誤提示。
果斷放棄notebook改在終端上運行。
提示如下錯誤:
OMP: Error #15: Initializing libiomp5.dylib, but found libiomp5.dylib 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/.
Abort trap: 6
1
2
3
大概意思就是初始化libiomp5.dylib時發現已經初始化過了。
經過Google發現這似乎是一個Mac OS 才存在的特殊問題。
解決方法 (允許副本存在):
import os
os.environ['KMP_DUPLICATE_LIB_OK']='True'