Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Preprocess: Speedup run time #981

Open
msilvafe opened this issue Oct 2, 2024 · 3 comments
Open

Preprocess: Speedup run time #981

msilvafe opened this issue Oct 2, 2024 · 3 comments
Assignees

Comments

@msilvafe
Copy link
Contributor

msilvafe commented Oct 2, 2024

This is a general effort for profiling, and then speeding up underlying code by:

  1. Evaluating if there are inefficiencies in the implementation
  2. Evaluating if there's repeated or unneeded steps
  3. Replacing the slowest steps with python wrapped C-code where appropriate
  4. Evaluating our top-bottom parallelization strategy
@skhrg
Copy link
Member

skhrg commented Oct 2, 2024

I had brought this up on slack before. But I think numba is a pretty safe and stable way to speed up a lot of this stuff without needing to write as much C. Or at least to provide intertim speedups.

At one point @mhasself seemed to be anti-JIT but I would be curious to know if that stance has softened.

@mmccrackan
Copy link
Contributor

Just to follow up on today's FLP telecon discussion on profiling, here is the profiling file used to make the profiling figure and table from the recent satp3 site-pipeline run. You can generate the plot and table by installing snakeviz and running it on this file.

In terms of speeding things up, I have so3g C++ code in the works for the main preprocessing time-sinks (interpolation, PSD calculation, and noise fitting).

combined_profile.txt

@msilvafe
Copy link
Contributor Author

We should decide when we think this issue is resolved i.e. the speed up is good-enough. @mhasself you had a target in mind of the time it should take for processing which I thought was order 10 sec per obs-wafer-band does hitting 10 sec sound like a safe target? We have a ways to go for that...maybe we'll have @mmccrackan rewrite everything in C in so3g

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants