Skip to content

Conversation

@rgsl888prabhu
Copy link
Collaborator

Checklist

  • I am familiar with the Contributing Guidelines.
  • Testing
    • New or existing tests cover these changes
    • Added tests
    • Created an issue to follow-up
    • NA
  • Documentation
    • The documentation is up to date with these changes
    • Added new documentation
    • NA

@rgsl888prabhu rgsl888prabhu added non-breaking Introduces a non-breaking change improvement Improves an existing functionality labels Jan 14, 2026
@copy-pr-bot
Copy link

copy-pr-bot bot commented Jan 14, 2026

Auto-sync is disabled for draft pull requests in this repository. Workflows must be run manually.

Contributors can view more details about this message here.

Iroy30 and others added 3 commits January 15, 2026 15:51
## Issue

Authors:
  - Ishika Roy (https://github.com/Iroy30)

Approvers:
  - Trevor McKay (https://github.com/tmckayus)

URL: NVIDIA#770
This PR improves the performance of augmented system computation within barrier method by moving iterative refinement, forming augmented system, and few other computations to the GPU.  

## Issue
Closes NVIDIA#705

Authors:
  - Rajesh Gandham (https://github.com/rg20)

Approvers:
  - Chris Maes (https://github.com/chris-maes)
  - Ishika Roy (https://github.com/Iroy30)
  - Ramakrishnap (https://github.com/rgsl888prabhu)

URL: NVIDIA#746
Container had a failure with missing yaml dependency and also missing cuda_fp16.h header. It has been fixed in this PR.
This also fixes a CVE.

Authors:
  - Ramakrishnap (https://github.com/rgsl888prabhu)

Approvers:
  - Trevor McKay (https://github.com/tmckayus)

URL: NVIDIA#780
@rgsl888prabhu rgsl888prabhu changed the title Add skills and other helper structure for agentic work [WIP] Add skills and other helper structure for agentic work Jan 15, 2026
Iroy30 and others added 5 commits January 15, 2026 18:22
We were computing the probing cache but actually were not using the probing implications to change the problem. We were just using the cache during solve. In this PR, we add implications to the problem during presolve. When a probing a range is infeasible, we fix the variable bounds to other range. If both probing ranges imply some global bounds on other variables, we update those global bounds. Also if both probings of a binary variable imply some singletons on some other variable, we can substitute that variable with the current variable(with some coefficients).

This PR also changes the variable ordering to prioritize max possible implications: number of other integers that the variable shares constraint with. 

With this PR, we can add more variable substitutions since the function is ready now.

Overall there is a consistent increase in number of feasible on H100 system. Compared to baseline main over two batches of miplib runs: 226(average) compared to before: 223(average). Objective gap: 13.4% compared to 14.4%. Overall 3 feasible and 1% gap improvement.


## Summary by CodeRabbit

* **New Features**
  * Added variable substitution, variable-bound updates, and row-sorting capabilities for problem instances.

* **Bug Fixes**
  * Relaxed strict dual-residual checks that could trigger crashes.

* **Performance**
  * Enhanced presolve probing behavior and cache configuration for better presolve effectiveness.
  * Improved constraint-statistics gathering and faster handling of bound updates.

<sub>✏️ Tip: You can customize this high-level summary in your review settings.</sub>

Authors:
  - Akif ÇÖRDÜK (https://github.com/akifcorduk)

Approvers:
  - Alice Boucher (https://github.com/aliceb-nv)

URL: NVIDIA#580
The goal of this PR is to improve the diving framework in the MIP solver based on [1, Section 9.2]. It introduces the following changes:
- Modify diving implementation to use diving heuristics, such as coefficient diving (9.2.1), line search diving (9.2.4), guided diving (9.2.3) and pseudocost diving (9.2.5).
- Impose a node, iteration and backtrack limit to force the exploration of different branches of the tree (NVIDIA#718)
- Unified the diving and best-first heap into a single object (`node_queue`) to allow the sharing of information between them. This also greatly reduces memory consumption (`33GB` vs `48GB` for `neos-848589` after `250s`) since the lower and upper variable no longer needs to be stored for diving (NVIDIA#718).
- Order the node in the diving heap based on the pseudocost estimate [1, Section 6.4] (NVIDIA#718)
- Adjusted B&B logs to allow 2 letter symbols in the table (NVIDIA#714)
- Includes NVIDIA#694

MIPLIB results (GH200):

main (NVIDIA#718): 226 feasible solutions with 12.8% average primal gap

|                             | **All** | **No Coefficient Diving** | **No Pseudocost Diving** | **No Guided Diving** | **No Line Search Diving** |
| :-------------------------: | :-----: | :-----------------------: | :----------------------: | :------------------: | :-----------------------: |
|   **Feasible Solutions**    |   225   |            224            |           225            |         224          |            225            |
|         **Optimal**         |   44    |            43             |            45            |          43          |            44             |
|   **Average Primal Gap**    | 12.083  |          12.486           |          12.658          |        12.431        |          13.151           |
| **Average Primal Integral** |  8233   |           8508            |           8524           |         8406         |           8789            |


Reference:

[1] T. Achterberg, “Constraint Integer Programming,” PhD, Technischen Universität Berlin,
Berlin, 2007. doi: 10.14279/depositonce-1634.

Authors:
  - Nicolas L. Guidotti (https://github.com/nguidotti)
  - Chris Maes (https://github.com/chris-maes)

Approvers:
  - Chris Maes (https://github.com/chris-maes)
  - Ramakrishnap (https://github.com/rgsl888prabhu)

URL: NVIDIA#697
@anandhkb anandhkb added this to the 26.02 milestone Jan 16, 2026
rgsl888prabhu and others added 7 commits January 16, 2026 21:31
…PIs (NVIDIA#781)

Replace cudf Column and Buffers APIs with pylibcudf and public cuDF APIs

## Issue
closes NVIDIA#762 579

Authors:
  - Ramakrishnap (https://github.com/rgsl888prabhu)

Approvers:
  - Trevor McKay (https://github.com/tmckayus)

URL: NVIDIA#781
…NVIDIA#785)

Contributes to rapidsai/build-planning#242

Modifying `ci/build_wheel.sh` to

- pass`--build-constraint="${PIP_CONSTRAINT}"` unless build isolation is enabled.
- unset `PIP_CONSTRAINT` (set by rapids-init-pip)... it doesn't affect builds as of pip 25.3, and results in an error from `pip wheel` when set and `--build-constraint` is also passed



## Summary by CodeRabbit

* **Chores**
  * Updated pip wheel build configuration to consolidate invocation arguments and improve constraint handling during the wheel creation process.
  * Refined build documentation comments for clarity on constraint behavior.

<sub>✏️ Tip: You can customize this high-level summary in your review settings.</sub>

Authors:
  - Mike McCarty (https://github.com/mmccarty)

Approvers:
  - James Lamb (https://github.com/jameslamb)

URL: NVIDIA#785
This PR switches from C++17 support to C++20

Authors:
  - Ramakrishnap (https://github.com/rgsl888prabhu)
  - Alice Boucher (https://github.com/aliceb-nv)

Approvers:
  - Alice Boucher (https://github.com/aliceb-nv)
  - Trevor McKay (https://github.com/tmckayus)

URL: NVIDIA#486
Fixes NVIDIA#757 by removing extra argument when creating QP problem instance.

Note that since the QP problem constructor does not accept variable types, one can remove the definition of variable types which are unused. Happy to do that if preferable :)

## Issue


closes NVIDIA#757

Authors:
  - Mathieu Tanneau (https://github.com/mtanneau)
  - Ramakrishnap (https://github.com/rgsl888prabhu)

Approvers:
  - Rajesh Gandham (https://github.com/rg20)
  - Ramakrishnap (https://github.com/rgsl888prabhu)

URL: NVIDIA#758
…abhu/cuopt_public into add_skills_and_agentic_support
@copy-pr-bot
Copy link

copy-pr-bot bot commented Jan 20, 2026

This pull request requires additional validation before any workflows can run on NVIDIA's runners.

Pull request vetters can view their responsibilities here.

Contributors can view more details about this message here.

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

Labels

improvement Improves an existing functionality non-breaking Introduces a non-breaking change

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants