WST P DO PROGRAMOWANIA RÓWNOLEGŠEGO 1. KLASTER



Podobne dokumenty
Bazy danych. Andrzej Łachwa, UJ, /15

Jak wygląda praca na klastrze

Metody numeryczne i statystyka dla in»ynierów

raceboard-s Szybki start

Rozliczenia z NFZ. Ogólne założenia. Spis treści

Instrukcja programu PControl Powiadowmienia.

Komunikacja w sieci Industrial Ethernet z wykorzystaniem Protokołu S7 oraz funkcji PUT/GET

System zarządzania bazą danych (SZBD) Proces przechodzenia od świata rzeczywistego do jego informacyjnej reprezentacji w komputerze nazywać będziemy

Edyta Juszczyk. Akademia im. Jana Dªugosza w Cz stochowie. Lekcja 1Wst p

Elementy Modelowania Matematycznego Wykªad 9 Systemy kolejkowe

Wprowadzenie do obliczeń na komputerach ICM

Opis zmian funkcjonalności platformy E-GIODO wprowadzonych w związku z wprowadzeniem możliwości wysyłania wniosków bez podpisu elektronicznego

System Informatyczny CELAB. Przygotowanie programu do pracy - Ewidencja Czasu Pracy

Konfiguracja historii plików

INFORMATOR TECHNICZNY WONDERWARE

Pracownia internetowa w ka dej szkole (edycja 2004/2005)

Oprogramowanie klawiatury matrycowej i alfanumerycznego wyświetlacza LCD

Systemy mikroprocesorowe - projekt

POLITECHNIKA WROCŠAWSKA WYDZIAŠ ELEKTRONIKI PRACA DYPLOMOWA MAGISTERSKA

UWAGA! PRZECZYTAJ NAJPIERW:

Adapter USB do CB32. MDH-SYSTEM ul. Bajkowa 5, Lublin tel./fax lub kom e mail: info@mdh-system.pl

Logowanie z zewnątrz. Np. Program PUTTY, SSH

Instrukcja obsługi zamka. bibi-z50. (zamek autonomiczny z czytnikiem identyfikatora Mifare)

Karta adaptacyjna GSM

PRZEMYSŁOWY ODTWARZACZ PLIKÓW MP3 i WAV

PERSON Kraków

PLD Linux Day. Maciej Kalkowski. 11 marca Wydziaª Matematyki i Informatyki UAM

Lekcja 6 Programowanie - Zaawansowane

EGZAMIN POTWIERDZAJ CY KWALIFIKACJE W ZAWODZIE Rok 2014 CZ PRAKTYCZNA

I. INSTALACJA BAZY DANYCH ORACLE10g EXPRESS EDITION

Zintegrowane Systemy Zarządzania Biblioteką SOWA1 i SOWA2 SKONTRUM

SKRÓCONA INSTRUKCJA OBSŁUGI CR-500- HD

Logowanie do systemu Faktura elektroniczna

Strategia rozwoju kariery zawodowej - Twój scenariusz (program nagrania).

Instrukcja poruszania się po stronie krok po kroku. tak zwane ABC Plusika

Instrukcja dotycząca generowania klucza dostępowego do Sidoma v8

Pracownia internetowa w ka dej szkole (edycja 2004/2005)

Wdrożenie modułu płatności eservice dla systemu Virtuemart 2.0.x

Urządzenia do bezprzerwowego zasilania UPS CES GX RACK. 10 kva. Wersja U/CES_GXR_10.0/J/v01. Praca równoległa

Optymalizacja R dlaczego warto przesi ± si na Linuxa?

EGZAMIN MATURALNY Z INFORMATYKI 19 MAJA 2015

0.1 Hierarchia klas Diagram Krótkie wyjaśnienie

DYSTRYBUCJA : DJ-DISTRIBUTION NUMARK POLSKA

Wprowadzenie do obliczeń na komputerach ICM

JADWIGA SKIMINA PUBLIKACJA NA TEMAT: NAUKA MS. WORD 2000 W KLASIE IV

System Connector Opis wdrożenia systemu

Specyfikacja techniczna banerów Flash

Szóstoklasisto! 1. Z urzędu do gimnazjum przyjmowani są absolwenci szkół podstawowych zamieszkali w obwodzie danego gimnazjum.

