Как установить “MKL_THREADING_LAYER=GNU” как переменную среды для сценария Python?

Когда я выполняю a py сценарий там является ошибкой как это

RuntimeError: To use MKL 2018 with Theano you MUST set "MKL_THREADING_LAYER=GNU"
              in your environement.

Я погуглил, почему и в терминале попробовал

export MKL_THREADING_LAYER=GNU

и выполненный снова, но проблема все еще существует. Я хотел проверить, существует ли переменная среды или нет, таким образом, я попробовал

$ env MKL_THREADING_LAYER=GNU
env: ‘MKL_THREADING_LAYER’: No such file or directory

Это означает, что я не получаю среду или что?

Назад к коду исходной ошибки, проблема - это:

File "/home/chen/anaconda2/envs/rllab3/lib/python3.5/site-packages/theano/configdefaults.py", line 1251, in check_mkl_openmp

Это - то, как код библиотеки разработан:

def check_mkl_openmp():
if not theano.config.blas.check_openmp:
    return
import os
if ('MKL_THREADING_LAYER' in os.environ and
        os.environ['MKL_THREADING_LAYER'] == 'GNU'):
    return
try:
    import mkl
    if '2018' in mkl.get_version_string():
        raise RuntimeError('To use MKL 2018 with Theano you MUST set "MKL_THREADING_LAYER=GNU" in your environement.')
except ImportError:
    raise RuntimeError(""" Could not import 'mkl'.  Either install mkl-service with conda or set MKL_THREADING_LAYER=GNU in your environment for MKL 2018.
If you have MKL 2017 install and are not in a conda environment you can set the Theano flag blas.check_openmp to False.  Be warned that if you set this flag and don't set the appropriate environment or make sure you have the right version you *will* get wrong results.
""")

Как я могу установить эту переменную среды и заставить исходный код работать?

3
задан 11 November 2017 в 15:41

4 ответа

У меня была та же ошибка, и я решил ее, просто набрав и выполнив эти команды одну за другой на терминале.

conda install theano
conda install keras

Я думаю, что ошибка означала, что theano не было установлено, в любом случае, это сработало.

0
ответ дан 1 December 2019 в 13:11

Чтобы использовать MKL 2018 с Theano, вы ДОЛЖНЫ установить "MKL_THREADING_LAYER=GNU" в своей среде. Эта команда решит вашу проблему

conda install mkl=2018
0
ответ дан 1 December 2019 в 13:11

Я использовал

conda install mkl=2017

и это работало!

7
ответ дан 1 December 2019 в 13:11

Добавьте эту строку к Вашему ~/.bashrc файл

export MKL_THREADING_LAYER=GNU

затем вновь откройте свой терминал, он будет работать

2
ответ дан 1 December 2019 в 13:11

Другие вопросы по тегам:

Похожие вопросы: