[daip] IMAGR ver. 31DEC07 with new QCLEAN

Eric Greisen egreisen at nrao.edu
Thu Jan 25 12:38:32 EST 2007


Andrzej Marecki writes:
 > On Fri, Jan 19, 2007 at 09:06:13AM -0700, Eric Greisen wrote:
 > 
 > > > Do you plan to further investigate this issue and possible make some 
 > > > additional changes?
 > > 
 > > I think not. [...]
 > 
 > Yet, I noticed that the last run of MNJ changed QCLEAN.FOR because of "weak
 > isolated absolute value". All right, so I rushed to see whether this update
 > would change much in the results of cleaning (for ARCH=SUL, in particular). 
 > And the answer is: not much - see the comparison of the two FITS files
 > containing the maps made before and after the change of QCLEAN.
 > 
 > % cmp -l 3C286_31DEC07.OLD.QCLEAN.FITS 3C286_31DEC07.NEW.QCLEAN.FITS
 >   1140  61  62
 >   1141  71  65
 >   9813  61  62
 >   9814  71  65
 >   9827  60  61
 >   9828  71  61
 >   9831  65  60
 >   9833  63  64
 >   9834  61  70
 >  13301  62  65
 >  13424  63  61
 > 
 > Also, I compared the maps made with IMAGR with the new QCLEAN - same
 > uv-data, same parameters - but on different platforms and it looks clear
 > that the result of cleaning *is* (still) architecture dependent as even
 > after this latest update the results achieved for ARCH's SUL and LINUX
 > slightly (but clearly) differ.

This affect has been known for 20+ years.  Clean is an adaptive
algorithm.  At first it will run the same on all machines.  But in
time the image will contain numerous pixels which you and I would
describe as "equal".  But not to a computer - which will find that one
that is 1 or more bits greater than the others.  Slight differences in
arithmetic units, round-off algorithms, or the order of computation
produced by differing compilers will cause the largest pixel to differ
between machines.  Once a different pixel has been selected, Clean
will go down a completely different path.  This is because it has a
bias against selecting adjacent pixels and will select a pixel one
beam or more away from the previous normally.  The difference image
between one architecture and another will look like a smoothed bed of
nails on the source.  This is probably part of why it is observed that
Clean moves noise from the field onto the sources - lowering the noise
below theoretical between sources and raising it on source.

If you compare IMAGRs in previous versions you will also find
differences beween Linux and SUL as we have since we first started
testing these things.  Those differences can be a help in deciding
what to believe and what your real noise levels are.

Eric Greisen




More information about the Daip mailing list