[daip] New Staff Reply - [!OGI-932442]: Improving the Performance of AIPS
Eric Greisen
do-not-reply at nrao.edu
Fri Oct 15 16:05:46 EDT 2010
New Staff Reply: Improving the Performance of AIPS
I think that you do not understand AIPS fully at present.
1. All I/O is done by C - no Fortran open, read, write is
done except for messages to the xterm and the like. Perhaps
FORT_BUFFERED will help those but at the cost of some loss of
synchronicity.
2. AIPS is in fact over 400 separate programs. If you wish to
improve performance, you must define which of these you
would like to improve. AIPS.EXE is in fact a TV display
and parameter preparation program mostly and its performance
is not normally important. Iterative imaging tasks primarily
IMAGR would benefit from creative software work and would be
well worth speeding up. But the algorithm must still function.
For example, loading more of the image into ram for the minor
Clean cycles can make the program run very much slower with
no benefit. I have made the task use the memory it needs which
is often quite modest. The SETMAXAP verb in AIPS.EXE should be
considered.
Without knowing exactly what sort of program you care about, it
is hard for me to be specific. Not only IMAGR for example, but
also the sort of problem you are addressing (spectral line vs
bandwidth synthesis continuum, single facet vs multi-facet,
single scale vs multi-scale, etc).
3. I have been tempted but not yet tried the automatic parallel options
in the compiler. It is my experience (and we used vector machines
well ahead of most people) that wholesale vectorization/parallelization
will slow the code down quite a lot since much of the code is really
not suited for such things. However, the source code area known by the
name $QPSAP is used for the high-performance computing and would be the
area I would try first. Then rebuild $QPGOOP/IMAGR and see what happens.
Fortran is hard to make thread safe and AIPS is likely to have issues
in that area.
bcotton at nrao.edu has a package called obit that works with AIPS and
which has numerous things done to make it go parallel in the right
circumstances. It might be worth considering - Bill is very skillful.
4. RAID 0 is probably what the user would want - performance with less
redundancy. The data can always be reloaded from the masters unless
you are having majoir reliability issues.
Eric Greisen
Ticket Details
===================
Ticket ID: OGI-932442
Department: AIPS Data Processing
Priority: Default
Status: Closed
Link: https://help.nrao.edu/staff/index.php?_m=tickets&_a=viewticket&ticketid=434
More information about the Daip
mailing list