[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