hls4ml-tutorial: Tutorial notebooks for hls4ml

hls4ml-tutorial: Tutorial notebooks for hls4ml#

Jupyter Book Badge deploy-book Code style: black pre-commit Binder

There are several ways to run the tutorial notebooks:

Online#

Binder

Conda#

The Python environment used for the tutorials is specified in the environment.yml file. It can be setup like:

conda env create -f environment.yml
conda activate hls4ml-tutorial

Docker without Vivado#

Pull the prebuilt image from the GitHub Container Registry:

docker pull ghcr.io/fastmachinelearning/hls4ml-tutorial/hls4ml-0.8.0:latest

Follow these steps to build a Docker image that can be used locally, or on a JupyterHub instance. You can build the image (without Vivado):

docker build https://github.com/fastmachinelearning/hls4ml-tutorial -f docker/Dockerfile

Alternatively, you can clone the repository and build locally:

git clone https://github.com/fastmachinelearning/hls4ml-tutorial
cd hls4ml-tutorial
docker build -f docker/Dockerfile -t ghcr.io/fastmachinelearning/hls4ml-tutorial/hls4ml-0.8.0:latest .

Then to start the container:

docker run -p 8888:8888 ghcr.io/fastmachinelearning/hls4ml-tutorial/hls4ml-0.8.0:latest

When the container starts, the Jupyter notebook server is started, and the link to open it in your browser is printed. You can clone the repository inside the container and run the notebooks.

Docker with Vivado#

Pull the prebuilt image from the GitHub Container Registry:

docker pull ghcr.io/fastmachinelearning/hls4ml-tutorial/hls4ml-0.8.0-vivado-2019.2:latest

To build the image with Vivado, run (Warning: takes a long time and requires a lot of disk space):

docker build -f docker/Dockerfile.vivado -t ghcr.io/fastmachinelearning/hls4ml-tutorial/hls4ml-0.8.0-vivado-2019.2:latest .

Then to start the container:

docker run -p 8888:8888 ghcr.io/fastmachinelearning/hls4ml-tutorial/hls4ml-0.8.0-vivado-2019.2:latest

Companion material#

We have prepared a set of slides with some introduction and more details on each of the exercises. Please find them here.

Notebooks#