Cuda tensorflow windows install

Install TensorFlow-GPU + CUDA in Windows 10, with easy to follow instructions.

Installing CUDA and TensorFlow-GPU can be a very challenging task, in this article I will show to install it in a few simple steps.

Before getting started with this installation we need to make sure that your graphics card is CUDA enabled. If it is not then using GOOGLE COLLAB can be a great alternative.Check if your Graphics card is CUDA enabled( link), scroll down and click on CUDA enabled Ge-force and Titan Products. Search for your graphics card from the list.

If you don’t know your graphics card specs:

  1. Go to Desktop
  2. Right Click and Select NVIDIA Control Panel
  3. Click Help and Select System Information from the drop down
  4. Under Items you can view your graphics card version.

Check the latest version of CUDA supported by TensorFlow. Click on this link . Scroll down to Software Requirements to check for the latest supported build.

Here CUDA 10.1 and cuDNN SDK 7.6 are the latest supported version by TensorFlow, you can ignore the rest of the things for now.

Okay now that we know what we have to install we first need to clean our system of any NVIDIA programs. That means removing all installation of NVIDIA from our system.

  1. Go to My Computer/C Drive/Program Files and remove all files having the name NVIDIA.

2. Again Go to My Computer/C Drive/Program Files(x86) and do the same thing remove all files having the name NVIDIA.

After removing all the files from your System perform a reboot.

Now Lets Download all the required software

  1. The First thing we need to download is Visual Studio, as it is a prerequisite for CUDA installation and without this our installation will fail. Go to this linkand download the latest Visual Studio Community Edition. Just follow the default installation settings until you reach Step 4(Choosing Workloads) don’t select any workload and just click on Install.
  2. Next we need to download CUDA Toolkit(link ). Recall the CUDA Toolkit Version from the TensorFlow Software Requirements(the latest supported build during the time of writing this article is 10.1, but if any new supported build is mentioned on the TensorFlow website go ahead and select it).

Select your Operating System( I have selected mine as Windows)

off99555 / install-tensorflow-gpu-windows.md

Follow this guide to install TensorFlow GPU on Windows (without the need to manually install CUDA Toolkit): https://www.pugetsystems.com/labs/hpc/How-to-Install-TensorFlow-with-GPU-Support-on-Windows-10-Without-Installing-CUDA-UPDATED-1419 CUDA will be installed for you automatically using Anaconda.

Or just follow the Fast Instructions I wrote below.

If you want to install CUDA toolkit on your own, or if you want to install the latest tensorflow version, then you need to follow official installation guide.

Go download and install Anaconda (with built-in python) from Google. (I know you can do it!) Then create a new conda environment using the following command:

It will create a new environment tf-gpu with anaconda scientific packages (python, flask, numpy, pandas, spyder, pytest, h5py, jupyterlab, etc) and tensorflow-gpu.

Tensorflow is now installed. Open a new command prompt and type

You will see it is reporting tensorflow version. That’s it!

Just make sure to always activate the environment using conda before calling any command. conda activate tf-gpu Otherwise you will not be able to import tensorflow in your python code.

Jupyter Notebook/Lab integration

If you are working with Jupyter Notebook or Jupyter Lab, there are extra steps you need to do after installation of tensorflow.

Create tensorflow-gpu kernel for Jupyter Notebook using following commands:

If you have installed wrong ipykernel, you can remove it using jupyter kernelspec uninstall THE_KERNEL_TO_REMOVE where THE_KERNEL_TO_REMOVE can be found from jupyter kernelspec list

Now when you launch your jupyter notebook or jupyter lab you will find that you can change your python kernel to TensorFlow-GPU on the top right.

  • Check https://anaconda.org/search?q=tensorflow-gpu for the channel that released the latest version of tensorflow-gpu . Suppose anaconda provided the latest version, you can run conda install -c anaconda tensorflow-gpu to install from anaconda channel.
  • Make sure that when you run python kernel inside Jupyter Lab/Notebook, only one instance of Tab is run at a time. Otherwise multiple tabs will try to access the GPU at the same time and cause deadlock problem (the program will freeze).
  • If you cannot install a particular package using conda , just use pip .
  • Right now, the latest version of tensorflow-gpu provided by Anaconda is 1.14. If you want to use tensorflow2.0 then you need to check the official installation guide, and manually install CUDA toolkit. Personally, I install both tensorflow1.14-gpu and tensorflow2.0-gpu in separate environments. (some old programs from tensorflow requires tensorflow 1) I also install tensorflow2.0 (CPU version) at the base environment for inference tasks.
  • I suggest you to stick with either pip install or conda install for each environment as it could cause dependency conflict if you use them interchangeably often.
  • ImportError: Could not find ‘cudart64_100.dll’. TensorFlow requires that this DLL be installed in a directory that is named in your %PATH% environment variable. Download and install CUDA 10.0 from this URL: https://developer.nvidia.com/cuda-90-download-archive , fixed by activating tf-gpu environment before launching Jupyter Notebook.
