Configuring and Installing TensorFlow for Non-Titan GPUs

TensorFlow officially supports GPUs with versions greater than the GeForce GTX TITAN. However, it is possible to configure and install TensorFlow for GPUs before Titan, such as the GeForce GTX 960 (which I have used for verification) by using "unofficial settings" that are not tested and supported (but is mentioned on the official installation instructions).

TensorFlow's official GPU compatibility is mentioned in the "Optional: Install CUDA (GPUs on Linux)" section in the TensorFlow installation instructions
https://www.tensorflow.org/get_started/os_setup.html#installation-for-linux:

TensorFlow GPU support requires having a GPU card with NVidia Compute Capability >= 3.5. Supported cards include but are not limited to:

However, as mentioned in the "Enabling Cuda 3.0" section, we can configure and install TensorFlow for non-Titan GPUs by using "unofficial settings" during the configuration.

Caution: as it is called as "unofficial," this method is "largely untested and unsupported," meaning that the installation may be glitchy. This is mentioned in the following message that appears during the `./configure` part in the installation:

WARNING: You are configuring unofficial settings in TensorFlow. Because some
external libraries are not backward compatible, these settings are largely
untested and unsupported.

A Japanese version of this entry can be found here: http://qiita.com/woodrush/items/67703153541ce869e3dc

Installation

Build from source, according to the official installation guide
https://www.tensorflow.org/versions/master/get_started/os_setup.html:

  1. Follow each step in the "Installing from sources" section before the "Configure the installation" step
  2. Follow the "Enabling Cuda 3.0" section and ./configure the "unofficial settings"
  3. Follow the "Create the pip package and install" to create a pip wheel and install TensorFlow from the wheel
    • (This step is required only when installing in virtual python environments such as pyenv, virtualenv, etc. When installing TensorFlow for the system's Python environment, follow the instructions in "Build your target with GPU support" section instead.)

I used a Geforce GTX 960, Ubuntu 15.04 PC setup for verifying these steps. I tested the "Neural Art in TensorFlow" repo for testing functionality: woodrush/neural-art-tf · GitHub.