Skip to content

Add OpenMP to build and enable 5-D multilinear interpolation - #131

Open
djhoese wants to merge 1 commit into
pytroll:mainfrom
djhoese:bugfix-openmp
Open

Add OpenMP to build and enable 5-D multilinear interpolation#131
djhoese wants to merge 1 commit into
pytroll:mainfrom
djhoese:bugfix-openmp

Conversation

@djhoese

@djhoese djhoese commented Sep 6, 2026

Copy link
Copy Markdown
Member

Claude pointed out that 5D interpolation wasn't enabled in the multilinear module, something I'd noticed before. Claude also pointed out that multilinear uses prange which is an OpenMP multithreading pragma, but geotiepoints was never built with the necessary openmp flags to use it. Claude's understanding is that this isn't a problem and the interpolation should work like this. If the original author of these interpolators knows (@mraspaud @adybbroe ?) for sure, it'd be great to nail this down.

Claude's benchmark results:

Timing (d=4, orders=[20]⁴, 2 value rows, 2M points): 81.8 ms at 1 thread → 21.4 ms at 8 (~3.8×).

I told Claude to pick OpenMP knowledge from pykdtree where OpenMP has been a feature for a long time.

  • Closes #xxxx
  • Tests added
  • Tests passed
  • Passes git diff origin/main **/*py | flake8 --diff
  • Fully documented

@djhoese
djhoese requested review from adybbroe and mraspaud September 6, 2026 20:28
@djhoese djhoese self-assigned this Sep 6, 2026
@codecov

codecov Bot commented Sep 6, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 96.42857% with 1 line in your changes missing coverage. Please review.
✅ Project coverage is 94.26%. Comparing base (e74a0ef) to head (b2b878b).
⚠️ Report is 1 commits behind head on main.

Files with missing lines Patch % Lines
geotiepoints/multilinear_cython.pyx 75.00% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #131      +/-   ##
==========================================
+ Coverage   89.04%   94.26%   +5.22%     
==========================================
  Files          20       20              
  Lines        1515     1605      +90     
==========================================
+ Hits         1349     1513     +164     
+ Misses        166       92      -74     
Flag Coverage Δ
unittests 94.26% <96.42%> (+5.22%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

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

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant