Make OpenMP range algebra buildable with MSVC
- Dominant language
- C++
- Stars
- 55
- Forks
- 59
- PR merge metrics
- No merged PRs in 30d
Description
Current implementation of openmp_range_algebra uses unsigned type (size_t) as index in for loops that are parallelized by OpenMP. This is not supported by MSVC. Additionally, as MSVC is still stuck with OpenMP 2.0 support, the OpenMP reduction syntax used by `norm_inf` also does not compile. The following patch fixes the issue; at least of MSVC 14.
[0001-Make-OpenMP-range-algebra-buildable-with-MSVC.txt](https://github.com/boostorg/odeint/files/2752406/0001-Make-OpenMP-range-algebra-buildable-with-MSVC.txt)
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by reviewing the openmp_range_algebra implementation and the norm_inf reduction mentioned in the issue, then compare them with the attached patch. Check the result with MSVC 14 and its OpenMP 2.0 support; done means the range algebra builds successfully, including norm_inf.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- hpc
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100