Читайте также:  Vmware для запуска linux

I got about 20x speedup using GTX 1060 GPU compared to my CPU i7-3770 @ 3.4GHz 3.9GHz. The GPU utilization was around 40%. The neural network architecture plays a very big part on how much speed you will gain. If your network is too small you won’t gain any speedup. I tried with the simple MNIST model example on TensorFlow tutorial and the GPU runs roughly at the same speed as the CPU. That mistake made me thought that I installed GPU version incorrectly until I try LeNet-5 model and saw 20 times speedup.

To reproduce my result and make sure that your GPU is really working, run test_mnist_lenet5.py attached below for this benchmark. Uncomment os.environ[‘CUDA_VISIBLE_DEVICES’] = ‘-1’ to use CPU. Or just activate the environment with tensorflow CPU.

You should see significant speedup.

Make sure to checkout tensorflow/models repo on the tag that match your tensorflow version. E.g. if you install tensorflow 1.13 then use models at tag v1.13.0. If you checkout the master branch you might experience problem that the code does not run on GPU like I did.

I got around 6,000 examples/sec using GTX 1060 while only around 270 examples/sec using CPU i7-3770 (not compiled from source to use AVX instruction).

My Opinionated Advice from Experience

  • Use Anaconda, instead of a combination of python , virtualenv , pyenv , and pipenv . It’s one simple program that roughly does everything those 4 things do. It allows you to setup multiple python versions in your system similar to pyenv . It allows you to setup multiple environment like virtualenv and pyenv . Most of all, it eliminates your headache.
  • Installing tensorflow without CUDA is just for getting started quickly. But after you want to get serious with tensorflow, you should install CUDA yourself so that multiple tensorflow environments can reuse the same CUDA installation and it allows you to install latest tensorflow version like tensorflow 2.0. Currently, the latest tensorflow GPU version on Anaconda is only 1.14.
  • Depends on your need you might need to install multiple tensorflow environments. For me I install tensorflow1 CPU, tensorflow1 GPU, tensorflow2 CPU, and tensorflow2 GPU on 4 separate environments. ( tf1-cpu , tf1-gpu , tf2-cpu , tf2-gpu )
  • Install tensorflow 2 CPU (not GPU) on the base environment, so that it is quick to experiment a small model or test inference on CPU. TensorFlow GPU initializes slowly so it can be annoying when you want to test something quick.

Most important advice

Always install all packages again inside the new environment even if you can still access the package from the base environment. For example, if you install a new environment tf-gpu , you will be able to reuse the python.exe from base environment. But this will likely cause problem later. So make sure that you install python again on the tf-gpu . (You can simply install anaconda package so that it install python and other related packages in one command)

This advice applies to other packages like numpy , opencv-python , pandas , scikit-learn , spyder , jupyter , jupyterlab , etc as well! If you are using Spyder or Jupyter Notebook as your main IDE, it’s very important that you install them on every environment you want to use the IDE. Because these IDE will be able to access the packages inside the same environment only. It will be quite troublesome to try to install one IDE instance and reuse it on all environments. (I tried)

You can check the location of the package that you have installed using where command e.g. where python , where jupyter , etc. This will allow you to check if you have installed things correctly when you are faced with bugs.

This approach consumes more disk space but it will reduce your headache. If you don’t have enough disk space, buy a new one or remove some of your junk files.

Установка Tensorflow с поддержкой CUDA, cuDNN и GPU в Windows 10

Дата публикации Apr 3, 2019

ВЧасть 1В этой серии я рассказал о том, как вы можете модернизировать аппаратное обеспечение своего ПК, добавив в него видеокарту, совместимую с CUDA Toolkit, например графический процессор Nvidia. В этой части 2 рассматривается установка CUDA, cuDNN и Tensorflow в Windows 10. В данной статье предполагается, что на вашем компьютере уже установлен CUDA-совместимый графический процессор; но если у вас этого еще нет,Часть 1из этой серии поможет вам настроить аппаратное обеспечение, готовое к этим шагам.

Шаг 1: Проверьте программное обеспечение, которое вам нужно установить

