Ce document a été produit par
HEVEA.
Votre browser peut avoir a être configuré pour afficher correctement
certains symboles.
Reportez-vous à la
documentation
d'HEVEA.
rlogin farm?.lifl.fr
?
de 1 à 16
.login
et mon .cshrc
en conséquence. .cshrc
setenv PVM_ROOT ~/pvm3 if (-r ${PVM_ROOT}/lib/pvmgetarch) then setenv PVM_ARCH `${PVM_ROOT}/lib/pvmgetarch` set path = ($path ${PVM_ROOT}/lib) setenv MANPATH "${MANPATH}:${PVM_ROOT}/man" alias pvmgs ~/pvm3/lib/${PVM_ARCH}/pvmgs setenv pvmbin ~/pvm3/bin/$PVM_ARCH setenv pvmout /tmp/pvml.5408 else unsetenv PVM_ROOT endif
~/pvm3
/usr/local/pvm3
cd mkdir pvm3 cd pvm3 foreach name (conf doc examples include lib man) ln -s /usr/local/pvm3/$name end mkdir bin
echo $PVM_ROOT
rsh farm? 'echo $PVM_ROOT'
.rhosts
PVM_ROOT
est bien défini dans le .cshrc
.cshrc
ne produit pas d'entrée/sortie (stty
,
echo
...)
pvm
pvm> conf .... pvm> add farm?-giga ... pvm> confOn peut ensuite laisser tourner le daemon PVM
pvm> quit
cd ~/pvm3/examples make hello make hello_other
~/pvm3/bin/ALPHA/hello ~/pvm3/bin/$PVM_ARCH/hello $pvmbin/helloIl affiche
hello from "farm?-giga"
, c'est gagnépvm pvm already running pvm> halt libpvm [t40001]: mxfer() EOF on pvmd sockCe message indique que c'est bien fini !
~/pvm3/bin/$PVM_ARCH
Makefile
dans le répertoire courant
$PVM_ARCH
pour les objetstoto.f
:
f77 -I${PVM_ROOT}/include -c toto.f mv toto.o $PVM_ARCH/toto.o f77 -o toto $PVM_ARCH/toto.o $PVM_ROOT/lib/$PVM_ARCH/libfpvm3.a \ $PVM_ROOT/lib/$PVM_ARCH/libpvm3.a mv toto $PVM_ROOT/bin/$PVM_ARCH
Makefile
# Il est nécessaire d'avoir positionné les variables shell # PVM_ROOT : la racine de pvm3 # PVM_ARCH : l'architecture pour laquelle compiler # IncludePath=${PVM_ROOT}/include PvmLib=${PVM_ROOT}/lib/${PVM_ARCH}/libpvm3.a PvmFLib=${PVM_ROOT}/lib/${PVM_ARCH}/libfpvm3.a PvmGLib=${PVM_ROOT}/lib/${PVM_ARCH}/libgpvm3.a BinDir=${HOME}/pvm3/bin/${PVM_ARCH} ObjDir=${PVM_ARCH} FFLAGS=-I${IncludePath} # Ne pas changer l'ordre des librairies dans la définition suivante LDLIBS=${PvmFLib} ${PvmLib} LDFLAGS= LINK=f77
toto : ${BinDir}/toto @echo "$@ done" ${ObjDir}/toto.o : toto.f toto.h ${FC} ${FFLAGS} -c toto.f mv `basename $@` $@ ${BinDir}/toto : ${ObjDir}/toto.o ${LINK} ${LDFLAGS} -o `basename $@` ${ObjDir}/toto.o ${LDLIBS} mv `basename $@` $@
Makefile
:
# .. initialisations .. init : ${ObjDir} ${BinDir} @echo "initialisations faites" ${ObjDir} : mkdir -p $@ ${BinDir} : mkdir -p $@Initialisation :
make init
rsh
entre toutes les
machines
~/pvm3/bin
contennant les mêmes
exécutables
passwd
/etc/hosts.equiv
)
rsh
autorisés
~/pvm3/bin
/usr/local
/etc/passwd
sur toutes les machines
~/.rhosts
de chaque utilisateur
/usr/local
halt
sous la console PVM
halt
/tmp/pvm*
/tmp/
killpvm
: exemple de script (csh
)
while ($1 != "") echo Checking $1 ..... rsh $1 -l $USER ' \ if ($PVM_ROOT/lib/$PVM_ARCH/pvm != `which pvm` && $PVM_ROOT/lib/pvm != `which pvm`) then \ echo PVM is not properly installed on $HOST \! \ else \ echo halt | pvm >& /dev/null \ if ($?TMPDIR) then \ find $TMPDIR/* -type s -exec /bin/rm -f {} \; >& /dev/null \ /bin/rm -f $TMPDIR/pvm* >& /dev/null \ endif \ find /tmp/* -type s -exec /bin/rm -f {} \; >& /dev/null \ /bin/rm -f /tmp/pvm* >& /dev/null \ endif \ ' shift end
pvmd
tourne sur chaque noeud d'une
machine virtuelle pour chaque utilisateur
/tmp/pvml.
uid
/tmp
Ce document a été traduit de LATEX par HEVEA.