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

bump devops tests to include checks for notebook badges #1453

Merged
merged 36 commits into from
Dec 18, 2024

Conversation

slayoo
Copy link
Member

@slayoo slayoo commented Dec 5, 2024

No description provided.

This was referenced Dec 5, 2024
@slayoo slayoo linked an issue Dec 5, 2024 that may be closed by this pull request
@AgnieszkaZaba
Copy link
Collaborator

I need someone else to rerun demos with numba.

@AgnieszkaZaba
Copy link
Collaborator

@slayoo only one notebook should be incorrect: it's performance comparison
Inside is a comparison between using numba and ThrustRC. And running it without numba is not only very long but also meaningless.

Don't know why the others are wrong, I change them many times. Will try once again.

@slayoo
Copy link
Member Author

slayoo commented Dec 11, 2024

@slayoo only one notebook should be incorrect: it's performance comparison Inside is a comparison between using numba and ThrustRC. And running it without numba is not only very long but also meaningless.

Don't know why the others are wrong, I change them many times. Will try once again.

@AgnieszkaZaba, Numba is enabled when running the notebooks on CI. There are no GPUs available on CI, but we have FakeThrustRTC mock class specifically developed to emulate ThrustRTC using Numba. I'd say running these is not meaningless as it ensures that the notebook code is compatible with the evolving PySDM API, so if one runs it on a local machine, it's likely that it will actually work.

@AgnieszkaZaba
Copy link
Collaborator

@slayoo only one notebook should be incorrect: it's performance comparison Inside is a comparison between using numba and ThrustRC. And running it without numba is not only very long but also meaningless.
Don't know why the others are wrong, I change them many times. Will try once again.

@AgnieszkaZaba, Numba is enabled when running the notebooks on CI. There are no GPUs available on CI, but we have FakeThrustRTC mock class specifically developed to emulate ThrustRTC using Numba. I'd say running these is not meaningless as it ensures that the notebook code is compatible with the evolving PySDM API, so if one runs it on a local machine, it's likely that it will actually work.

Ok, you're right. I'm still waiting for Jupyter to finish running :)

@slayoo
Copy link
Member Author

slayoo commented Dec 11, 2024

@slayoo only one notebook should be incorrect: it's performance comparison Inside is a comparison between using numba and ThrustRC. And running it without numba is not only very long but also meaningless.
Don't know why the others are wrong, I change them many times. Will try once again.

@AgnieszkaZaba, Numba is enabled when running the notebooks on CI. There are no GPUs available on CI, but we have FakeThrustRTC mock class specifically developed to emulate ThrustRTC using Numba. I'd say running these is not meaningless as it ensures that the notebook code is compatible with the evolving PySDM API, so if one runs it on a local machine, it's likely that it will actually work.

Ok, you're right. I'm still waiting for Jupyter to finish running :)

Ah, I didn't realise you are referring to running the GPU tests locally on a machine without GPU to generate notebook output. That is indeed meaningless. Perhaps, we could convert this notebook into a .py script so that it would be stored in the repo, but without output?

@AgnieszkaZaba
Copy link
Collaborator

@slayoo only one notebook should be incorrect: it's performance comparison Inside is a comparison between using numba and ThrustRC. And running it without numba is not only very long but also meaningless.
Don't know why the others are wrong, I change them many times. Will try once again.

@AgnieszkaZaba, Numba is enabled when running the notebooks on CI. There are no GPUs available on CI, but we have FakeThrustRTC mock class specifically developed to emulate ThrustRTC using Numba. I'd say running these is not meaningless as it ensures that the notebook code is compatible with the evolving PySDM API, so if one runs it on a local machine, it's likely that it will actually work.

Ok, you're right. I'm still waiting for Jupyter to finish running :)

Ah, I didn't realise you are referring to running the GPU tests locally on a machine without GPU to generate notebook output. That is indeed meaningless. Perhaps, we could convert this notebook into a .py script so that it would be stored in the repo, but without output?

Hmm I feel like this output is important and should be stored somewhere. Not necessarily in notebook. I'm trying to run it on Colab. Keep disconnecting me but program is still running and giving results, so maybe will be ok.

@slayoo
Copy link
Member Author

slayoo commented Dec 11, 2024

@slayoo only one notebook should be incorrect: it's performance comparison Inside is a comparison between using numba and ThrustRC. And running it without numba is not only very long but also meaningless.
Don't know why the others are wrong, I change them many times. Will try once again.

@AgnieszkaZaba, Numba is enabled when running the notebooks on CI. There are no GPUs available on CI, but we have FakeThrustRTC mock class specifically developed to emulate ThrustRTC using Numba. I'd say running these is not meaningless as it ensures that the notebook code is compatible with the evolving PySDM API, so if one runs it on a local machine, it's likely that it will actually work.

Ok, you're right. I'm still waiting for Jupyter to finish running :)

Ah, I didn't realise you are referring to running the GPU tests locally on a machine without GPU to generate notebook output. That is indeed meaningless. Perhaps, we could convert this notebook into a .py script so that it would be stored in the repo, but without output?

Hmm I feel like this output is important and should be stored somewhere. Not necessarily in notebook. I'm trying to run it on Colab. Keep disconnecting me but program is still running and giving results, so maybe will be ok.

The output is also persistently stored in the UJ AP repo (pages 29-30): https://www.ap.uj.edu.pl/diplomas/attachments/file/download/168064/

