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