Na superkomputerze prowadzony jest rejestr zużycia zasobów przez Usługi "Przetwórz na superkomputerze". Podstawowe zasady funkcjonowania rejestru są następujące:
service-balance
.set-default-service
.UWAGA! Pula dostępnych godzin CPU oraz GPU jest współdzielona przez wszystkich użytkowników danej usługi.
Zasady podliczania ilości zużytych zasobów określa Regulamin szczegółowy Usługi "Przetwórz na superkomputerze".
Za gromadzenie informacji na temat zużycia zasobów przez daną usługę odpowiada system kolejkowania SLURM, który posiada informacje na temat wszystkich zadań uruchomionych na superkomputerze. W nomenklaturze systemu kolejkowania SLURM, usługi są zdefiniowane jako tzw. rachunki (ang. accounts). Zużycie zasobów jest zliczane i odpisywane od limitów danej usługi po zakończeniu zadania (zarówno tego poprawnie jak i niepoprawnie zakończonego).
service-balance
Zużycie zasobów przez daną usługę liczone jest na podstawie liczby zaalokowanych zasobów (np. liczba rdzeni CPU) pomnożonych przez realny czas trwania zadań (tzw. wall time).
Do sprawdzenia stanu zużycia zasobów przez usługi służy komenda service-balance
:
$ service-balance [-h] [--user USER] [--service SERVICE] [--timeunit {seconds,minutes,hours}]
gdzie:
--user USER
- wyświetlenie informacji dla wybranego użytkownika. Domyślnie, wyświetlenie informacji dla obecnego użytkownika;--service SERVICE
- wyświetlenie informacji wyłącznie dla wybranej usługi (jeśli jest ona dostępna dla wybranego użytkownika). Domyślnie, program wyświetla informacje o wszystkich dostepnych usługach dla danego użytkownika;--timeunit {seconds,minutes,hours}
- wyświetlenie zużycia zasobów dla wybranej jednostki czasu. Domyślnie, zużycie podawane jest w godzinach CPU/GPU;-h
- wyświetlenie pomocy.Przykład:
$ service-balance
#############################################################################################################################################
# SLURM Account information for user "YYYYYY" #
# #
# * Each Service is given an unique Account (name of the Account identical to the Service ID) #
# * (D) marks the default Service and (d) marks the default QoS for each Service #
#############################################################################################################################################
Service ID/Account Name | QoS Name | Resource | Available [h] | Used [h] | %
---------------------------------------------------------------------------------------------------------------------------------------------
1) (D) hpc-XXXXXXX-XXXXXXXXXX | (d) hpc-XXXXXXX-XXXXXXXXXX | CPU | 300000.0 | 696.3 | 0.2
| | GPU | 200.0 | 0.0 | 0.0
-------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------------------------------------------
2) hpc-YYYYYYYYYYYYYYYY-YYYYYYYYYY | (d) hpc-YYYYYYYYYYYYYYYY-YYYYYYYYYY | CPU | 200.0 | 20.3 | 10.2
| | GPU | N/A | N/A | ---
-------------------------------------------------------------------------------------------------
W pierwszej kolumnie Service ID/Account Name
podane są identyfikatory usług, do których użytkownik posiada dostęp. Usługa oznaczona symbolem (D)
jest domyślną usługą, w ramach której domyślnie są uruchamiane wszystkie zadania obliczeniowe. Następnie, każda z kolejnych kolumn zawiera informacje odpowiadające danej usłudze.
W drugiej kolumnie QoS Name
podano wszystkie QoS dostępne dla danej usługi. Obecnie, każda z Usług "Przetwórz na superkomputerze" dysponuje jedynie jednym QoS o tożsamej nazwie. Ponadto, w przypadku każdej z usług, zaznaczono jej domyślny QoS za pomocą symbolu (d)
.
W pozostałych kolumnach podane są informacje na temat konkretnego zasobu:
Resource
precyzuje rodzaj zasobu;Available [h]
zawiera całkowitą ilość zasobu do dyspozycji dla wszystkich użytkowników danej usługi (liczoną w godzinach CPU/GPU);Used [h]
podaje obecnie zużytą ilość zasobu przez wszystkich użytkowników danej usługi (liczoną w godzinach CPU/GPU);%
podaje procentowe zużycie zasobu, tj. Used/Available * 100
.W powyższym przykładzie, użytkownik YYYYYY
ma dostępne dwie usługi:
hpc-XXXXXXX-XXXXXXXXXX
(domyślna), z dostępnymi 300 tys. h CPU oraz 200 h GPU. Wszyscy użytkownicy tej usługi skorzystali już z 696.3 h CPU (0.2% zużycia zasobu) oraz 0 h GPU (0.0% zuzycia zasobu).hpc-YYYYYYYYYYYYYYYY-YYYYYYYYYY
, z dostępnymi 200 h CPU oraz brakiem godzin GPU (oznaczonym jako N/A
) (co jest tożsame z brakiem dostępu do partycji GPU w ramach tej usługi). Wszyscy użytkownicy tej usługi skorzystali już z 20.3 godzin CPU (10.2% zużycia zasobu).Wszystkie zadania użytkownika YYYYYY
domyślnie obciążają rachunek usługi hpc-XXXXXXX-XXXXXXXXXX
. Aby skorzystać z puli zasobów innej usługi, należy podać dodatkowe parametry przy zlecaniu zadań. Więcej informacji znajduje się w sekcji poniżej.
Usługa rozliczana jest za alokację zasobu na swoje potrzeby, tzn. ilość rdzeni CPU lub kart GPU, niezależnie od rzeczywistego obciążenia zasobu.
Przykład:
Zlecono zadanie na 48 rdzeni CPU na czas 168 h. Zadanie zakończyło się po 100 h, zatem usługa obciążona jest ostatecznym rachunkiem4800 CPUh = 48 CPU * 100 h
. Algorytm nie uwzględnia, czy podczas wykorzystanych 100 h używane były wszystkie 48 rdzenie CPU ze 100% obciążeniem, czy też mniejszym.
Każdy użytkownik posiada przypisaną domyślną usługę (tzw. default account w SLURM), w ramach której domyślnie uruchamiane są wszystkie zadania obliczeniowe. Użytkownik może zmienić domyślną usługę do wykonywania obliczeń za pomocą udostępnionych narzędzi.
Przykładowo, użytkownicy posiadający wyłącznie jedną usługę nie muszą za każdym razem podawać dodatkowych parametrów przy zlecaniu zadania.
Użytkownik superkomputera samodzielne decyduje, z zasobów której usługi chciałby skorzystać podczas zlecania zadania w systemie kolejkowania SLURM. W tym celu, podczas zlecania zadań w systemie kolejkowania SLURM wymagane jest podanie dodatkowych opcji - instrukcja znajduje się w sekcji Zlecanie zadań w ramach konkretnej usługi.
UWAGA! Użytkownicy powinni świadomie wybierać w ramach której usługi zlecają zadania obliczeniowe.
WCSS nie ponosi odpowiedzialności za błędne przypisanie usługi do danego zadania. Nie ma możliwości zmiany stanu zużycia zasobów usługi lub przypisania zużycia zasobów do innej usługi.
Właściciel Usługi "Przetwórz na superkomputerze" precyzuje ilość potrzebnych zasobów superkomputera podczas składania wniosku o usługę za pośrednictwem strony https://e-science.pl. W przypadku, gdy cała pula wcześniej przyznanych zasobów superkomputera została wykorzystana, tzn. wszystkie godziny CPU lub GPU zostały zużyte, własciciel usługi może złożyć wniosek o zwiększenie zasobów za pomocą portalu https://e-science.pl.
Instrukcja składania wniosków o zwiększenie zasobów znajduje się w dokumentacji Wnioski o przedłużenie lub zwiększenie zasobów aktywnej usługi.
Składanie wniosków o nowe Usługi (i modyfikacja już istniejących) dostępne jest po przypisaniu afiliacji naukowej do konta E-SCIENCE.PL przez Właściciela Usługi (instrukcja dodawania afiliacji za pomocą portalu https://users.e-science.pl/).