Features & Constraints#

In a heterogeneous environment, often hardware resources are grouped together into one big partition. On M3, we group various nodes into one partition comp (default) and this is particularly useful when your software or code is hardware agnostic. In the case where your job needs a specific hardware resource, you can flag the constraint option in your job script to ask for a specific feature. For example, you can specify skylake in your job script if your program can utilise the AVX-512 instruction set. The CPU type of a particular node can be viewed by running this command

scontrol show node <nodename>

and then looking for the Feature field.

An example:

NodeName=m3i000 Arch=x86_64 CoresPerSocket=18
CPUAlloc=36 CPUTot=36 CPULoad=0.01
AvailableFeatures=skylake
ActiveFeatures=skylake

and add the constraint flag in your job script.

#SBATCH --constraint=<feature_name>

An example of using constraint in the job script#

#!/bin/bash
#SBATCH --job-name=MyJob
#SBATCH --ntasks=4
#SBATCH --ntasks-per-node=2
#SBATCH --constraint=skylake
#SBATCH --output=output.%j

module load openmpi

mpirun <program>

This feature should only be used if you must have a particular processor. Your job will have access to more resources if you do not use it.

To request multiple features, you can use operator function in the constraint flag in your job script:

Operator Function

Operator Symbol

Example

AND

&

#SBATCH --constraint=“A40&haswell”

OR

| (pipe)

#SBATCH --constraint=“haswell|broadwell”

Features Available#

Here is a list of the features available on M3. You can request the compute nodes with a variety of characteristics such as machines with a particular CPU model or GPU architecture. All nodes have hyper-threading turned off.

Feature

Description

Node

haswell

Intel(R) Xeon(R) CPU E5-2680 v3 @ 2.50GHz

m3c

broadwell

Intel(R) Xeon(R) CPU E5-2680 v4 @ 2.40GHz

m3h,m3e,dgx

skylake

Intel(R) Xeon(R) Gold 6150 CPU @ 2.70GHz

m3i,m3j,m3g,m3m,m3p,m3b

cascadelake

Intel(R) Xeon(R) Platinum 8260 CPU @ 2.40GHz

m3k,m3t,m3d

A40

NVIDIA A40

m3a

T4

NVIDIA Tesla T4

m3t

P4

NVIDIA Tesla P4

m3p

V100-16G

NVIDIA Tesla V100 16G variant

m3g[000-019],dgx000

V100-32G

NVIDIA Tesla V100 32G variant

m3g[020-023],dgx[001-010]