Jak usprawnić procesy controllingowe w Firmie? Jak nadać im szerszy kontekst? Nowe zastosowania naszych rozwiązań na przykładach.

INSTRUKCJA Panel administracyjny

Chmura obliczeniowa. do przechowywania plików online. Anna Walkowiak CEN Koszalin

Generowanie kodów NC w środowisku Autodesk Inventor 2014

EGZAMIN MATURALNY Z INFORMATYKI 17 MAJA 2016

VLAN Ethernet. być konfigurowane w dowolnym systemie operacyjnym do ćwiczenia nr 6. Od ćwiczenia 7 należy pracować ć w systemie Linux.

Akademickie Centrum Informatyki PS. Wydział Informatyki PS

Konfiguracja programu Outlook 2007 do pracy z nowym serwerem poczty (Exchange)

Linux LAMP, czyli Apache, Php i MySQL

1. Wprowadzenie do C/C++

Scenariusz zajęć z przedsiębiorczości

Audyt SEO. Elementy oraz proces przygotowania audytu. strona

Wykorzystanie klastra Wydziału Informatyki PB do prowadzenia własnych obliczeń. Wojciech Kwedlo Wydział Informatyki PB

Zainstalowana po raz pierwszy aplikacja wymaga aktualizacji bazy danych obsługiwanych sterowników.

GEO-SYSTEM Sp. z o.o. GEO-RCiWN Rejestr Cen i Wartości Nieruchomości Podręcznik dla uŝytkowników modułu wyszukiwania danych Warszawa 2007

Rozwiązywanie nazw w sieci. Identyfikowanie komputerów w sieci

Archiwum Prac Dyplomowych

Wtedy wystarczy wybrać właściwego Taga z listy.

CHEVROLET MYLINK. Krótki przewodnik

Sieć komputerowa grupa komputerów lub innych urządzeo połączonych ze sobą w celu wymiany danych lub współdzielenia różnych zasobów, na przykład:

Instrukcja obsługi. Oprogramowanie SAS 31

Aktualizacja oprogramowania na urządzeniach Garmin

Aktualizacja CSP do wersji v7.2. Sierpień 2014

Biblioteka AutoCad V 5.0 Poradnik uŝytkownika

CO TO JEST RFID? SKŁADNIKI SYSTEMU. W podstawowej konfiguracji system składa się z:

Instrukcja Obsługi STRONA PODMIOTOWA BIP

Opis obsługi systemu Ognivo2 w aplikacji Komornik SQL-VAT

Rozbudowa domu przedpogrzebowego na cmentarzu komunalnym w Bierutowie. Specyfikacja techniczna wykonania i odbioru robót budowlanych - Okna i drzwi

Symfonia Produkcja Instrukcja instalacji. Wersja 2013

Instrukcja instalacji oprogramowania TSG wer. 5.0 z dost pem do danych poprzez sie Internet.

Przyk ad konfiguracja MRP przy pomocy IO kontrolera Simatic S7-300 i switchy Scalance X

Zaloguj się do Moje GS1. wprowadź dane o swoich lokalizacjach w mniej niż 5 minut!

WordPad. Czyli mój pierwszy edytor tekstu

Zdalne odnawianie certyfikatów do SWI

Obliczenia równoległe w zagadnieniach inżynierskich. Wykład 4

MySource Matrix CMS - PROSTY INTERFEJS UŻYTKOWNIKA. INSTRUKCJA ver 1.2

Instrukcja pod czenia komputera z systemem Microsoft Windows XP do sieci PWSZ-FREE-WIFI

Strona główna góra

epuap Ogólna instrukcja organizacyjna kroków dla realizacji integracji

Lekcja 8 - ANIMACJA. 1 Polecenia. 2 Typy animacji. 3 Pierwsza animacja - Mrugaj ca twarz

Scenariusz zajęć dla uczniów klas I-III szkoły podstawowej

Pierwsze logowanie do systemu I-Bank

Pracownia internetowa w każdej szkole. Opiekun pracowni internetowej SBS 2003 PING

Instrukcja programowania systemu IP-DECT KIRK 300 w centralach MICRA, SIGMA, OPTIMA, DELTA

Instrukcja obsługi programu MKi-m konfigurator

