Fix libomp ABI bug - #1593
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Enterprise Run ID: 📒 Files selected for processing (1)
📝 WalkthroughWalkthroughChangesRelease alignment and package references
Fast MPS parsing and runtime behavior
Estimated code review effort: 3 (Moderate) | ~25 minutes Suggested reviewers: 🚥 Pre-merge checks | ✅ 3 | ❌ 2❌ Failed checks (2 warnings)
✅ Passed checks (3 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
CI Test Summary8 failed · 23 passed · 0 skipped |
|
test failures unrelated. addressed in #1594 |
|
/merge |
RAPIDS main moved to 26.10 after burndown; local builds were pulling rapids-cmake from RAPIDS main (26.10) while the conda env has 26.08 packages, breaking the build. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> Signed-off-by: Ramakrishna Prabhu <ramakrishnap@nvidia.com>
rapids-cmake uses release/X.Y branch naming, not branch-X.Y. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> Signed-off-by: Ramakrishna Prabhu <ramakrishnap@nvidia.com>
rapidsai/shared-workflows main moved to 26.10, causing wheel builds to use 26.10 CI containers. Pin to release/26.08 to match the RAPIDS_BRANCH. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> Signed-off-by: Ramakrishna Prabhu <ramakrishnap@nvidia.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> Signed-off-by: Ramakrishna Prabhu <ramakrishnap@nvidia.com>
RMM defines device_uvector inside namespace RMM_NAMESPACE, which expands
to `__attribute__((visibility("default"))) rmm` on GCC/Linux. A forward
declaration in plain `namespace rmm {}` creates a second, distinct class
visible to NVCC, causing '"rmm::device_uvector" is ambiguous' errors.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Signed-off-by: Ramakrishna Prabhu <ramakrishnap@nvidia.com>
…ith include" This reverts commit c9ae05a. Signed-off-by: Ramakrishna Prabhu <ramakrishnap@nvidia.com>
rmm 26.08.00a61 introduced inline namespace ABI versioning: device_uvector now lives in rmm::_RMM_26_8 (exposed as rmm::device_uvector via inline namespace). A plain-namespace forward declaration creates a second, distinct rmm::device_uvector, causing '"rmm::device_uvector" is ambiguous' errors in NVCC. Replace with the full header include. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> Signed-off-by: Ramakrishna Prabhu <ramakrishnap@nvidia.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> Signed-off-by: Ramakrishna Prabhu <ramakrishnap@nvidia.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> Signed-off-by: Ramakrishna Prabhu <ramakrishnap@nvidia.com>
84a6071 to
c21f7a8
Compare
|
/ok to test c21f7a8 |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@cpp/src/io/mps_parser.cpp`:
- Around line 1720-1725: Instantiate check_symmetric_offdiagonal_pairs for
int64_t with both float and double value types alongside the existing
canonicalize_coo_matrix<int64_t, ...> explicit instantiations. Ensure these
emitted symbols satisfy the calls from parse_mps_fast_file<int64_t,
float/double> in the fast-parser translation unit.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Enterprise
Run ID: e5b06e46-be59-40c0-bb10-c11ddf171c90
📒 Files selected for processing (15)
.github/workflows/build.yaml.github/workflows/multi_gpu_cpp_test.yaml.github/workflows/pr.yaml.github/workflows/test.yaml.github/workflows/trigger-breaking-change-alert.yamlRAPIDS_BRANCHREADME.mdcpp/src/branch_and_bound/branch_and_bound.cppcpp/src/io/experimental_mps_fast/fast_parser.cppcpp/src/io/mps_parser.cppcpp/src/pdlp/utilities/problem_checking.cuhcpp/tests/linear_programming/experimental_mps_fast/fast_parser_edge_test.cpppython/cuopt/cuopt/tests/linear_programming/test_incumbent_callbacks.pypython/cuopt/cuopt/tests/linear_programming/test_lp_solver.pyskills/cuopt-developer/SKILL.md
💤 Files with no reviewable changes (1)
- python/cuopt/cuopt/tests/linear_programming/test_lp_solver.py
🚧 Files skipped from review as they are similar to previous changes (2)
- cpp/src/branch_and_bound/branch_and_bound.cpp
- python/cuopt/cuopt/tests/linear_programming/test_incumbent_callbacks.py
|
/ok to test 67c5df3 |
This PR adds a workaround resolving a buggy interaction between GCC's generated OMP helpers and LLVM's OpenMP runtime.
This was introduced as a latent issue in the Recursive RINS PR, and then exposed by the fast MPS PR which moved the wheel's runtime to LLVM OpenMP.
In more details:
I will file a min repro and bug to LLVM later.
closes #1592
Description
Issue
Checklist