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

PR for dask support to ARIAtools - WIP #379

Draft
wants to merge 56 commits into
base: dev
Choose a base branch
from
Draft

Conversation

mgovorcin
Copy link
Collaborator

@mgovorcin mgovorcin commented Aug 17, 2023

opening PR as placeholder for developments to include dask support to ARIAtools

So far test on unwrappedPhase, coherence and incidenceAngle, and can see improvement in run time for the 507 scenes/pairs:

  • unwrappedPhase/connectedComponents - from 5h to 30min (with 30 jobs)
  • coherence - run time 4 min (with 30 jobs). did not test how long would take to loop it by default
  • incidence angle - there is a memory leak, I add workaround solution to restart dask client after every loop,, run time is 36 min (with 20 jobs). here we need to be careful with number of jobs as one jobs takes almost 10gb of ram memory

Did not have time to work on parallel export of correction layers, TODO

@cmarshak
Copy link
Collaborator

cmarshak commented Aug 17, 2023

Out of curiousity, why did you choose dask over builtins like Pool/concurrent.futures? I know dask really shines with chunking xarray datasets, though from skimming I see you are just using the high level client which is basically multiprocessing?

Honestly, whatever works. A new popular library that I saw on hacker news recently is this: https://github.com/sybrenjansen/mpire

It may be helpful to look on JPL slack for discussions about dask. Or look at bopen's use of dask in their work: https://github.com/search?q=repo%3Abopen%2Fsarsen%20dask&type=code

Good luck, Marin. Hope to learn something here.

@cmarshak
Copy link
Collaborator

Also, if there is time / interest (not now), sharing some interesting way to benchmark code reproducibly: https://github.com/scikit-image/scikit-image/blob/main/CONTRIBUTING.rst#benchmarks

@bbuzz31 bbuzz31 marked this pull request as draft August 17, 2023 19:43
@review-notebook-app
Copy link

Check out this pull request on  ReviewNB

See visual diffs & provide feedback on Jupyter Notebooks.


Powered by ReviewNB

@cmarshak
Copy link
Collaborator

cmarshak commented Sep 1, 2023

Hey I got a notification that there was notebooks in this PR - make sure to put notebooks in folders that won't be distributed with ARIA-tools if this is only showing how to use the current library.

You don't want to distribute large notebook files if they only serve as documentation.

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

Successfully merging this pull request may close these issues.

None yet

4 participants