Przypomnienie najważniejszych pojęć z baz danych. Co to jest baza danych?

Użytkowanie elektronicznego dziennika UONET PLUS.

Zaznaczając checkbox zapamiętaj program zapamięta twoje dane logowania. Wybierz cmentarz z dostępnych na rozwijalnej liście.

Microsoft Management Console

PAKOWARKA PRÓŻNIOWA VAC-10 DT, VAC-20 DT, VAC-20 DT L, VAC-20 DT L 2A VAC-40 DT, VAC-63 DT, VAC-100 DT

Instrukcja obsługi. Sterownik ścienny KJR10B/DP

Transkrypt:

WST P DO PROGRAMOWANIA RÓWNOLEGŠEGO 1. KLASTER Klaster jest zespoªem pewnej liczby samodzielnych komputerów (procesorów). Ka»dy z nich posiada swoj pami wewn trzn do jego prywatnego u»ytku. Procesory pogrupowane s w w zªy. Wszystkie procesory s poª czone mi dzy sob sieci sªu» c do komunikacji mi dzy nimi. Podstawowa funkcja sieci, to przesyªanie danych i innych informacji. Procesory z jednego w zªa l czy sie dziaªaj ca znacznie szybciej ni» mi dzy procesorami z ró»nych w zªów. Mo»na skomasowa procesory z jednego w zªa i korzysta z takiego w zªa, tak jak z grubego procesora o wi kszej pami ci wewn trznej. Ka»dy procesor mo»e korzysta z du»ej pami ci zewn trznej (dyskowej). Pami taka mo»e sªu»y na przykªad do przechowywania wyników, danych, lub innych zasobów. Procesory mog dziaªa niezale»nie i jednocze±nie IBM-Blue Gene/P NOTOS, który b dzie nam sªu»yª, jest typowym klastrem. Posiada 1024 dost pne procesory, pogrupowane po 4 w 256 w zªach. Ka»dy procesor dysponuje pami ci wewn trzn o pojemno±ci 1GB. Zegar generuje impulsy z cz stotliwo±ci 850MHz. Sªowo Notosa skªada si z 32 bitów = 4 Bajty. Odpowiada to liczbom dziesi tnym siedmio-cyfrowym. Mo»na liczy wygodnie na podwójnych sªowach o±mio-bajtowych, co odpowiada liczeniu na liczbach 13 cyfrowych dziesi tnych. Na Notosie dziaªa system operacyjny Blue Gene/P linux, za± u»ytkowników obsªuguje system kolejkowy LoadLeveller. Jak posªugiwa si Notosem. Ka»dy u»ytkownik ma swój kawaªek maszyny, w którym trzyma swoje zasoby. U»ytkownik otrzymuje ten swój kawalek Notosa w chwili zarejestrowania. Kazdy z u»ytkowników dostaje si do swojego kawaªka poprzez sie ze swojego komputera osobistego, lub z laboratorium, najlepiej spod linux'a, przy pomocy komendy ssh lub ssh -Y, gdy potrzebna b dzie jaka± graka (np. gnuplot). Ka»de wej±cie wymaga logowania z u»yciem swojego hasªa Programy, które uruchomiamy, pierwotnie napisane w FORTRANIE lub C, musz zosta skompilowane w katalogu u»ytkownika na jego kawaªku Notosa. Poniewa» na maszynie pracuje jednocze±nie wielu u»ytkowników, programy u»ytkowników s ustawiane w kolejk i kolejno wpuszczane do ma- 1

