Serwery GPU


CI TASK w ramach działu KDM posiada pulę serwerów z akceleratorami GPU NVidia A100.


Podsumowanie konfiguracji sprzętowej

Karty graficzne są udostępnione na zwirtualizowanych nodach

1 x GPU NVidia A100 80GB per serwer
liczba serwerów: 24

8 x GPU NVidia A100 40GB per serwer
liczba serwerów: 2

Organizacja nodów i podział kart może ulec zmianie.

Nazwy nodów z puli A100 40 GB: akiv01-akiv16 (nie wszystkie będą dostępne)

Nazwy nodów z puli A100 80 GB: clgk01-clgk24 (nie wszystkie będą dostępne)

 

Środowisko systemowe na nodach jest takie jak na nodach clgk w Trytonie Plus, tj. CentOS 8. Dostępne są wspólne systemy plików /users/kdm i /users/work oraz całe środowisko aplikacji z kompilatorami i bibliotekami Intela (ładowane przez module load ...)

Oprócz tego w systemie jest zainstalowane środowisko sterowników NVidia i środowisko CUDA. Polecenia np. nvcc dostępne bezpośrednio w systemie.


Dostęp

Nody są dostępne w ramach Trytona Plus, w systemie kolejkowym Slurm, partycje: gpu-100 i gpu-a100-80gb. Można się od nich dostać z trytonp-ap, zlecając zadania w systemie kolejkowym.

Do celów prac rozwojowych możliwe jest korzystanie z dostępu poprzez interaktywną alokację w Slurmie np.:

[@trytonp-ap ~]$ salloc --time 3:00:00 --partition gpu-a100-80gb --gres=gpu:a100_80gb:1

alloc: Pending job allocation 24970941
salloc: job 24970941 queued and waiting for resources
salloc: job 24970941 has been allocated resources
salloc: Granted job allocation 24970941
salloc: Waiting for resource configuration
salloc: Nodes clgk09 are ready for job

To polecenie tworzy alokację na nodzie, ale nic nie uruchamia. Można się zalogować (wielokrotnie) na przydzielonego noda:

ssh clgk09

Specyfikacja --gres (Generic Resource) określa jakie zasoby są wymagane na nodzie, np: --gres=gpu:a100_80gb:1

gdzie:

  • gpu - ogólna klasa zasobów
  • a100_80gb - wpis określający nasze karty
  • 1 - liczba kart w nodzie 

 

Przykład zastosowania