File: pvmd3.man

package info (click to toggle)
scilab 2.6-4
  • links: PTS
  • area: non-free
  • in suites: woody
  • size: 54,632 kB
  • ctags: 40,267
  • sloc: ansic: 267,851; fortran: 166,549; sh: 10,005; makefile: 4,119; tcl: 1,070; cpp: 233; csh: 143; asm: 135; perl: 130; java: 39
file content (247 lines) | stat: -rw-r--r-- 7,233 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
.TH pvmd3 1 "January 1998" "Scilab // Group" "pvm daemon"
.so ../sci.an
.SH NAME
pvmd3 - PVM  daemon
.SH SYNOPSIS
pvmd3 [ -options ] [ hostfile ] &
.SH DESCRIPTION
pvmd3 is a daemon process which coordinates hosts in a virtual
machine. One pvmd must run on each host in the group. They provide
the communication and process control functions needed by the user's
PVM processes. The daemon can be started manually with a host file
argument that will automatically start the remote pvmds. The local and
remote pvmds can also be started from the PVM console program pvm.

The name of the daemon executable is pvmd3. It is usually started by a
shell script, $PVM_ROOT/lib/pvmd.

Local daemon may also be started by the scilab instruction pvm_start()
and remote daemons may also be started by the scilab function 
pvm_addhosts

.SH OPTIONS
The following options may be specified on the command line when
starting the master pvmd or PVM console:
.TP
- 
dmask Set pvmd debug mask. Used to debug the pvmd or libpvm (not
intended to be used to debug application programs). Mask is a
hexadecimal number which is the sum of the following bits: Bit
Information
.RS
.TP 3
1
     Packet routing 
.TP
2
     Message routing and entry points 
.TP
4
     Task management 
.TP
8
     Slave pvmd startup 
.TP
10
     Host table updates 
.TP
20
     Select loop (below packet layer) 
.TP
40
     IP network 
.TP
80
     Multiprocessor port debugging 
.TP
100
     Resource manager interface 
.TP
200
     Application (messages with no destination, etc.)