Предполагая, что Windows уже установлена ​​на вашем ПК, дополнительные части программного обеспечения, которые вы установите в рамках этих шагов: —

  • Microsoft Visual Studio
  • инструментарий NVIDIA CUDA
  • NVIDIA cuDNN
  • питон
  • Tensorflow (с поддержкой GPU)

Шаг 2: Загрузите Visual Studio Express

Visual Studio является обязательным условием для CUDA Toolkit

Visual Studio требуется для установки Nvidia CUDA Toolkit (это обязательное условиеВот). Если вы попытаетесь загрузить и установить CUDA Toolkit для Windows без предварительной установки Visual Studio, вы получите сообщение, показанное на рис. 1.

Читайте также:  При загрузке windows проверка ошибок

Выбор и загрузка Visual Studio Express

На момент написания этой статьи самой последней версией Visual Studio (которая является бесплатной) является Visual Studio Express Community Version 2017, показанная на рис. 2. Предыдущие версии Visual Studio можно бесплатно получить, присоединившись к «Visual Studio Dev Essentials”И затем ищите нужную версию Visual Studio.

Установка Visual Studio Express

После того, как вы загрузили Visual Studio Express, его установка проста. На рис. 3 показан исполняемый файл, который вы получаете в качестве загрузки.

Когда вы нажимаете опцию «сохранить файл» на рис. 3, появляется окно на рис. 4, где вы можете установить параметры установки (или просто оставить их, как они есть по умолчанию, как я).

Во время установки Visual Studio предложит вам whetherхочу продолжить без нагрузки». Я нажал «продолжить», поскольку не собирался использовать рабочие нагрузки вообще.

Может потребоваться перезагрузка компьютера после установки Visual Studiod

После установки Visual Studio я сразу перешел к загрузке и попытке установить CUDA Toolkit для Windows — этот шагШаг 3который я буду описывать дальше. Я получил сообщение, чтоVisual Studio все еще работала и препятствовала установке CUDA Toolkit, Перезагрузка моего компьютера перед попыткой установки CUDA Toolkit снова решила эту проблему.

Шаг 3: Загрузите CUDA Toolkit для Windows 10

Эти шаги установки CUDA основаны наРуководство по установке Nvidia CUDA для Windows, Набор инструментов CUDA (бесплатный) можно загрузить с веб-сайта NvidiaВот,

На момент написания по умолчанию предлагается версия CUDA Toolkit версии 10.0, как показано на рис. 6. Однако вам следует проверить, какую версию CUDA Toolkit вы выбрали для загрузки и установки, чтобы обеспечить совместимость с Tensorflow (в будущемШаг 7этого процесса). Когда вы идете наВеб-сайт Tensorflow, последняя доступная версия Tensorflow (1.12.0) требуетCUDA 9.0не CUDA 10.0. Чтобы найти CUDA 9.0, вам нужно перейти к «Legacy Releases» в нижней правой части рисунка 6.

Шаг 3.1: Загрузка CUDA 9.0 из архива инструментария CUDA

Выбрав «Legacy Releases», вы попадете в архив CUDA Toolkit. На основеУстановка TensorflowВ соответствии с указаниями, требуемая версия CUDA — 9.0, как показано на Рис. 7.

Шаг 3.2: Установка CUDA 9.0

CUDA 9.0 поставляется как базовая установка и четыре патча; Сначала необходимо установить базовую версию CUDA 9.0, а затем патчи. Варианты базовой установки, которые я выбрал, показаны на рис. 8.

Запуск только что загруженного базового установщика приведет к появлению окна CUDA Setup Package, как показано на рисунке 9.

Программа установки CUDA извлекает данные на ваш компьютер, и после завершения начнется установка NVIDIA CUDA Toolkit; вы получите сообщение об этом Полученные окна установщика NVIDIA на протяжении всего процесса установки показаны на Рис. 10 — Рис. 13. Я выбрал вариант быстрой установки (Рис. 10).

Рис. 11 дает возможность выбрать место установки; Я выбрал расположение по умолчанию, которое для CUDA:

На рисунке 12 ниже показаны установки CUDA, основанные на Visual Studio, ранее установленной вШаг 1,

Нажатие «Далее» в окне, показанном на рис. 12 выше, дает окно окончательной установки, показанное как рис. 13 ниже, где установщик NVIDIA отмечен как завершенный.

Шаг 4: Загрузите исправления CUDA для Windows 10

На момент написания этой книги было четыре патча CUDA (а также базовый установщик), так что давайте пойдем и загрузим их. Они показаны на фиг.14.

