Hprc banner tamu.png


Revision as of 14:32, 13 March 2017 by Cryssb818 (talk | contribs)
Jump to: navigation, search



TensorFlow is an open source software library for numerical computation using data flow graphs.


TensorFlow is open to all HPRC users.

Please note that the GPU version of TensorFlow does not work on Ada. The GPU version must be used on Terra, which requires a different account and SUs than Ada. The CPU-only version does work on Ada.

Loading the Software


A single version of TensorFlow is currently available on Ada. This version is limited to the CPU only (no GPU).

To load this version (python 3.5):

[NetID@ada ~]$ module load Anaconda/3-4.0.0
[NetID@ada ~]$ source activate tensorflow
[NetID@ada ~]$ [run your Python program accessing TensorFlow]
[NetID@ada ~]$ source deactivate


A single version of TensorFlow is currently available on Terra. This version is able to use GPUs.

To load this version (python 3.5):

[NetID@terra ~]$ module load Anaconda/3-4.2.0
[NetID@terra ~]$ source activate tensorflow-cuda
[NetID@terra ~]$ [run your Python program accessing TensorFlow]
[NetID@terra ~]$ source deactivate

Usage on the Login Nodes

Please limit interactive processing to short, non-intensive usage. Use non-interactive batch jobs for resource-intensive and/or multiple-core processing. Users are requested to be responsible and courteous to other users when using software on the login nodes.

The most important processing limits here are:

  • ONE HOUR of PROCESSING TIME per login session.
  • EIGHT CORES per login session on the same node or (cumulatively) across all login nodes.

Anyone found violating the processing limits will have their processes killed without warning. Repeated violation of these limits will result in account suspension.
Note: Your login session will disconnect after one hour of inactivity.

Usage on the Compute Nodes

Non-interactive batch jobs on the compute nodes allows for resource-demanding processing. Non-interactive jobs have higher limits on the number of cores, amount of memory, and runtime length.

For instructions on how to create and submit a batch job, please see the appropriate wiki page for each respective cluster:

Ada Example Job Script

Updated: January 26 , 2017

#BSUB -J tfJob               # sets the job name to tfJob.
#BSUB -L /bin/bash           # uses the bash login shell to initialize the job's execution environment.
#BSUB -W 2:00                # sets to 2 hours the job's runtime wall-clock limit.
#BSUB -n 1                   # assigns 1 core for execution.
#BSUB -R "span[ptile=1]"     # assigns 1 core per node.
#BSUB -R "rusage[mem=5000]"  # reserves 5000MB per process/CPU for the job (5GB * 1 Core = 5GB per node) 
#BSUB -M 5000		     # sets to 5,000MB (~5GB) the per process enforceable memory limit.
#BSUB -o TensorFlow.%J       # directs the job's standard output to TensorFlow.jobid

# Load the modules
module load Anaconda/3-4.0.0 

# Activate TensorFlow library
source activate tensorflow

# Launch your Python program
[run your Python program accessing TensorFlow]

# Deactivate TensorFlow ibrary
source deactivate

To submit the batch job, run:

[NetID@ada ~]$ bsub < jobscript

Terra Example

Usage on the VNC Nodes

The VNC nodes allow for usage of the a graphical user interface (GUI) without disrupting other users.

VNC jobs and GUI usage do come with restrictions. All VNC jobs are limited to a single node (Terra: 28 cores/64GB). There are fewer VNC nodes than comparable compute nodes.

For more information, including instructions, on using software on the VNC nodes, please visit our Terra Remote Visualization page.