.RE
.TP
-nname 
Specify an alternate hostname for the master pvmd to use. Useful when
gethostname() returns a name not assigned to any network interface.
.LP
The following options are used by the master pvmd when starting slaves
and are only of interest to someone writing a hoster. Don't just go
using them, now.
.TP
-s 
Start pvmd in slave mode. Hostfile cannot be used, five additional
parameters must be supplied: master pvmd index, master IP, master MTU,
slave pvmd index, and slave IP.
.TP
-S 
Same as -s, but slave pvmd doesn't wait for its stdin to be closed
after printing its parameters.  Used for manual startup.
.TP
-f 
Slave doesn't fork after configuration (useful if the slave is to
be controlled or monitored by some process).
.LP
Lines beginning with a splat ( # ), optionally preceded by whitespace,
are ignored.
.RE

A simple host file might look like:
.nf
# my first host file
thud
fred
wilma
barney
betty
.fi
This specifies the names of five hosts to be configured in the virtual
machine.

The master pvmd for a group is started by hand on the localhost, and
it starts slaves on each of the remaining hosts using the rsh or rexec
command. The master host may appear on any line of the hostfile, but
must have an entry.

The simple format above works fine if you have the same login name on
all five machines and the name of the master host in your .rhosts
files on the other four.

There are several host file options available:
.TP 10
lo=NAME
Specifies an alternate login name (NAME) to use.
.TP
so=pw 
This is necessary when the remote host cannot trust the
master. Causes the master pvmd to prompt for a password for the remote
host in the tty of the pvmd (note you can't start the master using the
console or background it when using this option) you will see:
Password (honk.cs.utk.edu:manchek): you should type your password for
the remote host. The startup will then continue as normal.
.TP
dx=FILE 
Specifies the path of the pvmd executable. FILE may be a
simple filename, an absolute pathname, or a path relative to the
user's home directory on the remote host. This is mainly useful to aid
in debugging new versions of PVM, but may have other uses.
.TP
ep=PATH 
Specifies a path for the pvmd to search for executable program
components when spawning a new process. The path may have multiple
elements, separated by colons ( : ).
.TP
wd=PATH Specifies a working directory in which all spawned tasks on
this host will execute.
.TP
sp=VALUE 
Specifies the relative computational speed of this host
compared to other hosts in the configuration. VALUE is an integer in
the range [1 - 1000000]
.TP
bx=PATH 
Specifies the debugger program path. Note: the environment
variable PVM_DEBUGGER can also be set.
.TP
so=ms 
Rarely used. Causes the master pvmd to request user to manually
perform the startup of a pvmd on a slave host when rsh and rexec
network services are disabled but IP connectivity exists. See section
"MANUAL STARTUP".
.RE

A dollar sign ( $ ) in an option introduces a variable name, for
example $PVM_ARCH. Names are expanded from environment variables by
each pvmd.

Each of the flags above has a default value. These are: 
.TP 3
lo
     The loginname on the master host. 
.TP
so
     Nothing 
.TP
dx
     $PVM_ROOT/lib/pvmd (or environment variable PVM_DPATH) 
.TP
ep
     pvm3/bin/$PVM_ARCH:$PVM_ROOT/bin/$PVM_ARCH 
.TP
wd
     $HOME 
.TP
sp
     1000 
.TP
bx
     $PVM_ROOT/lib/debugger
.RE
You can change these by adding a line with a star ( * ) in the first
field followed by the options, for example:
.TP 20
* lo=afriend so=pw
This sets new default values for `lo' and `so' for the remainder of
the host file, or until the next `*' line. Options set on the last `*'
line also apply to hosts added dynamically using pvm_addhosts().
.LP
Host options can be set without starting the hosts
automatically. Information on host file lines beginning with `&' is
stored, but the hosts are not started until added using
pvm_addhosts().
.LP
Example hostfile:
.nf
# hostfile for testing on various platforms fonebone
refuge
# installed in /usr/local/here

sigi.cs
     dx=/usr/local/pvm3/lib/pvmd # borrowed accts, "guest", don't trust fonebone 
.fi
.TP
* lo=guest so=pw sn666.jrandom.com cubie.misc.edu # really painful one, must start it by
     hand and share a homedir & igor.firewall.com lo=guest2 so=ms
     ep=bob/pvm3/bin/$PVM_ARCH

.SH MANUAL STARTUP

When adding a host with this option set you will see on the tty of the
pvmd:
.nf
*** Manual startup ***
.fi
Login to "honk" and type:
.nf
$PVM_ROOT/lib/pvmd -S -d0 -nhonk 1 80a9ca95:0cb6 4096 2 80a95c43:0000 Type response:
.fi
after typing the given command on host honk, you should see a line
like:
.nf
ddpro<2312> arch<ALPHA> ip<80a95c43:0a8e> mtu<4096>
.fi
type this line on the tty of the master pvmd. You should then see:
.nf
Thanks
.fi
and the two pvmds should be able to communicate.

Note you can't start the master using the console or background it
when using this option.

.SH STOPPING PVMD3

The preferred method of stopping all the pvmds is to give the halt
command in the PVM console.  This kills all pvm tasks, all the remote
daemons, the local daemon, and finally the console itself. If the
master pvmd is killed manually it should be sent a SIGTERM signal to
allow it to kill the remote pvmds and clean up various files.

The pvmd can be killed in a manner that leaves the file /tmp/pvmd.uid
behind on one or more hosts. Uid is the numeric user ID (from
/etc/passwd) of the user. This will prevent PVM from restarting on
that host. Deletion of this file will fix this problem:
.nf
rm `( grep $user /etc/passwd || ypmatch $user passwd ) | \\
	awk -F: `{print "/tmp/pvmd."$3; exit}'`
.fi