Когда четыре исправления загружены, их можно установить так же, как и базовый установщик — с окнами установки, обеспечивающими руководство по процессу.

Шаг 5: Загрузите и установите cuDNN

После установки базового установщика CUDA 9.0 и его четырех исправлений следующим шагом будет поиск совместимой версии CuDNN. Основываясь на информации на веб-сайте Tensorflow, для поддержки Tensorflow с графическим процессором требуется версия cuDNN по адресуминимум 7,2,

Шаг 5.1: Загрузка cuDNN

Для того, чтобыскачать CuDNNВы должны зарегистрироваться, чтобы стать участником программы разработчиков NVIDIA (которая бесплатна).

Когда вы создаете учетную запись, входите в систему и заполняете некоторые другие необходимые сведения о том, почему вы используете учетную запись, вы получаете страницу загрузки, показанную на рис. 16.

Поскольку я скачал CUDA 9.0, соответствующая версия cuDNN — это версия 7.4.2. Выбор cuDNN версии 7.4.2 разрешает загрузку в виде zip-файла с именем следующим образом:

Шаг 5.2: Распаковка файлов cuDNN и копирование в папки CUDA

инструкциина нвидииобеспечить поддержку установки windows cuDNN, как и инструкции на веб-сайте Tensorflow; Я воспроизвел эти инструкции в дистиллированном виде, основываясь на своей реализации. В моем случае я загрузил названный выше файл cuDNN .zip в папку с следующим путем на моем ПК (ваш путь, без сомнения, будет другим).

В приведенных ниже инструкциях я ссылаюсь на путь к папке «C: \ Users \ жо \ Documents \ cuDNN_downloads \»(Упоминается чуть выше) как« », Такой, что zip-файл теперь находится в пути:

Я разархивировал файл cuDNN «.zip», в который я его скачал, поэтому структура разархивированной папки, которая будет содержать необходимые файлы cuDNN, теперь: —

В разархивированных подкаталогах папки cuDNN находятся три файла, которые нужно скопировать в каталоги CUDA Toolkit. Это cudnn64_7.dll, cudnn.h и:

1. cudnn64_7.dll

cudnn64_7.dll можно найти по следующему пути в загруженных файлах cuDNN:

Предполагая, что вы установили CUDA 9.0 по пути по умолчанию (как я сделал вШаг 2.3), а именно следующий путь по умолчанию:

Вы можете скопироватьcudnn64_7.dllфайл прямо в папку CUDAбункерПуть к папке (примечание: вам не нужно создавать какие-либо новые подпапки):

2. cudnn.h

Как и в случае с файлом cudnn64_7.dll, приведенным выше, после загрузки и разархивирования папки cuDNN файл заголовкаcudnn64.hможно найти в пути:

Читайте также:  Mac os return button

Опять же, предполагая, что вы установили CUDA 9.0 в путь по умолчанию, как я сделал вШаг 2.3скопироватьcudnn.hнепосредственно в папку CUDA по следующему пути (новые подпапки не нужны):

3. cudnn.lib

.Lib файлcudnn.libможно найти в загруженном пути cuDNN:

Скопируйте cudnn.lib непосредственно в папку CUDA по следующему пути:

Шаг 5.3: Проверка того, что переменные среды CUDA установлены в Windows

Наконец,инструкции на нвидииубедитесь, что вы ранее установили переменную среды CUDA следующим образом:

В Windows 10 переменные среды можно найти, выбрав:

Панель управления->Система и безопасность->система->Расширенные настройки системы,

Откроется окно «Свойства системы» (рис. 17), в котором следует выбрать кнопку «Переменные среды».

Когда появится окно «Переменные среды», в «системных переменных» (в нижней половине окна) нажмите «Путь» и нажмите кнопку «Изменить». Появится новое окно под названием «Редактировать переменную среды», как показано на рисунке 18 ниже.

При проверке переменных среды я обнаружил процесс установки, который определяет путь установки CUDA —Шаг 3.2см. рис. 11 — уже добавлены два пути к CUDA. Эти пути показаны на рисунке 18 ниже, поэтому я обнаружил, что мне не нужно добавлять дополнительный путь CUDA.

Шаг 6: Установите Python (если у вас его еще нет)

Теперь, когда CUDA и cuDNN установлены, пришло время установить Python для последующей установки Tensorflow. На момент написания самой последней доступной версии Python 3 является Python 3.7, ноВерсии Python 3, необходимые для Tensorflow: 3.4, 3.5 или 3.6, Python 3.6 можно загрузить для Windows 10 сВот, Когда вы запустите установщик Python для окон, появится окно настройки на Рис. 19.

