Моя консоль ipython в Spyder (Anaconda) не выбирает правильные переменные окружения PATH системы Windows

1

Прежде всего, сама оригинальная проблема возникла из-за попытки установки графического процессора Tensorflow.

Для начала я сначала установил все зависимые пакеты (драйвер графического процессора Nvidia, CUDA, cudnn и т.д.), Новый пакет Anaconda и tenorflow-gpu. До сих пор все было хорошо.

Затем я запустил Spyden IDE и попытался запустить 'import tenorflow' в ipython. Затем я получил эту ошибку:

Traceback (most recent call last):

  File "<ipython-input-1-d6579f534729>", line 1, in <module>
    import tensorflow

  File "C:\Users\zhengxin\Anaconda3\lib\site-packages\tensorflow\__init__.py", line 24, in <module>
    from tensorflow.python import pywrap_tensorflow  # pylint: disable=unused-import

  File "C:\Users\zhengxin\Anaconda3\lib\site-packages\tensorflow\python\__init__.py", line 49, in <module>
    from tensorflow.python import pywrap_tensorflow

  File "C:\Users\zhengxin\Anaconda3\lib\site-packages\tensorflow\python\pywrap_tensorflow.py", line 74, in <module>
    raise ImportError(msg)

ImportError: Traceback (most recent call last):
  File "C:\Users\zhengxin\Anaconda3\lib\site-packages\tensorflow\python\pywrap_tensorflow.py", line 58, in <module>
    from tensorflow.python.pywrap_tensorflow_internal import *
  File "C:\Users\zhengxin\Anaconda3\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 28, in <module>
    _pywrap_tensorflow_internal = swig_import_helper()
  File "C:\Users\zhengxin\Anaconda3\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 24, in swig_import_helper
    _mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description)
  File "C:\Users\zhengxin\Anaconda3\lib\imp.py", line 243, in load_module
    return load_dynamic(name, filename, file)
  File "C:\Users\zhengxin\Anaconda3\lib\imp.py", line 343, in load_dynamic
    return _load(spec)
ImportError: DLL load failed: The specified module could not be found.


Failed to load the native TensorFlow runtime.

See https://www.tensorflow.org/install/errors

for some common reasons and solutions.  Include the entire stack trace
above this error message when asking for help.

Затем я провел много исследований и выяснил, что наиболее вероятной причиной этой ошибки является то, что следующие два пути НЕ относятся к переменной среды PATH, отображаемой в Spyder (ipython).

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0\bin
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0\libnvvp

Самое странное, эти два пути существуют в моей переменной среды PATH.

Итак, наконец, мой вопрос: почему Spyder/ipython/anaconda не собирает переменные среды PATH Windows?

  • 0
    Пара уместных вопросов, если можно: (1) на терминале Anaconda Prompt, как отобразить переменные среды PATH, которые используются этим терминалом; (2) Можно ли редактировать переменные среды PATH, используемые текущим сеансом терминала? (3) Можно ли редактировать переменные среды PATH, используемые текущим сеансом Spyder / ipython?
  • 0
    На самом деле, я только что узнал, что если я выполню «import os», а затем распечатаю содержимое «os.environ [« PATH »]», я не смогу найти и эти два пути. Разве os.environ ["PATH"] не должно показывать переменную среды PATH системы Windows?
Теги:
tensorflow
spyder
anaconda
ipython

1 ответ

0

Хорошо, я сам решил эту проблему.

Тот факт, что переменные среды PATH отсутствуют, является реальной вещью, но на самом деле это всего лишь симптом неправильной настройки зависимостей tensorflow-gpu.

В конечном счете, проблема связана с установкой CUDA 10.0 и сопровождающей ее cuDNN. Версия 10.0 была последней версией на веб-сайте NVIDIA, и это была такая естественная ошибка для людей! Во всяком случае, я затем прочитал заметку о выпуске как CUDA, так и TensorFlow, и решил, что я должен был установить CUDA 9.0 вместо этого. И это сработало!

Самое удивительное и странное, как только я установил CUDA 9.0, все переменные окружения внезапно стали правильными! т.е. переменные среды пути для всех этих четырех каталогов внезапно все, как по волшебству, появляются в моих переменных PATH ipython/anaconda/spyder!

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\bin
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\libnvvp
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0\bin
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0\libnvvp

Ещё вопросы

Сообщество Overcoder
Наверх
Меню