szyny przez system LoadLeveller. Wstawienie programu do kolejki polega na przesªaniu SKRYPTU KOLEJKOWEGO dla tego programu. Sªu»y do tego polecenie wydane w linux'ie llsubmit (NAZWASKRYPTU) SKRYPT KOLEJKOWY to male«ki programik dla systemu linux, który opisany b dzie ni»ej. Naprawd, utworzenie takiego skryptu polega na wypeªnieniu w maªego, kilku-linijkowego formularza. Šatwo mo»na ±ledzi los wstawionego do kolejki programu. Wynik dziaªania programu pojawi si w katalogu u»ytkownika, z którego zostaª wysªany skrypt kolejkowy. Aby programowa na Notosie (lub innym dost pnym klastrze) nie jest potrzebna»adna specjalna wersja C lub FORTRANU. Najlepiej posªugiea sie najprostsz wersj podstawow. Obsªug wieloprocesorowo±ci zapewnia system podprogramów MPI: Message Passing Interface. Ten system zawiera wersj dostosowan do u»ycia w FORTRANIE i w C. Doª czamy do swoich zasobów system MPI, u»ywaj c po ka»dym logowaniu komendy module load mpi_default. Wywoªanie podprogramu z systemu MPI odbywa si w sposób standardowy, tak jak w przypadku podprogramów napisanych przez nas, doª czanych do programu przez nas napisanego. Na przykªad, w przypadku FORTRANU wygl da to tak call MPI_Bsend(...) Wszelkie szczegóªy dotycz ce programowania na Notosie, obsªugi jego wieloprocesorowo±ci, wykorzystywania systemu MPI zostan wyja±nione w dalszych cz ±ciach tego skryptu (nie kolejkowego). KIEDY WARTO LICZY NA WIELU PROCESORACH Zagadnienia o wyra¹nej strukturze sekwencyjnej cz sto jest trudno zrównolegli w sposób zadawalajcy. Takie zagadnienia mo»na gracznie przedstawi tak: A==>B==>C==>D==>E==>F==>G 2

gdzie A, B,...,G oznaczaj cz sci zagadnienia, które da si zaprogramowa jako pewne niezale»ne caªo±ci, za± strzaªki oznaczaj,»e ka»da nast pna cz ± zadania potrzebuje do dziaªania wszystkich wyników dziaªania cz ±ci poprzedniej. Jednak czasami udaje si zrównolegli takie zadanie, wykorzystuj c pewne indywidualne cechy zagadnienia. Nie jest elegancko liczy na klastrze wiele wariantów jednego zadania, zaprogramowanego na jeden procesor, ªaduj c ka»dy wariant w osobny procesor. Podstawowe korzy±ci liczenia na klastrze, to: 1. szybko± 2. mo»liwo± rozwi zywania skomplikowanych numerycznie zada«wymagaj cych wielkiej liczby danych lub/i produkuj cych wielkie ilo±ci wyników Rodzajami zagadnie«w których wykorzystywanie wieloprocesorowo- ±ci zdecydowanie pomaga s rozmaite symulacje procesów technologicznych, procesów zachodz cych w przyrodzie itp. (np. symulowanie biegn cego procesu technologicznego, w celu przewidzenia ewentualnej interwencji (trzeba wtedy wyprzedzi w czasie biegn cy ju» proces); prognoza pogody potrzebna na okre±lon godzin ; przewidywanie trz sie«ziemi, powodzi i innych kl sk»ywioªowych i wiele innych.) Tak»e opracowywanie nowych aplikacji potrzebnych na przykªad w badaniach naukowych lub w produkcji, tworzenie nowych wyspecjalizowanych podprogramów, cz sto powinno by nastawione na stosowanie w systemie wieloprocesorowym. TROCH WI CEJ SZCZEGÓŠÓW WSPÓŠPRACA Z LOADLEVELLEREM. Dla u»ytkowników klastra najwa»niejsze funkcje LoadLeveller'a to wstawianie programu do kolejki, usuwanie go z kolejki i informowanie o statusie programu w kolejce. 3

SKRYPT KOLEJKOWY. Oto formularz który trzeba przepisa do katalogu, w którym b dziemy pracowa, wypeªnic, nazwa i wstawi do kolejki u»ywaj c komendy llsubmit... # @ job_name = [NAZWA SKRYPTU] # @ account_no = [NUMER GRANTU] # @ class = [KLASA] # @ error = [NAZWA SKRYPTU].err # @ output = [NAZWA SKRYPTU].out # @ environment = COPY_ALL # @ wall_clock_limit = [hh : mm : ss] # @ notification = error # @ notify_user = [email address] # @ job_type = bluegene # @ bg_size = [LICZBA WEZLOW] # @ queue mpirun -exe /home/users/u.../[k]/[p] -mode VN -np [L] {>[PK]} Kwadratowymi nawiasami zaznaczone s miejsca do wypeªnienia NUMER GRANTU i KLASA to otrzyma ka»dy u»ytkownik podczas rejestracji Im krótszy czas zamawiamy, tym pr dzej program wejdzie do maszyny. Dla prostych testów wystarczy 5-10 minut. wall_clock_limit zarezerwowany czas pracy maszyny. LICZBA W ZŠÓW i L; L-to liczba procesorów. Pami tamy,»e Notos ma w jednym w ¹le 4 procesory, U - nazwa katalogu u»ytkownika, nadawana przy rejestracji, K nadana przez u»ytkownika nazwa katalogu, w którym jest program; P nazwa programu po kompilacji. Kompilator umieszcza skompilowany program w pliku a.out. Ten plik trzeba przepisa nadaj c mu nazw, któr mamy wpisa jako P. -mode VN oznacza,»e bedziemy pracowa w konguracji 4 procesory w w ¹le, to jest bez grubych procesorów. Cz ± ostatniego wiersza w nawiasach {} jest opcjonalna: je±li jej u»yjemy, to do pliku PK w katalogu K b d wpisane informacje z tekstu 4

