TensorFlow is a open-source machine learning framework mainly developed by Google. It can be used for verious machine learning tasks, e.g. deep learning. TensorFlow provides a high level API in python and other languages and is can run on CPUs as well as GPUs.

Installing TensorFlow

It is recommended to use Anaconda to create a virtual python environment and install the desired version of tensorflow within that environment.

module load anaconda3
source $ANACONDA3_ROOT/etc/profile.d/conda.sh
conda create -n myenv python=3.8.8
conda activate myenv
conda install tensorflow-gpu==2.2.0

If you do not want to use GPUs simply replace the last line with

conda install tensorflow==2.2.0

Testing the installation

To run TensorFlow on GPUs, load the correct modules and submit a job to the gpu partition.

#SBATCH -p gpu
#SBATCH -t 1
#SBATCH --gpus-per-node 1
module load anaconda3
source $ANACONDA3_ROOT/etc/profile.d/conda.sh
conda activate myenv
python tftest.py
import tensorflow as tf
hello = tf.constant('Hello, TensorFlow!')
sess = tf.compat.v1.Session()

And then submit the job using Slurm:

sbatch jobscript.sh

The output file should contain

The output (if any) follows:

b'Hello, TensorFlow!'

and also information about the GPUs selected.

Testing CPU only installation

If you want to test a CPU only installation, you can just run the tftest.py on a login node.

Using TensorFlow

You can now use TensorFlow in your python scripts. Please read gpu_selection for more information about GPU usage.

This website uses cookies. By using the website, you agree with storing cookies on your computer. Also you acknowledge that you have read and understand our Privacy Policy. If you do not agree leave the website.More information about cookies