1.Konwencje przyj te w instrukcji 2.Şwiczenie
Transkrypt
1.Konwencje przyj te w instrukcji 2.Şwiczenie
! " # ( +,-.! !" # "# " % $ 1$ %& $$ %&' $ ) *) $ %&'! $ -, ./ +,-.0 ! $ % !6 $ $ ! $ $ 45 2 3 $ ! 45 $ Czcionka o stałej szeroko ci Nazwy programów, polece , katalogów, wyniki działania wydawanych polece . Czcionka o stałej szeroko ci pogrubiona Podaje tekst, który nale y dosłownie przepisa . W przypadku plików istotniejsze fragmenty. ródłowych wyró nia Czcionka o stałej szeroko ci kursyw Tekst komentarza w przykładowych sesjach przy terminalu. Czcionka o stałej szeroko ci kursyw pogrubiona Wyró nia istotniejsze fragmenty wyników działania wydawanych polece . 7!8 Celem wiczenia jest poprawne skompilowanie oraz zainstalowanie systemu PVM (ang. Parallel Virtual Machine). Pakiet z plikami ródłowymi (jednolitymi dla wszystkich platform sprz towych) nale y samodzielnie pobra ze strony domowej projektu PVM: opracowali: dr in . Artur Gramacki, dr in . Jarosław Gramacki Parallel Virtual Machine (PVM) 1 http://www.netlib.org/pvm3/index.html lub te z miejsca wskazanego przez prowadz cego laboratorium. Wersja, która b dzie u ywana nosi numer 3.4.4. System b dzie instalowany w systemie LINUX. Czynno ci, które nale y wykona : 1. Rozpakowa oprogramowanie PVM (plik pvm3.4.4.tgz). Pakiet b dzie instalowany niezale nie przez ka dego u ytkownika w jego katalogu domowym. Po rozpakowaniu powinien pojawi si katalog pvm3 (mo liwe jest oczywi cie zainstalowanie pakietu w publicznie dost pnych katalogach, jednak wymagane jest wówczas posiadanie uprawnie u ytkownika root). 2. Zapozna si z utworzon struktur katalogow . Przeczyta uwa nie plik Readme! 3. Po rozpakowaniu plików ródłowych, aby prawidłowo skompilowa a pó niej u ywa system PVM, nale y w odpowiedni sposób skonfigurowa swoje rodowisko pracy. Mamy tu na my li ustawienie odpowiednich zmiennych systemowych. W systemie LINUX u ytkownik zwykle w swoim katalogu domowym posiada jeden lub kilka tzw. skryptów loguj cych. Zwykle s to pliki o nazwach zaczynaj cych si od znaku kropki (czyli s to pliki ukryte), takie jak np.: .login .profile .bash_profile .bash_login .barshrc Na dysku mog te znale si pliki o innych nazwach – zale y to od administratora systemu. Poniewa jednak obecnie najpopularniejszym programem powłoki (ang. shell) jest program bash, wi c najprawdopodobniej b d to pliki .bash_profile oraz .bashrc. Ten drugi jest zwykle wywoływany z tego pierwszego. W typowej konfiguracji, w pliku .bash_profile, odnajdziemy nast puj ce linie: # if [ -f ~/.bashrc ]; then # source ~/.bashrc # fi Je eli s one (jak w powy szym przykładzie) skomentowane, nale y je „odkomentowa ” (usun znaki #). W przeciwnym wypadku plik (skrypt) .bashrc nie zostanie wykonany. Nale y samodzielnie zorientowa si , które skrypty i w jakiej kolejno ci wykonuj si w czasie logowania u ytkownika do systemu. Najwygodniej sprawdzi to dodaj c na pocz tku ka dego skryptu polecenie echo (np.: echo „Czytam plik .bashrc”), które wy wietli podany jako parametr napis i tym samym poka e nam, które skrypty zostały wykonane. 4. Utworzy zmienn rodowiskow PVM_ROOT, która b dzie zawiera cie k do katalogu roboczego do którego rozpakowany został PVM, np. $HOME/pvm3. Odpowiedni wpis najlepiej umie ci jest w pliku .bashrc (lub jego odpowiedniku, gdy u ywamy innej powłoki ni bash). Dobrze jest równie doł czy do tego pliku plik $HOME/pvm3/lib/bashrc.stub, który ustawi automatycznie wszystkie wymagane parametry. Na koniec do zmiennej $MANPATH dodamy cie k $PVM_ROOT/man, aby móc wygodnie czyta dokumenty man dotycz ce PVM. Poni ej zamieszczono fragment pliku .barshrc z dodanymi odpowiednimi wpisami: ... PVM_ROOT=$HOME/pvm3 export PVM_ROOT opracowali: dr in . Artur Gramacki, dr in . Jarosław Gramacki Parallel Virtual Machine (PVM) 2 if [ -f $PVM_ROOT/lib/bashrc.stub ]; then source $PVM_ROOT/lib/bashrc.stub fi MANPATH=$MANPATH:$PVM_ROOT/man export MANPATH ... Plik $HOME/pvm3/lib/bashrc.stub ma struktur jak poni ej. Elementy, które dobrze jest w nim „odkomentowa ” zaznaczono pismem pogrubionym: # # append this file to your .bashrc to set path according to machine # type. you may wish to use this for your own programs (edit the last # part to point to a different directory f.e. ~/bin/_$PVM_ARCH. # if [ -z $PVM_ROOT ]; then if [ -d ~/pvm3 ]; then export PVM_ROOT=~/pvm3 else echo "Warning - PVM_ROOT not defined" echo "To use PVM, define PVM_ROOT and rerun your .bashrc" fi fi if [ -n $PVM_ROOT ]; then export PVM_ARCH=`$PVM_ROOT/lib/pvmgetarch` # # uncomment one of the following lines if you want the PVM commands # directory to be added to your shell path. # # export PATH=$PATH:$PVM_ROOT/lib # generic # export PATH=$PATH:$PVM_ROOT/lib/$PVM_ARCH # arch-specific # # uncomment the following line if you want the PVM executable directory # to be added to your shell path. # # export PATH=$PATH:$PVM_ROOT/bin/$PVM_ARCH fi Po wykonaniu powy szych zmian nale y ponownie zalogowa si do systemu. Wydaj c nast pnie polecenie set upewni si , e wszystkie wymagane przed kompilacj parametry zostały prawidło ustawione. Przykład prawidłowo ustawionego rodowiska (w cz ci potrzebnej do pracy z systemem PVM) wygl da nast puj co (pismem pogrubionym zaznaczono elementy zwi zane z PVM): MANPATH=/usr/man:/usr/local/man:/home/artur/pvm3/man PATH=/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games:/home/artur/pvm3 /lib:/home/artur/pvm3/lib/LINUX:/home/artur/pvm3/bin/LINUX PVM_ARCH=LINUX PVM_ROOT=/home/artur/pvm3 5. Przed kompilacj zapozna si z zawarto ci poni szych plików (do czego one słu ?): • • • • $HOME/pvm3/Makefile $HOME/pvm3/Makefile.aimk $HOME/pvm3/lib/aimk $HOME/pvm3/examples/Makefile.aimk 6. Zapozna si z dokumentacj w postaci dokumentów man (pvm, pvm_intro, pvmd3, aimk). opracowali: dr in . Artur Gramacki, dr in . Jarosław Gramacki Parallel Virtual Machine (PVM) 3 7. Wykona kompilacj systemu poleceniem make. Analizuj c zawarto pliku Makefile.aimk, dokona równie kompilacji przykładowych programów demonstracyjnych (jak to zrobi ?). Aby łatwiej było analizowa pojawiaj ce si w du ych ilo ciach komunikaty z kompilacji, mo na skierowa standardowe wyj cia do plików, czyli np. wyda polecenie make w nast puj cej postaci: $ make 2>err.txt 1>log.txt 8. Sprawdzi działanie systemu PVM uruchamiaj c tzw. konsol PVM i wydaj c kilka przykładowych polece . Przykładowa sesja mo e wygl da jak poni ej (istotniejsze elementy pogrubiono): $ ps PID TTY 28265 pts/1 29118 pts/1 TIME CMD 00:00:00 bash 00:00:00 ps $ pvm pvm> quit quit Console: exit handler called pvmd still running. $ ps PID 28265 29121 29123 TTY pts/1 pts/1 pts/1 TIME 00:00:00 00:00:00 00:00:00 $ pvm pvmd already running. pvm> conf conf 1 host, 1 data format HOST zgul pvm> id id t40002 pvm> mstat zgul mstat zgul zgul pvm> halt halt Zako czony $ ps PID TTY 28265 pts/1 29125 pts/1 CMD bash pvmd3 ps DTID 40000 ARCH LINUX SPEED DSIG 1000 0x00408841 ok TIME CMD 00:00:00 bash 00:00:00 ps Literatura 1. Index for PVM3 Library: http://www.netlib.org/pvm3/index.html 2. PVM List of Frequently Asked Questions: http://www.netlib.org/pvm3/faq_html/faq.html opracowali: dr in . Artur Gramacki, dr in . Jarosław Gramacki Parallel Virtual Machine (PVM) 4 3. PVM: Parallel Virtual Machine A Users' Guide and Tutorial for Networked Parallel Computing: http://www.netlib.org/pvm3/book/pvm-book.html 4. The postscript file for the book ``PVM A Users' Guide and Tutorial for Networked Parallel Computing''. http://www.netlib.org/pvm3/book/ 5. The users' guide for PVM version 3.3: http://www.netlib.org/pvm3/ug.ps opracowali: dr in . Artur Gramacki, dr in . Jarosław Gramacki Parallel Virtual Machine (PVM) 5