Skip to content

Doc.Installation

Joe Latessa edited this page Sep 8, 2024 · 6 revisions

To run X-SCAPE, you will need to install several software pre-requisites, and then build X-SCAPE. Acquiring the pre-requisites using a container environment will be simpler than installing the pre-requisites manually.

Choosing Between Docker and Singularity Containers

Singularity and Docker both provide a container environment in which X-SCAPE can be installed and executed. Unlike Docker, Singularity does not require root privileges, so if the container is built on a machine where you have root access, the container can be transferred to a HPC and executed without root privileges. The advantage of using Singularity is that many HPC grids support Singularity but do not support Docker as Docker would require giving grid account users root access. If you only intend to use X-SCAPE on your local computer and your computer is a MAC, Docker would be a better choice since Singularity only runs on Linux (or Windows 10 systems via WSL2, the Windows Subsystem for Linux). If you only intend to use X-SCAPE on your local Windows 10 or Linux system, Singularity and Docker are comparable choices.

Instructions to Install and Run X-SCAPE Using Docker

We recommend to install X-SCAPE and its pre-requisites using Docker.

Instructions to Install and Run X-SCAPE Using Singularity

Another option is to install X-SCAPE and its pre-requisites using Singularity.

Instructions to Install and Run X-SCAPE Using Singularity on HPC Grid Accounts

These installation instructions were created using Wayne State University's Grid. The instructions may need to be adapted to the specific HPC system being used.

An Example Use-Case for Running HPC Batch Jobs with X-SCAPE and Singularity

Different HPC systems have their own unique features and usability requirements. This example use-case demonstrates a strategy for running X-SCAPE batch jobs with Singularity on the ISAAC Open Enclave at University of Tennessee Knoxville. These instructions will likely require adaptation for other HPC systems or specific project requirements.

An Example Use-Case for Compiling X-SCAPE and Submitting Jobs on the Open Science Grid (OSG)

Unlike many High Performance Computing (HPC) clusters, the Open Science Grid (OSG) provides a distributive system for High Throughput Computing (HTC). This example use-case shows how one can use Singularity to compile X-SCAPE and submit jobs to the HTCondor scheduler on the OSG.

Instructions to Run X-SCAPE Using a Docker Image with X-SCAPE preinstalled

The standard method to install and run X-SCAPE involves using a Docker or Singularity image with only the software dependencies installed and not X-SCAPE itself. X-SCAPE is then cloned and installed in a mounted host system directory from within the container. This is ideal for X-SCAPE development. However, if you only plan to run X-SCAPE, instructions to use a Docker image with X-SCAPE preinstalled are provided here.

Manual Installation (not recommended)

Please see the instructions here.

External packages

To run certain external software (MUSIC, CLVisc, SMASH), you will need to explicitly download them, and you may need to re-run cmake with specific command-line options. Scripts to download and install the external packages are provided in external_packages/. Please see external packages for full details.

The available cmake options are:

cmake .. -DUSE_MUSIC=ON -DUSE_ISS=ON -DUSE_FREESTREAM=ON -DUSE_SMASH=ON -DUSE_CLVISC=ON