• How does non-determinism arise in MPI applications?
  • What are the impacts of non-determinism in scientific executions?


  • Learn about different communication methods in MPI.

  • Learn how non-determinism impacts on scientific applications with real examples.


In this chapter, we will provide step-by-step instructions for installing the ANACIN-X software on your system. Additionally, we will supply the essential commands and offer a hands-on demonstration of the entire process.

Pulling Existing Repository from Docker Hub

We can retrive ANACIN-X image from the Global Computing Lab Docker Hub. We may simply load the apptainer module and run the apptainer pull command. We must create a result directory to store traces from each run and to enable further computations.

  $ mkdir results
  $ module load apptainer
  $ apptainer pull oras://


Getting Jupyter Notebook

The jupyter notebook file and other supporting python scripts are available in GCLAB GitHub repository. In order to clone the repository, you can follow the following steps:

  • Navigate to the directory where you want to clone the repository.
  • Run following command:
  •  $ git clone

Configuring Jupyter Notebook

To configure the Jupyter Notebook server and the local browser, the initial step involves setting up SSH tunneling between the local machine and the remote server. Prior to launching the Jupyter Notebook server, it is essential to load the apptainer and openmpi modules to enable the proper functioning of ANACIN-X. Once these preparations are complete, the Jupyter Notebook server can be started on the remote machine.

  $ ssh -L 8888:localhost:8888 username@systemdomainname
  $ module load apptainer
  $ spack load openmpi
  $ jupyter notebook --no-browser --port=8888

Running Benchmark Application

Now, we can access the Jupyter Notebook in our local browser. Open web browser and go to http://localhost:8888. This will forward the connection through the SSH tunnel to the Jupyter Notebook server running on the remote machine.