All SATAN functions are available interactively as well as in
batch, so the user may separate his analysis work into
an interactive part for development and debugging and a batch part
for production runs.
Whereas interactive sessions are useful for testing and debugging
on small subsets of data, batch execution is recommended
for production runs processing
large amounts of data and consuming large amounts of CPU
time.
The basic tool to support batch processing is the
EXEC
command
which allows to collect all necessary commands into a single file
and execute them without user intervention.
EXEC
files can also be used within standard input redirection.
Since session protocols represent re-usable command lists they
might be used to re-run an interactive session in batch mode.
Given a user analysis program myanalysis
and a
command list mycommands.exec
the UNIX shell command
nohup myanalysis <mycommands.exec 2>my.out >my.err &will invoke the analysis in background, with
stdout
and stderr
redirected to the files my.out
and my.err
in order to save all outputs.
A session protocol is generated automatically.
stdin
is not connected to
a terminal. So all commands must provide all
necessary inputs and the system does not ask for confirmation
of potentially dangerous actions.
inp / dsn(lmdv.first) iwait / eof inp / dsn(lmdv.second) iwait / eof ... adump * * / lib(sis9907) run(test) exit
IWAIT
,
it is used to synchronize the I/O (analysis) thread with the command
execution.
After listmode analysis is completed
all accumulated data elements are dumped into a data element library
for later inspection.
Last updated: M.Kraemer@gsi.de, 3-Aug-1999