The second project of Self-Driving Car program is "Traffic Sign Classifier Project". In order to gain a quicker training process, TensorFlow with GPU support need to be installed properly first.
Besides the official web instruction: https://www.tensorflow.org/install/install_windows
WARNING: after finishing
CUDA® Toolkit 8.0.
The NVIDIA drivers associated with CUDA Toolkit 8.0.
cuDNN v6.1.
GPU card with CUDA Compute Capability 3.0 or higher.
DO NOT follow "Installing with Anaconda" steps in the official instructions, read the bottom update part FIRST !
I found the following useful resources:
Install Tensorflow (GPU version) for Windows and Anaconda: https://www.youtube.com/watch?v=Ebo8BklTtmc&t=673s
[Windows] Tensorflow GPU fails to find CUDA: https://github.com/tensorflow/tensorflow/issues/5968
How to fix "python is not recognized as an internal or external command": https://www.youtube.com/watch?v=uXqTw5eO0Mw
You can do the test if the tensorflow take the GPU advantage using the following method:
How to tell if Jupyter notebook is using GPU: https://discussions.udacity.com/t/how-to-tell-if-jupyter-notebook-is-using-gpu/217660
==================================================================================
Issue update:
When following above steps, I did the second project Project: Build a Traffic Sign Recognition Program: https://github.com/udacity/CarND-Traffic-Sign-Classifier-Project
Everything worked fine. Everything started to collapse after I closed my Anaconda CMD, and tried to continue my project later. When I try to activate carnd-term1 environment, I got:
"
usage: conda [-h] {keygen,sign,unsign,verify,unpack,install,install-scripts,convert,version,help} ... conda: error: invalid choice: '..checkenv' (choose from 'keygen', 'sign', 'unsign', 'verify', 'unpack', 'install', 'install-scripts', 'convert', 'version', 'help')
"
I can do NOTHING. I searched online and realized this issue is pretty new, and the problem is still being discussed in "conda command failure #6171": https://github.com/ContinuumIO/anaconda-issues/issues/6171.
I finally solved my problem following this: https://stackoverflow.com/a/46493533/8936445
In short, after activating the created environment, instead of "pip install --ignore-installed --upgrade tensorflow-gpu", use "pip install tensorflow-gpu".
So, the safe steps to follow can be summarized as:
Finish "Requirements to run TensorFlow with GPU support" in the official install instruction: https://www.tensorflow.org/install/install_windows. Detailed steps can refer "Install Tensorflow (GPU version) for Windows and Anaconda": https://www.youtube.com/watch?v=Ebo8BklTtmc&t=673s
Follow all instructions of "[Windows] Tensorflow GPU fails to find CUDA": https://github.com/tensorflow/tensorflow/issues/5968
Activate carnd-term1, install tensorflow-gpu using "pip install tensorflow-gpu" instead of "pip install --ignore-installed --upgrade tensorflow-gpu".
A good resources about understanding environment: GPU in carnd-term1 environment (https://discussions.udacity.com/t/gpu-in-carnd-term1-environment/277322)
The "carnd-term1" environment doesn't contains spyder packag, but "IntroToTensorFlow" does. if you would like to use spyder, install tensorflow-gpu after activating "IntroToTensorFlow" environment.