Podstawy: Różnice pomiędzy wersjami
Linia 1: | Linia 1: | ||
+ | [[Category:Podstawy]] | ||
__TOC__ | __TOC__ | ||
Wersja z 15:46, 29 lut 2012
Spis treści
Uzyskiwanie konta
Konta użytkownika na maszynach obliczeniowych ACK Cyfronet AGH można uzyskać po zapoznaniu się z regulaminami użytkowania maszyn oraz złożeniu odpowiednich wniosków:
Logowanie
Serwery dostępowe maszyn obliczeniowych dopuszczają jedynie bezpieczne połączenia, dlatego można zalogować się na nie oraz przesyłać pliki, jedynie z wykorzystaniem protokołu SSH. Ponadto jeśli planowane jest wykorzystanie programów w wersji graficznej, niezbędna jest obecność klienta XWindow na komputerze, z którego loguje się użytkownik.
Logowanie z systemu UNIX/Linux
Przenoszenie wyświetlania trybu graficznego
Jeżeli połączenie ssh ma również przenosić wyświetlanie graficznego interfejsu użytkownika (XWindow) należy do komendy ssh dodać flagę -Y:
ssh -Y <login>@<nazwa_maszyny_dostępowej>
Uwaga: W przypadku przenoszenia wyświetlania trybu graficznego należy pamiętać o dodaniu flagi -X przy poleceniu uruchamiającym zadanie interaktywne qsub -I -X.
Logowanie z systemu Windows
Systemy z rodziny Windows nie posiadają wbudowanego klienta protokołu SSH. Dlatego ich użytkownicy muszą zainstalować dodatkowe oprogramowanie. Polecane programy:
Po zalogowaniu się na maszynę użytkownik korzysta z konsoli tekstowej, tak jak w przypadku logowania się z maszyn Unix/Linux.
Uwaga: W przypadku przenoszenia wyświetlania trybu graficznego należy pamiętać o dodaniu flagi -X przy poleceniu uruchamiającym zadanie interaktywne qsub -I -X.
Przenoszenie wyświetlania trybu graficznego
W systemach UNIX/Linux wersja XWindow jest zwykle zainstalowana i dostępna dla użytkownika. Systemy z rodziny Windows nie posiadają serwera XWindow dlatego należy takowy zainstalować. Polecamy instalację darmowego serwera X-ów: XMing. Następnie należy skonfigurować program Putty tak aby umożliwiał przenoszenie wyświetlania tryby graficznego.
Uwaga: W przypadku przenoszenia wyświetlania trybu graficznego należy pamiętać o dodaniu flagi -X przy poleceniu uruchamiającym zadanie interaktywne qsub -I -X.
Logowanie z systemu MacOS X
MacOS X jest systemem z rodziny UNIX dlatego w jego przypadku postępowanie jest bardzo podobne jak dla opisanych wyżej systemów z rodziny Linux.
Przydatne komendy dostępne na klastrze Zeus
Komputery w ACK Cyfronet AGH pracują pod nadzorem systemów z rodziny Unix/Linux. Poniżej zestawiono przydatne dla użytkownika komendy systemowe:
Komenda | Opis |
---|---|
ls | Przeglądanie katalogów |
cd | Zmiana katalogu |
more lub less | Podgląd pliku |
mkdir <katalog> | Utworzenie katalogu |
rmdir <katalog> | Skasowanie pustego katalogu |
cp <plik> <plik2> | Skopiowanie pliku |
mv <plik> <plik2> | Przeniesienie/ zmiana nazwy pliku |
rm <plik> | Skasowanie pliku |
rm <plik> | Skasowanie pliku |
grep <wzór> <plik> | Przeszukanie czy w pliku występuje wzór |
find <katalog> -name <nazwa> | Przeszukanie katalogu i podkatalogów czy znajduje się w nich plik o nazwie nazwa |
quota -s | Sprawdzenie dostępnego dla użytkownika miejsca na systemach plików |
du -ch <katalog> | Sprawdzenie miejsca zajmowanego przez katalog |
Podstawy obsługi systemu kolejkowego
System kolejkowy jest wygodnym narzędziem uruchamiania zadań na zasobach obliczeniowych. W zależności od potrzeb, może on informować użytkownika o dacie i czasie rozpoczęcia, czy też zakończenia, wykonywania danego zadania, na wskazany adres e-mail.
Uruchamianie zadań
Do uruchamiania zadań służy komenda qsub. Zadania można uruchamiać w dwóch trybach: interaktywnym, gdzie do dyspozycji użytkownika jest konsola terminala lub wsadowym. W tym drugim przypadku wszystkie komendy umieszcza się w pliku. W takim pliku linijki zawierające Instrukcje sterujące dla systemu kolejkowego muszą zaczynać się ciągiem znaków #PBS. Umieszcza się je w początkowej części pliku. Dzięki temu system kolejkowy jest w stanie odczytać opcje jemu właściwe właśnie z tych linijek i uruchomić pozostałe instrukcje, dotyczące już samego zadania obliczeniowego, z dalszej części pliku. Najważniejsze opcje i parametry komendy qsub zawiera poniższa tabela.
Opcja | Parametry | Opis | Uwagi |
---|---|---|---|
-l | Opcja służy do specyfikacji zasobów (rdzeni, węzłów pamięci) dla zadania. Poszczególne opcje można łączyć w jednej linii. W takim przypadku należy rozdzielić je znakiem dwukropka. | ||
nodes=<liczba_węzłów> | Parametr służy do specyfikacji liczby wezłów | ||
ppn=<liczba rdzeni> | Liczba żądanych rdzeni na każdym węźle | opcja niedostępna na maszynie Baribal | |
walltime=<czas obliczeń> | Maksymalny czas obliczeń. Czas należy podawać w formacie DD:GG:MM:SS gdzie DD, GG, MM, SS oznaczają odpowiednio żądaną liczbę dni, godzin, minut i sekund na zadanie. | ||
-N | <nazwa_zadania> | Nazwa zadania w systemie kolejkowym | |
-j | oe | Połączenie standardowego wyjścia ze standardowym wyjściem błędów podczas wykonywania obliczeń | |
-m | b, e lub a | System kolejkowy wyśle e-mail do użytkownika jeśli zadanie rozpocznie się wykonywać b, skończy wykonywać e lub zostanie przerwane a. | |
-M | <adres@e-mail.użytkownika> | Adres e-mail użytkownika na który ma zostać wysłana wiadomość o stanie zadania | |
-q | <nazwa_kolejki> | Specyfikuje nazwę kolejki do której ma trafić zadanie | |
-I | uruchomienie zadania intraktywnego | ||
-X | w trybie interaktywnym pozwala na uruchamianie programów okienkowych | opcja niedostępna na maszynie Baribal i Mars |
Wyświetlanie informacji o stanie zadań w kolejkach
Do wyświetlania informacji o zadaniach oraz kolejkach służy komenda qstat. Wywołanie komendy bez parametrów spowoduje wyświetlenie informacji o wszystkich zadaniach w kolejkach. Najczęściej używane opcje komendy qstat zebrano w tabeli poniżej.
Opcja | Parametry | Opis | Uwagi |
---|---|---|---|
-q | <nazwa_kolejki> | Bez parametrów wyświetla informacje o dostępnych kolejkach i ich parametrach. | |
-u | <nazwa_użytkownika> | Wyświetla informacje o zadaniach danego użytkownika. | |
<identyfikator zadania> | Wyświetla informacje o danym zadaniu. | ||
-f | Pełna informacj o wszystkich zadaniach systemu kolejkowego. |
Usuwanie zadań
Do usuwania zadań służy komenda qdel. W celu sunięcia zadania z kolejki potrzebny jest również jego identyfikator numeryczny (jobid), który można wyświetlić komendą qstat. Cała sekwencja może wyglądać następująco:
qdel 12345678910
Przydatne zmienne systemu kolejkowego
- $PBS_NODEFILE Zmienna wskazuje na plik z nazwami węzłów przydzielonymi dla zadania. Najczęściej wykorzystywany do określania liczby rdzeni przydzielonej zadaniu np.:
export NPROC=`cat $PBS_NODEFILE | wc -l`
- $PBS_O_WORKDIR Zmienna wskazuje na katalog, z kkórego uruchomiono obliczenia. Najczęściej wykorzystywana do wskazania plików dla zadania np.:
cd $PBS_O_WORKDIR
Zasoby dyskowe
Zasoby dyskowe dołączone do Komputerów Dużej Mocy w Cyfronecie podzielone są na trzy główne rodzaje:
- katalogi domowe użytkowników
- zasoby do składowania danych
- zasoby tymczasowe, przeznaczone do przeprowadzania obliczeń
Każdy typ zasobu dyskowego umieszczony jest na innym sprzęcie i charakteryzuje się skrajnie różnymi parametrami szybkości, pojemności oraz poziomu bezpieczeństwa danych, dlatego niezmiernie ważne jest odpowiednie dobieranie typu zasobu do przeznaczenia zapisywanego nań pliku.
Quota
Większość zasobów posiada ustawioną tzw. kwotę dyskową (ang. quota), która limituje maksymalne użycie przestrzeni dyskowej oraz liczby plików przez użytkownika. Aktualnie przyznaną kwotą oraz jej użycie można zobaczyć za pomocą polecenia quota -s.
Katalogi domowe
Katalog domowy (home) charakteryzuje się małą przestrzenią i stosunkowo niską wydajnością, za to wszystkie pliki z katalogów domowych posiadają regularnie tworzone kopie zapasowe. Katalog domowy służy głównie jako magazyn małych plików, czy też prywatnego oprogramowania użytkownika (programy, skrypty, narzędzia, itp.).
Składowanie danych
Katalogi składowania danych (storage) charakteryzują się stosunkowo dużą przestrzenią, średnią wydajnością oraz dobrym bezpieczeństwem danych i zabezpieczeniem przed omyłkowym skasowaniem plików, realizowanym za pomocą tzw. kopii migawkowych (ang. snapshot). Przestrzeń ta służy np. do składowania wyników czy plików wejściowych, które nie muszą posiadać kopii zapasowej lub których rozmiar uniemożliwia przechowywanie ich w katalogu domowym.
Przestrzeń tymczasowa
Przestrzeń tymczasowa (scratch) to przestrzeń dyskowa dedykowana do przeprowadzania obliczeń, dostępna z wszystkich serwerów wchodzących w skład superkomputera. Charakteryzuje się bardzo wysoką wydajnością i dużą pojemnością, nie oferując jednak kopii zapasowych czy migawkowych. Służy do przechowywania danych generowanych przez aplikacje przez czas trwania obliczeń i wszystkie pliki powstałe w tym procesie powinny zostać usunięte niezwłocznie po zakończeniu zadania. Na niektórych systemach wdrożona jest polityka automatycznego usuwania bez ostrzeżenia plików starszych niż ustalona liczba dni. Przestrzeń ta jest realizowana na wiele sposobów, na klastrach Zeus i Mars poprzez system plików Lustre, natomiast na komputerach Baribal i Panda przez dedykowany zasób z macierzy dyskowej. Dodatkowo na klastrze Zeus możliwe jest wykorzystanie części dysków lokalnych zainstalowanych w węzłach obliczeniowych jako niewspółdzielonej przestrzeni tymczasowej.
Ogólne zalecenia dotyczące obliczeń
Zaleca się, tam gdzie jest to możliwe korzystanie z szybkich połączeń sieciowych (np. Infiniband) czy też szybkich dysków w trakcie wykonywania obliczeń. W przypadku programów uruchamianych na więcej niż jednym rdzeniu zalecamy wykonanie testów skalowalności. W wielu przypadkach zbyt duża liczba procesorów spowalnia całe obliczenia zamiast je przyspieszać. Zadeklarowana pamięć na obliczenia także może mieć znaczący wpływ na szybkość obliczeń. Znane są przypadki oprogramowania, które wykonuje się kilkakrotnie wolniej w przypadku zadeklarowania zbyt dużej pamięci w stosunku do problemu obliczeniowego.
Informacje szczegółowe
Szczegółowe informacje dotyczące logowania, kolejek, czy zaleceń odnośnie wykonywania obliczeń znajdują się na stronach właściwym danym maszynom. Baribal Mars Zeus