# Installation AI4HPC can be cloned via ```bash $ git clone https://gitlab.jsc.fz-juelich.de/CoE-RAISE/FZJ/ai4hpc/ai4hpc $ cd ai4hpc ``` To install AI4HPC, initial step is to check the manual via ```bash $ ./setup.py --help ``` Note that minimum Python version to run AI4HPC is 3.10! Check it via ```bash $ python --version ``` If this is not the case, simply run [`./Scripts/installPython.sh`](https://gitlab.jsc.fz-juelich.de/CoE-RAISE/FZJ/ai4hpc/ai4hpc/-/blob/main/Scripts/installPython.sh) script. There are 5 different trainable models built inside AI4HPC 1. [Convolutional AutoEncoder (CAE)](https://ai4hpc.readthedocs.io/en/latest/AI4HPC/architectures.html#convolutional-autoencoder-cae) 2. [Convolutional Defiltering Model (CDM)](https://ai4hpc.readthedocs.io/en/latest/AI4HPC/architectures.html#convolutional-defilterin-model-cdm) 3. [Regression Neural Network (REG)](https://ai4hpc.readthedocs.io/en/latest/AI4HPC/architectures.html#regression-neural-networks-reg) 4. [Transformer Network (TR)](https://ai4hpc.readthedocs.io/en/latest/AI4HPC/architectures.html#vision-transformers-tr) 5. [Convolutional Neural Network (CNN)](https://ai4hpc.readthedocs.io/en/latest/AI4HPC/architectures.html#convolutional-neural-network-cnn) If desired, one can also select for the training a specific [distributed backend implemented to AI4HPC](https://ai4hpc.readthedocs.io/en/latest/AI4HPC/distributedfws.html): 1. [PyTorch-DDP](https://pytorch.org/docs/stable/notes/ddp.html) (default) 2. [DeepSpeed](https://www.deepspeed.ai/) 3. [HeAT](https://heat.readthedocs.io/en/latest/) 4. [Horovod](https://horovod.ai/) For example, AI4HPC for [CDM](https://ai4hpc.readthedocs.io/en/latest/AI4HPC/architectures.html#convolutional-defilterin-model-cdm) training using [Horovod](https://horovod.ai/) as the distributed backend can be compiled with ```bash $ python setup.py --model 2 --fw 4 ``` if the HPC system is preconfigured in the [`./Scripts/setup.sh`](https://gitlab.jsc.fz-juelich.de/CoE-RAISE/FZJ/ai4hpc/ai4hpc/-/blob/main/Scripts/setup.sh) file, a Python Environment with these Libraries is compiled to the system: 1. [PyTorch](https://pytorch.org/) 2. [Horovod](https://horovod.ai/) 3. [DeepSpeed](https://www.deepspeed.ai/) 4. [HeAT](https://heat.readthedocs.io/en/latest/) 5. [JUBE](https://apps.fz-juelich.de/jsc/jube/jube2/docu/) The preconfigured HPC systems are 1. [JUWELS](https://apps.fz-juelich.de/jsc/hps/juwels/) 2. [JURECA](https://apps.fz-juelich.de/jsc/hps/jureca/) 3. [DEEP-EST](https://deeptrac.zam.kfa-juelich.de:8443/trac/wiki/Public/User_Guide) 4. [LUMI](https://docs.lumi-supercomputer.eu/firststeps/getstarted/) 5. [CTE-AMD](https://www.bsc.es/support/CTE_AMD-ug.pdf)*\ *CTE-AMD does not allow incoming/outgoing communication, hence, refer to [`CTE-AMD installation guide`](https://ai4hpc.readthedocs.io/en/latest/AI4HPC/HPCs.html#CTE-AMD-preinstallation). After the installation, the main folder should consist of 1. `ai4hpc.py` source file for the chosen case 2. `startscript.sh` for submitting that job 3. `src` folder with the rest of the dependencies In simplest scenario, submit `startscript.sh` with ```bash $ sbatch startscript.sh ``` That is it!