pyro-ppl

Overview

Pyro Pyro is a universal probabilistic programming language (PPL) written in Python and supported by PyTorch on the backend. Pyro enables flexible and expressive deep probabilistic modeling, unifying the best of modern deep learning and Bayesian modeling. It was designed with these key principles:

Universal: Pyro can represent any computable probability distribution.
Scalable: Pyro scales to large data sets with little overhead.
Minimal: Pyro is implemented with a small core of powerful, composable abstractions.
Flexible: Pyro aims for automation when you want it, control when you need it.

Restrictions on use

There are no restrictions on accessing the software on the CSF.

Set up procedure

We now recommend loading modulefiles within your jobscript so that you have a full record of how the job was run. See the example jobscript below for how to do this. Alternatively, you may load modulefiles on the login node and let the job inherit these settings.

Load one of the following modulefiles:

module load apps/python/pyro-ppl/0.5.0        # Uses Anaconda python 2019.07 (python 3.6)
                                              # Uses Cuda 10.1.168 library

The Anaconda Python modulefile and Cuda library will be loaded automatically.

Running the application

Please do not run pyro-ppl on the login node. Jobs should be submitted to the compute nodes via batch.

Serial batch job submission

Create a batch submission script (which will load the modulefile in the jobscript), for example:

#!/bin/bash --login
#$ -cwd             # Job will run from the current directory
                    # NO -V line - we load modulefiles in the jobscript

# We recommend loading modulefiles in jobscripts. Use your requried version.
module load apps/python/pyro-ppl/0.5.0

python pyro.py

Submit the jobscript using:

qsub scriptname

where scriptname is the name of your jobscript.

Parallel batch job submission

Given an example parallel jobscript, including suitable PE

Further info

Updates

None.

Last modified on October 25, 2019 at 12:09 pm by Chris Grave