Running Theano

Theano is available on HCC resources via the modules system. Both CPU and GPU versions are available on Swan.  Additionally, installs for both Python 2.7 and 3.6 are provided.

Running the CPU version

To use the CPU version, simply load the module and run your Python code.  You can choose between the Python 2.7, 3.5 or 3.6 environments:

Python 2.7 version
module load theano/py27/1.0
python my_python2_script.py

or

Python 3.5 version
module load theano/py35/1.0
python my_python3_script.py

or

Python 3.6 version
module load theano/py36/1.0
python my_python3_script.py

Running the GPU version

To use the GPU version, first create a ~/.theanorc file with the following contents (or append to an existing file as needed):

~/.theanorc
[global]
device = cuda

Next, load the theano module:

Load the theano module
module load theano/py27/0.9

To test the GPU support, start an interactive job on a GPU node and import the theano module within the Python interpreter.  You should see output similar to the following:

GPU support test
Python 2.7.15 | packaged by conda-forge | (default, May  8 2018, 14:46:53)
[GCC 4.8.2 20140120 (Red Hat 4.8.2-15)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import theano
Using cuDNN version 7005 on context None
Mapped name None to device cuda: Tesla K20m (0000:03:00.0)