如何将“MKL_THREADING_LAYER=GNU”设置为python脚本的环境变量?

Jie*_*hen 3 command-line environment-variables libraries

当我运行py脚本时出现这样的错误

RuntimeError: To use MKL 2018 with Theano you MUST set "MKL_THREADING_LAYER=GNU"
              in your environement.
Run Code Online (Sandbox Code Playgroud)

我用谷歌搜索原因并在终端尝试

export MKL_THREADING_LAYER=GNU
Run Code Online (Sandbox Code Playgroud)

并再次运行,但问题仍然存在。我想检查环境变量是否存在,所以我试过了

$ env MKL_THREADING_LAYER=GNU
env: ‘MKL_THREADING_LAYER’: No such file or directory
Run Code Online (Sandbox Code Playgroud)

这是否意味着我没有得到环境或什么?

回到原来bug的代码,问题是这样的:

File "/home/chen/anaconda2/envs/rllab3/lib/python3.5/site-packages/theano/configdefaults.py", line 1251, in check_mkl_openmp
Run Code Online (Sandbox Code Playgroud)

库的代码是这样设计的:

RuntimeError: To use MKL 2018 with Theano you MUST set "MKL_THREADING_LAYER=GNU"
              in your environement.
Run Code Online (Sandbox Code Playgroud)

如何设置此环境变量并使原始代码工作?

小智 7

我用了

conda install mkl=2017
Run Code Online (Sandbox Code Playgroud)

它奏效了!