Из вариантов, показанных на рис. 19 выше, во время установки Python я решил выбрать все из них. Эти параметры полезны: установщик Python «pip» используется наШаг 7.2этого руководства по установке Tensorflow. Кроме того, я использую IDE (интегрированную среду разработки для написания и запуска кода Python) под названием «IDLE» вШаг 8,

В «Расширенных настройках» (показанных на Рис. 20 ниже) я выбрал установку Python для всех пользователей (которая не была отмечена по умолчанию); это дает более полезную системную установку.

Шаг 7: Установите Tensorflow с поддержкой GPU

Tensorflowпредоставляет инструкциидля проверки правильности добавления каталогов установки CUDA, cuDNN и (необязательно: CUPTI) в переменные среды PATH. Поскольку три файла cuDNN были скопированы в подпапки CUDA, я не обновил существующий путь переменных среды CUDA.

Шаг 7.1: вызов командной строки с правами администратора

На этом этапе выполняется общесистемная установка Tensorflow, а не установка для каждого пользователя. Общесистемная установка Tensorflow требует прав администратора, поэтому, соответственно, командная строка должна запускаться с правами администратора.

Откройте командную строку, запустив ‘CMD’В строке поиска, а затем щелкните правой кнопкой мыши в командной строке, чтобы выбрать« Запуск от имени администратора ». Это открывает Администратор: Командная строка, как показано на рисунке 21.

Шаг 7.2: Общесистемная установка Tensorflow через Python pip

После открытия командной строки общесистемная команда установки для Tensorflow с поддержкой GPU выглядит следующим образом:

Команда «pip3» (в отличие от «pip») требуется, так как установка выполняется в Python 3. Выполнение этой команды в командной строке показано на рисунке 22.

Результирующий вывод команды показан на рисунке 23, и, если все пойдет по плану, в конечном итоге должно появиться сообщение, подтверждающее, что Tensorflow был успешно установлен.

Шаг 8: Тестовая установка TensorFlow и его доступ к GPU

Перейдите в меню «Пуск» в Windows и найдите среду IDE с именем «idle», которая будет установлена ​​как часть вашей установки на python, если вы выбрали, как я сделал вШаг 6, Окно Python должно появиться с надписьюОболочка Python 3.6.x, По приглашению (обозначается как «>>>») импортируйте пакет Tensorflow. Это проверит, что Tensorflow был установлен (как вы можете импортировать его). Команда для оболочки IDLE для импорта пакета tenorflow выглядит следующим образом:

Чтобы проверить поддержку CUDA для вашей установки Tensorflow, вы можете запустить в командной строке следующую команду:

Наконец, чтобы убедиться, что графический процессор доступен для Tensorflow, вы можете протестировать, используя встроенную служебную функцию в TensorFlow, как показаноВот:

Требуется несколько минут, чтобы вернуть результат из этого; когда он закончен, он возвращаетсяПравда, а затем приглашение>>>`появляется снова. Импортирование тензорного потока и эти тесты показаны на рис. 24 в оболочке Python IDLE.

Выводы

Это были шаги, которые я предпринял для установки Visual Studio, CUDA Toolkit, CuDNN и Python 3.6, и все с конечной целью установки Tensorflow с поддержкой GPU в Windows 10. На сегодняшний день моя работа по машинному обучению и глубокому обучению на основе GPU была в Linux Машины с Ubuntu; к тому же, большая часть онлайновой поддержки сообщества машинного обучения фокусируется на Ubuntu

Для машинного обучения основным недостатком использования Windows является то, что необходимо создавать больше объектов из исходного кода (например, используяCmake), чем в Linux, а также для установки дополнительного программного обеспечения для процессов сборки, таких как Visual Studio. Например, если бы выустановить Caffe2в Windows нет встроенных двоичных файлов, и сборка Windows находится в тестовом и бета-режиме. Я установил CUDA и cuDNN на Windows 10 более любопытно, чем что-либо еще, просто чтобы посмотреть, насколько это было просто (или иначе).

Как я намекал вЧасть 1Теперь, когда CUDA, cuDNN и Tensorflow успешно установлены в Windows 10, и я проверил доступ Tensorflow к графическому процессору, я собираюсь смести всю операционную систему Windows 10, чтобы произвести новую установку Ubuntu 18.04 LTS. Эта новая установка Ubuntu будет рассмотрена в части 3 этой серии.

Эта статья также была опубликованаВотв моем собственном блоге.

Оцените статью