-
Notifications
You must be signed in to change notification settings - Fork 284
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
Refactor area weighted regridding, improve performance #5543
Refactor area weighted regridding, improve performance #5543
Conversation
for more information, see https://pre-commit.ci
Performance Benchmark Report: 86aa0d1Performance shifts
Full benchmark results
Generated by GHA run |
Codecov ReportAttention:
Additional details and impacted files@@ Coverage Diff @@
## main #5543 +/- ##
==========================================
+ Coverage 89.41% 89.55% +0.13%
==========================================
Files 89 89
Lines 22539 22495 -44
Branches 5387 5351 -36
==========================================
- Hits 20154 20146 -8
+ Misses 1639 1616 -23
+ Partials 746 733 -13 ☔ View full report in Codecov by Sentry. |
Note: this PR builds a wights matrix and performs regridding with the expectation that the standard cube has the last two dimensions as the y and x dimension (see the change made in this commit 90130cc). This decision is made in order to maintain consistency with patterns established in existing regridders, e.g. the ordering of iris/lib/iris/analysis/_regrid.py Line 365 in e0850eb
This cosistency is important so that further unification of regridding can take place without having to change the expected ordering of weights matrices associated with regridders. This decision is also in keeping with recomendations in CF conventions, see http://cfconventions.org/Data/cf-conventions/cf-conventions-1.10/cf-conventions.html#dimensions |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fantastic performance benefits, great work. Just a few minor changes.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great work @stephenworsley, merging this and we will add a whatsnew entry in a seperate PR
* upstream/main: Mergeback of `FEATURE_chunk_control` branch (SciTools#5588) [CI Bot] environment lockfiles auto-update (SciTools#5547) Mergeback of "Feature _split_attrs" branch (SciTools#5152) add whatsnew (SciTools#5596) Refactor area weighted regridding, improve performance (SciTools#5543) Allowing exemption to axis guessing on coords (SciTools#5551)
* main: DOCS: Numpydocs1 (SciTools#5578) add links to scitools-classroom repo. (SciTools#5609) Feedstock rc branch management in do-nothing script (SciTools#5515) Relocated the Technical Papers documentation to Further Topics. (SciTools#5602) Fix pp save of realization coordinate (SciTools#5568) Bump actions/checkout from 3 to 4 (SciTools#5460) Bump actions/github-script from 6 to 7 (SciTools#5580) Bump conda-incubator/setup-miniconda from 2 to 3 (SciTools#5607) CI: specify matplotlib-base (SciTools#5606) Mergeback of `FEATURE_chunk_control` branch (SciTools#5588) [CI Bot] environment lockfiles auto-update (SciTools#5547) Mergeback of "Feature _split_attrs" branch (SciTools#5152) add whatsnew (SciTools#5596) Refactor area weighted regridding, improve performance (SciTools#5543) Allowing exemption to axis guessing on coords (SciTools#5551)
🚀 Pull Request
Description
Implements #5365.