pvm_xstarpvm_xstar has a simple text-mode interface, and will most often be
executed directly from the interactive command line. A typical
session might resemble:
linux% pvm_xstar /home/mnoble/data <RETURN>
pvm_xstar Version 0.3.0
Using PVM virtual machine id: pvm_xstar-17474
BEGIN: Fri Nov 21 16:33:13 EST 2008
Output files will be written to: /home/mnoble/data/pvm_xstar
xstinitable v1.0
Compiled: Mar 11 2008 17:09:25
spectrum type?[pow] <RETURN>
radiation temperature or alpha soft maximum?[-1.] <RETURN>
covering fraction soft maximum (0.:1.) [1.] <RETURN>
density soft maximum (cm**-3) (0.:1.E18) [1.E11] <RETURN>
...
Slave running pvm_xstar_slave spawned on rabble with task-id 262147
Slave running pvm_xstar_slave spawned on node12 with task-id 524289
Slave running pvm_xstar_slave spawned on node11 with task-id 786433
...
The working directory is a mandatory parameter which specifies where
both intermediate results as well as the final output table model
will be written. pvm_xstar requires that XSTAR be properly configured
prior to its execution, and attempts to verify this by examining the
$HEADAS environment variable.
After prompting for XSTAR physical parameters pvm_xstar attempts to launch
a virtual machine and submit the XSTAR job list. By default pvm_xstar
looks for a PVM hosts file in $HOME/.pvmhosts, but that can be customized
with the --h option described below. To allow multiple PVM workloads
to be processed simultaneously sans interference, pvm_xstar tags
each virtual machine it launches with a unique identifier (PVM_VMID, as
described in pvm_intro(1) man pages). By default this identifier will
be pvm_xstar-XXXXX where XXXXX is a 5-digit integer generated
pseudo-randomly each time pvm_xstar is invoked, however the user can
specifying a custom id by using the -v option.
Invoking pvm_xstar with ---help or any unrecognized option will cause
it to emit a help message:
pvm_xstar: manages parallel execution of multiple XSTAR jobs, with PVM
Version 0.3.2
Usage: pvm_xstar [options] WorkDir [xstinitable parameters | joblist]
WorkDir must be writable and $HEADAS must be configured.
Supported options are:
-h <file> use this file to launch PVM, instead of $HOME/.pvmhosts
-i <exe> use exe to initialize work dir/env of each parallel job
-l <log> redirect console output to log file
-nph <N> set max number processes per host to N (default: 4)
-p ping: returns path through which pvm_xstar was invoked
-v <vmid> use this virtual machine id, instead of pvm_xstar-XXXXX
-V display the version number of pvm_xstar
Normally xstinitable will be launched to prompt for XSTAR physical
parameters and generate a list of XSTAR jobs to run in parallel.
This can be customized by supplying xstinitable parameters on the
command line (such as mode=h) OR by supplying the name of an
existing joblist file, in which case xstinitable will not be run
nor will the generated spectra be collated into a single table
model with xstar2table.
By default pvm_xstar will use at most 4 processors per host in the
virtual machine. If you want to change that, say to use all 8 cores
of a multicore workstation, specify the option -nph 8.
Both XSTAR and pvm_xstar can emit large volumes of output to the console.
For this reason we advocate the use of a log file, such as
master% pvm_xstar -l run.log ...
While this may seem superfluous in light of standard UNIX output redirection
master% pvm_xstar ... > run-stdout.log
it isn't, because the latter would also capture the prompts for XSTAR
input parameters, which is undesirable for interactive use.
Progress can be monitored during long-running computations by viewing
a snapshot of the log directly in an editor, or using tail to see
incremental updates:
master% tail -f run.log