Skip to content

Make predict and apply beam use cached time directions

Mattia Mancini requested to merge use_everybeam_time_cache into master

As available in the latest version of the everybeam to date 0.5.8 it is possible to cache the computation of the station north celestial pole.

In this merge request this functionality is made available and the backwards compatibility is preserved.

Such change results in a test dataset the following speedup:

Timings with lock on get for AipsrcValue<T>::get and AipsrcValue<bool>::getE

Gain cal 2051 s
  1722 s predict
  313 s reordering
  9s computing gains and residuals
  13 ms in writing solutions to disk
  
Timings without lock on get for AipsrcValue<T> and AipsrcValue<bool>

Gain cal 1717 s
  1366 s predict
  320 s reordering
  11 s computing gains and residuals
  13 ms in writing solutions to disk

Timings with erfa and caching time dependent parameters

GainCal 533  s.
  244  s predict
  271  s reordering
  12 s computing gains and residuals
  8 ms in writing solutions to disk
 

 Timings with casacore caching NCP and NCP_pol0
 
 Total DP3 time     699.31 real     15999.5 user         994 system
    0.9% ( 5992 ms) MSReader
   98.6% (  689  s) GainCal gaincal.
           39.1% (  269  s) of it spent in predict
           41.1% (  283  s) of it spent in reordering visibility data
           19.3% (  133  s) of it spent in estimating gains and computing residuals
            0.0% (    8 ms) of it spent in writing gain solutions to disk
        Converged: 0, stalled: 0, non converged: 500, failed: 0
        Iters converged: 0, stalled: 0, non converged: 50, failed: 0
    0.7% ( 4577 ms) MSWriter msout.
     35.1% ( 1606 ms) Creating task
    432.7% (   19  s) Writing (threaded)

Merge request reports