@AgnieszkaZaba
Copy link
Collaborator

@slayoo only one notebook should be incorrect: it's performance comparison Inside is a comparison between using numba and ThrustRC. And running it without numba is not only very long but also meaningless.
Don't know why the others are wrong, I change them many times. Will try once again.

@AgnieszkaZaba, Numba is enabled when running the notebooks on CI. There are no GPUs available on CI, but we have FakeThrustRTC mock class specifically developed to emulate ThrustRTC using Numba. I'd say running these is not meaningless as it ensures that the notebook code is compatible with the evolving PySDM API, so if one runs it on a local machine, it's likely that it will actually work.

Ok, you're right. I'm still waiting for Jupyter to finish running :)

Ah, I didn't realise you are referring to running the GPU tests locally on a machine without GPU to generate notebook output. That is indeed meaningless. Perhaps, we could convert this notebook into a .py script so that it would be stored in the repo, but without output?

Hmm I feel like this output is important and should be stored somewhere. Not necessarily in notebook. I'm trying to run it on Colab. Keep disconnecting me but program is still running and giving results, so maybe will be ok.

The output is also persistently stored in the UJ AP repo (pages 29-30): https://www.ap.uj.edu.pl/diplomas/attachments/file/download/168064/

That is great! I will add this link to the notebook.
And maybe .py will be better. Not sure. Because even with GPU run time is long. So maybe shorten in notebook? Or change to .py as you suggested..

@slayoo
Copy link
Member Author

slayoo commented Dec 12, 2024

@slayoo only one notebook should be incorrect: it's performance comparison Inside is a comparison between using numba and ThrustRC. And running it without numba is not only very long but also meaningless.
Don't know why the others are wrong, I change them many times. Will try once again.

@AgnieszkaZaba, Numba is enabled when running the notebooks on CI. There are no GPUs available on CI, but we have FakeThrustRTC mock class specifically developed to emulate ThrustRTC using Numba. I'd say running these is not meaningless as it ensures that the notebook code is compatible with the evolving PySDM API, so if one runs it on a local machine, it's likely that it will actually work.

Ok, you're right. I'm still waiting for Jupyter to finish running :)

Ah, I didn't realise you are referring to running the GPU tests locally on a machine without GPU to generate notebook output. That is indeed meaningless. Perhaps, we could convert this notebook into a .py script so that it would be stored in the repo, but without output?

Hmm I feel like this output is important and should be stored somewhere. Not necessarily in notebook. I'm trying to run it on Colab. Keep disconnecting me but program is still running and giving results, so maybe will be ok.

The output is also persistently stored in the UJ AP repo (pages 29-30): https://www.ap.uj.edu.pl/diplomas/attachments/file/download/168064/

That is great! I will add this link to the notebook. And maybe .py will be better. Not sure. Because even with GPU run time is long. So maybe shorten in notebook? Or change to .py as you suggested..

Thank you!
GPU times should be shorter than CPU=Numba (for large-enough domain, as depicted in the thesis plots).

@AgnieszkaZaba
Copy link
Collaborator

@slayoo thanks for rebasing, I didn't succeed with that.

Right now I'm trying to run notebooks but after 5 hours still do not have results

@slayoo
Copy link
Member Author

slayoo commented Dec 14, 2024

@slayoo thanks for rebasing, I didn't succeed with that.

This was a merge. For PR branches, merges are usually straightforward, and thus much simpler than rebasing. Rebasing works best for the always-clean main branch.

Right now I'm trying to run notebooks but after 5 hours still do not have results

Which notebooks take so long?

@AgnieszkaZaba
Copy link
Collaborator

@slayoo thanks for rebasing, I didn't succeed with that.

This was a merge. For PR branches, merges are usually straightforward, and thus much simpler than rebasing. Rebasing works best for the always-clean main branch.

aa ok, still dont fully understand, but I will get there.

Right now I'm trying to run notebooks but after 5 hours still do not have results

Which notebooks take so long?

From deJong_Mackay_et_al_2023 fig9 and figs_3_4_5

@slayoo
Copy link
Member Author

slayoo commented Dec 15, 2024

@slayoo thanks for rebasing, I didn't succeed with that.

This was a merge. For PR branches, merges are usually straightforward, and thus much simpler than rebasing. Rebasing works best for the always-clean main branch.

aa ok, still dont fully understand, but I will get there.

https://learngitbranching.js.org/

@slayoo slayoo changed the title bump devops tests bump devops tests to include checks for notebook badges Dec 15, 2024
@AgnieszkaZaba
Copy link
Collaborator

@slayoo thanks for rebasing, I didn't succeed with that.

This was a merge. For PR branches, merges are usually straightforward, and thus much simpler than rebasing. Rebasing works best for the always-clean main branch.

aa ok, still dont fully understand, but I will get there.

Right now I'm trying to run notebooks but after 5 hours still do not have results

Which notebooks take so long?

From deJong_Mackay_et_al_2023 fig9 and figs_3_4_5

For both notebook it was around 11 hours 😮

Copy link

codecov bot commented Dec 17, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 85.22%. Comparing base (5fbc411) to head (2fb371e).
Report is 3 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #1453   +/-   ##
=======================================
  Coverage   85.22%   85.22%           
=======================================
  Files         376      376           
  Lines        9266     9266           
=======================================
  Hits         7897     7897           
  Misses       1369     1369           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

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.

bump devops tests
2 participants