Azure / azurehpc

This repository provides easy automation scripts for building a HPC environment in Azure. It also includes examples to build e2e environment and run some of the key HPC benchmarks and applications.
MIT License
124 stars 66 forks source link

App pinning tool ( slurm/srun integration) #716

Closed garvct closed 1 year ago

garvct commented 1 year ago

e.g. Run 16 processes, 6 threads per process on HB120-96rs-v3

!/bin/bash

SBATCH --mem=0

SBATCH --ntasks-per-node=16

SBATCH --exclusive

module load gcc-9.2.0 module load mpi/hpcx

export OMP_NUM_THREADS=6 export SLURM_CPU_BIND=verbose

check_app_pinning.py -pps -nv $SLURM_NNODES -nppv $SLURM_NTASKS_PER_NODE -ntpp $OMP_NUM_THREADS -mt srun AZ_MPI_NP=$(cat AZ_MPI_NP) AZ_MPI_ARGS=$(cat AZ_MPI_ARGS)

srun $AZ_MPI_ARGS

In this case AZ_MPI_ARGS="--mpi=pmix --cpu-bind=mask_cpu:0x3f,0xfc0,0x3f000,0xfc0000,0x3f000000,0xfc0000000,0x3f000000000,0xfc0000000000,0x3f000000000000,0xfc0000000000000,0x3f000000000000000,0xfc0000000000000000,0x3f000000000000000000,0xfc0000000000000000000,0x3f000000000000000000000,0xfc0000000000000000000000 --ntasks-per-node=16"