Build: #342 was successful Changes by Patrick Bos

Build result summary

Details

Completed
Queue duration
< 1 second
Duration
2 seconds
Labels
None
Agent
casaci-4.cv.nrao.edu test agent8
Revision
9d92660b6352ae18ac6af81eabaabfe51aad8484
Successful since
#332 ()

Code commits

Author Commit Message Commit date
Patrick Bos Patrick Bos 9d92660b6352ae18ac6af81eabaabfe51aad8484 Pull request #1876: PIPE-3088 speedup ms zenith compute
Merge in PIPE/pipeline from PIPE-3088-speedup-ms-zenith-compute to main

* commit 'e65f1dbba5eea0d2a8b5f6c20a45e12d046cb186':
  PIPE-3088: relax test tolerance for zenith distance regression test
  PIPE-3088: remove redundant me.doframe(obs_pos) from inner loop
  PIPE-3088: add approx regression test for compute_zd_telmjd_for_ms
  PIPE-3088: speed up compute_zd_telmjd_for_ms by 1.8x
  PIPE-3088: speed up compute_zd_telmjd_for_ms while preserving exact output
  PIPE-3088: add regression test for compute_zd_telmjd_for_ms
Rui Xue Rui Xue e65f1dbba5eea0d2a8b5f6c20a45e12d046cb186 m PIPE-3088: relax test tolerance for zenith distance regression test
E. G. Patrick Bos <e.g.p.bos@rug.nl> E. G. Patrick Bos <e.g.p.bos@rug.nl> b8dcffce28ca21b6d86efc2f77ea611604beb2a2 m PIPE-3088: remove redundant me.doframe(obs_pos) from inner loop
The observatory position frame is already set once before all loops.
Calls to me.doframe() for the epoch type do not affect the
observatory frame, so re-doing doframe(obs_pos) on every timestamp
is unnecessary.

Timing (compute_zd_telmjd_for_ms, 50 runs, 74 timestamps):
  before (d851488da):  12.629 ms per call
  after  (this commit):  9.204 ms per call
  speedup: 1.37x (27% reduction)

Cumulative vs main (22.901 ms): 2.49x speedup

Exact output preserved (verified by test_telmjd_exact).
E. G. Patrick Bos <e.g.p.bos@rug.nl> E. G. Patrick Bos <e.g.p.bos@rug.nl> d851488da01839f0d7a6d2ff4b368d7c6649c944 m PIPE-3088: add approx regression test for compute_zd_telmjd_for_ms
Also we remove the exact ZD test, which no longer passes, and replace it by the
approx test with rel=1e-10.
E. G. Patrick Bos <egpbos@gmail.com> E. G. Patrick Bos <egpbos@gmail.com> 3bdcf767c20a0a8275207e3a9edb3afc27ae26b1 m PIPE-3088: speed up compute_zd_telmjd_for_ms by 1.8x
Optimizations:
- Pre-compute observatory position once instead of per iteration
- Mutate reusable epoch dict in-place instead of me.epoch() + datetime.isoformat()
- Eliminate casa_tools.quanta.quantity() and quanta.convert() calls
- Inline compute_zenith_distance to avoid function call overhead

Measured: 22.50 ms -> 12.61 ms on 74 timestamps (1 field TARGET)

Note: this commit does not pass the exact test, which is fixed in the next commit.

Jira issues

IssueDescriptionStatus
Unknown Issue TypePIPE-3088Could not obtain issue details from Jira