All checks were successful
Build and Deploy Documentation / build-and-deploy (push) Successful in 12s
76 lines
2.6 KiB
Markdown
76 lines
2.6 KiB
Markdown
---
|
|
title: Slurm Examples
|
|
#tags:
|
|
keywords: slurm example, template, examples, templates, running jobs, sbatch, single core based jobs, HT, multithread, no-multithread, mpi, openmp, packed jobs, hands-on, array jobs, gpu
|
|
last_updated: 24 Mai 2023
|
|
summary: "This document shows different template examples for running jobs in the Merlin cluster."
|
|
sidebar: merlin7_sidebar
|
|
permalink: /merlin7/slurm-examples.html
|
|
---
|
|
|
|
{:style="display:block; margin-left:auto; margin-right:auto"}
|
|
|
|
{{site.data.alerts.warning}}The Merlin7 documentation is <b>Work In Progress</b>.
|
|
Please do not use or rely on this documentation until this becomes official.
|
|
This applies to any page under <b><a href="https://hpce.pages.psi.ch/merlin7/">https://hpce.pages.psi.ch/merlin7/</a></b>
|
|
{{site.data.alerts.end}}
|
|
|
|
## Single core based job examples
|
|
|
|
```bash
|
|
#!/bin/bash
|
|
#SBATCH --partition=hourly # Using 'hourly' will grant higher priority
|
|
#SBATCH --ntasks-per-core=2 # Request the max ntasks be invoked on each core
|
|
#SBATCH --hint=multithread # Use extra threads with in-core multi-threading
|
|
#SBATCH --time=00:30:00 # Define max time job will run
|
|
#SBATCH --output=myscript.out # Define your output file
|
|
#SBATCH --error=myscript.err # Define your error file
|
|
|
|
module purge
|
|
module load $MODULE_NAME # where $MODULE_NAME is a software in PModules
|
|
srun $MYEXEC # where $MYEXEC is a path to your binary file
|
|
```
|
|
|
|
## Multi-core based jobs example
|
|
|
|
### Pure MPI
|
|
|
|
```bash
|
|
#!/bin/bash
|
|
#SBATCH --job-name=purempi
|
|
#SBATCH --partition=daily # Using 'daily' will grant higher priority
|
|
#SBATCH --time=24:00:00 # Define max time job will run
|
|
#SBATCH --output=%x-%j.out # Define your output file
|
|
#SBATCH --error=%x-%j.err # Define your error file
|
|
#SBATCH --exclusive
|
|
#SBATCH --nodes=1
|
|
#SBATCH --ntasks=128
|
|
#SBATCH --hint=nomultithread
|
|
##SBATCH --cpus-per-task=1
|
|
|
|
module purge
|
|
module load $MODULE_NAME # where $MODULE_NAME is a software in PModules
|
|
srun $MYEXEC # where $MYEXEC is a path to your binary file
|
|
```
|
|
|
|
### Hybrid
|
|
|
|
```bash
|
|
#!/bin/bash
|
|
#SBATCH --job-name=hybrid
|
|
#SBATCH --partition=daily # Using 'daily' will grant higher priority
|
|
#SBATCH --time=24:00:00 # Define max time job will run
|
|
#SBATCH --output=%x-%j.out # Define your output file
|
|
#SBATCH --error=%x-%j.err # Define your error file
|
|
#SBATCH --exclusive
|
|
#SBATCH --nodes=1
|
|
#SBATCH --ntasks=128
|
|
#SBATCH --hint=multithread
|
|
#SBATCH --cpus-per-task=2
|
|
|
|
module purge
|
|
module load $MODULE_NAME # where $MODULE_NAME is a software in PModules
|
|
srun $MYEXEC # where $MYEXEC is a path to your binary file
|
|
```
|
|
|