You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 16 Next »

Informacje podstawowe

Obliczenia GPGPU to  wykorzystanie procesorów graficznych wspólnie z jednostką   CPU do przyspieszenia obliczeń naukowych i inżynierskich. Infrastruktura PL-Grid oferuje swoim użytkownikom dostęp do maszyny zawierającej karty GPGPU.Jest to Zeus CPGPU  w ACK CYFRONET AGH. Zeus GPGPU jest grupą serwerów obliczeniowych zawierających karty GPGPU udostępnianych  użytkownikom poprzez system kolejkowy.Obecnie w Zeusie GPGPU dostępne dla użytkowników są 504 rdzenie obliczeniowe, 204 karty GPGPU oraz 3,5 TB pamięci operacyjnej.

Uwaga:

Dostęp do usługi

Dostęp do GPGPU jest możliwy jednie z poziomu systemu kolejkowego klastra Zeus. Należy zatem najpierw uzyskać dostęp do lokalnego systemu kolejkowego na klastrze Zeus w  ACK CYFRONET AGH, aktywując w portalu użytkownika odpowiednie usługi (wskazane jako "usługi nadrzędne").

 

 

Następnie należy  wypełnić motywację i aplikować o usługę.

Zlecanie zadań

Zadanie należy umieścić w kolejce  gpugu na klastrze Zeus.

Poza ustawieniem w skrypcie typowych parametrów istotnych dla systemu kolejkowego, konieczna jest specyfikacja parametru gpus oznaczającego żądaną liczbę kart graficznych na pojedynczym węźle obliczeniowym. Często oprogramowanie wymaga, aby karta była jednocześnie dostępna dla wielu procesów. Należy wtedy dodatkowo ustawić jej tryb pracy na shared, specyfikując gpus=1:shared lub gpus=2:shared. Inne możliwe tryby pracy to exclusive_thread i exclusive_process.

W razie potrzeby identyfikatory przydzielonych przez system kolejkowy kart graficznych można sprawdzić wyświetlając zawartość pliku wskazywanego przez zmienną środowiskową $PBS_GPUFILE.

 

Przykładowe skrypty dla systemu kolejkowego

 

TeraChem (zrówboleglenie na dwie karty graficzne)
#!/bin/sh

# TeraChem can run on a single node only
#PBS -l nodes=1:ppn=2:terachem:gpus=2:exclusive_process

#PBS -N sample_terachem
#PBS -q gpgpu

cd $PBS_O_WORKDIR

# initializing proper environment for TeraChem
module add gpu/terachem

# actual job
$TERACHEMRUN ch.inp > ch.log
NAND
#!/bin/sh

#PBS -l nodes=3:ppn=12:gpus=2:shared
#PBS -N sample_namd
#PBS -q gpgpu

cd $PBS_O_WORKDIR

# initializing proper environment for NAMD with GPU support
module add gpu/namd

# actual job
runnamd stmv.namd > stmv2_2x2.log 

GAMESS
#!/bin/sh

# the number of GPUs requested
# at the moment it must be set to 2 per node
#PBS -l nodes=2:ppn=4:gpus=2:exclusive_process

#PBS -N sample_gamess 
#PBS -q gpgpu

# changing directory to the one from which the job is submitted
cd $PBS_O_WORKDIR

# initializing proper environment for GAMESS with GPU support
module add gpu/gamess

# actual job
rungms noq15 >& noq15.log

 

 

 

  • No labels