grass
grass copied to clipboard
r.resamp.interp: implement parallelization with OpenMP
- Update Makefile
- Add memory and nprocs parameter
- Implement parallelization
Checklists before merging:
- [x] code review
- [x] CI passes
- [ ] performance section in documentation
- [ ] confirm values in test are from the old version (run new tests with old code)
- [ ] run tests without OpenMP
- [ ] visual check of results with custom data ("looks good" with non NC SPM dataset)
- [ ] check that it works with really large data (16B cells)
- [ ] run multi-core benchmark (no degraded performance with many threads)
- [ ] run one core benchmark on many resolutions or many cell
- [x] rebase to main
Please add a test script.
This is for 7 billion cells.
It does not scale great, but it's still a nice improvement, it can decrease time roughly by half.
I believe this is ready to merge.