programu. Na przykªad w FORTRANIE, umieszczenie w tekscie programu wiersza write(*,*)'a=', a, gdzie a jest zmienn, spowoduje wpisanie do pliku PK tekstu A=warto± (a). Ta opcja bywa bardzo przydatna podczas uruchomiania nowego programu. Natychmiast po wstawieniu skryptu do kolejki (llsubmit...), system przesyªa komunikat z którego dowiadujemy si czy program zostaª przyj ty. Je±li tak, to otrzymamy przydzielony mu numer zadania, który warto zapami ta. USUWANIE PROGRAMU Z KOLEJKI. Je±li program si zap tliª dziaªa, ale nie daje znaków»ycia i nie chce sie zatrzyma, to pewnie nale»y wyci gn c go z kolejki. Nie nale»y zwleka zbyt dªugo z t przykr operacj, aby nie zajmowa niepotrzebnie miejsca i czasu innym u»ytkownikom. Do tego sªu»y komenda llcancel numer zadania System zawiadomi o wycofaniu zadania. PYTANIE O STATUS ZADANIA W KOLEJCE. To pytanie mo»na zada na dwa sposoby: Pierwszy sposób llq System wypisze nam tablic zawieraj c wszystkie zadania z kolejki i ich aktualny status Drugi sposób llq -u nazwa u»ytkownika System poda inforacj o ststusie wszystkich programów wstawionych do kolejki przez tego u»ytkownika 5

UWAGA! Obecnie liczba zada«wstawionych do kolejki przez jednego u»ytkownika nie mo»e przekracza liczby 10. PRZYST PUJEMY DO PRACY NA NOTOSIE 1. Poniewa» b dziemy 'skazani' na prac 'pod linuxem', by mo»e b dziemy musieli po±wi ci troch czasu na przypomnienie sobie kilku podstawowych polece«tego systemu operacyjnego. 2. Je±li to mo»liwe uruchamiamy na terminalu linux. Mo»na równie» pracowa z mniej wygodnego terminala 'windowsowego'. W ka»dym razie po poª czeniu si z NOTOSEM i tak b dziemy musieli pracowa w ±rodowisku linuxowym. Do poª czenia z Notosem musimy mie zainstalowane dwa programiki: ssh który umo»liwi nam poª czenie z NOTOSEM i prace na tej maszynie sftp który umo»liwi nam przesyªanie (w obie strony) danych miedzy naszym terminalem a maszyn na której pracujemy. Warto wiedzie,»e system linux jest standardowo wyposarzony w te programy. W obu przypadkach ssh i sftp musmy najpierw poª czy si z maszyn delta, a nast pnie z delty ª czymy si z notosem. S potrzebne dwa logowania z u»yciem tego samego hasªa. 3. Mo»emy program napisa zarówno na naszym terminalu, jak i na notosie. W pierwszym przypadku trzeba go b dzie przesªa przy pomocy sftp poprzez delt do katalogu w którym zamierzamy pracowa na notosie. Oczywi±cie trzeba najpierw ten katalog utworzy. Trzeba go równie» wyposa»y ±rodowisko wªa±ciwe do pracy na wielu procesorach, przy pomocy polecenia module load mpi_default 4. Nast pna czynno±, to kompilacja programu, i je±li nie wykryte zostaªy bª dy formalne, to wstawienie programu do kolejki. 6