Slurm supports the ability to define and schedule arbitrary resources - Generic RESources (GRES) in Slurm's terminology. We use GRES for scheduling/allocating GPGPUs and FPGAs.
```
$ scontrol -d show node p03-amd01 | grep Gres=
Gres=gpgpu:amd_mi100:4,fpga:xilinx_alveo_u250:2
$ scontrol -d show node p03-amd02 | grep Gres=
Gres=gpgpu:amd_mi100:4,fpga:xilinx_alveo_u280:2
```
```
$ sbatch -A PROJECT-ID -p p03-amd --gres=fpga:xilinx_alveo_u280:2 ./script.sh