Development GPUs

From Wiki

AImageLab provides development GPUs that can be used via remote debugging. Hosts containing development GPUs replicate the same configuration of all aimagelab-srv nodes.

Access to development GPUs

All AImageLab-SRV users can access the development GPUs. The development resources are managed by SLURM, within the partition all_serial. To access them, you always need to specify one account. To get the list of accounts assigned to your username, run the susage command.

Use from shell

⚠️ Warning : It is forbidden to access GPUs and/or use heavy resources on login nodes without going through the SLURM scheduler.

To get a shell with a development GPU, use the following command from the login node or a development node:

srun --partition=all_serial --account=<account> --gres=gpu:1 --pty bash

Use from IDEs

Visual Studio Code

  • From the tab Extensions, install extensions Remote - SSHandRemote - SSH: Editing Configuration Files
  • Connect to ailb-login-02.ing.unimore.it(e.g.: F1, Remote-SSH: Connect to Host...) and enter your project folder (e.g. via: F1, File: Open Folder...)
  • From the tab Extensions, on the remote host install the extensions PythonandPylance
  • Create the file $projectFolder/bash.sh, where $projectFolderthe project folder indicates, containing: srun -Q --immediate=10 --partition=all_serial --account=<account> --gres=gpu:1 --time 60:00 --pty bash
  • Check that the file $projectFolder/bash.shhas all execute permissions. Otherwise runchmod +x $projectFolder/bash.sh
  • Open (or create if non-existent) the file $projectFolder/.vscode/settings.json, and make sure it contains the following key-value pair

"terminal.integrated.automationProfile.linux": { "path": "$projectFolder/bash.sh" }