Skip to content

Conversation

@rgsl888prabhu
Copy link
Collaborator

For #64

tmckayus and others added 7 commits June 2, 2025 13:25
Only consider the first two fields in the client version. Without this
change the service will report that the version is a bad format, which
is not necessary in this case.
This PR fixes two bugs discovered while testing the AMPL interface:

1) We weren't correctly calculating the objective constant when presolve
eliminated variables on a maximization problem.

Thanks to Alice for the quick fix!

2) We had an undefined memory access on the number of nodes and simplex
iterations when solving a MIP at the root node.

---------

Co-authored-by: Ramakrishnap <42624703+rgsl888prabhu@users.noreply.github.com>
This PR aims at fixing the invalid operation while there is a graph
capture we sometimes see when using batch solve.

Solution is to use a regular instead of a non-blocking stream to make
sure that if any operation (like a cudaFree from Thrust) is being
launched on the default stream, it will wait for all other operations on
other stream to finish first, preventing any cudaMalloc/Free while
another stream might be doing a CUDA Graph capture.
…DIA#66)

This PR adds the string parameter CUOPT_USER_PROBLEM_FILE =
"user_problem_file". By default the parameter is the empty string "". If
the parameter is set by the user to something other than the empty
string, we will write out an MPS file containing the LP or MIP.

This is very useful when trying to debug interfaces like CVXPY where the
interface between CVXPY and cuOpt may have performed transformation to
the user problem. This allows us to reproduce failures on the engine
side directly from the MPS file without needing Python scripts.
…VIDIA#72)

<!--

Thank you for contributing to cuOpt :)

Here are some guidelines to help the review process go smoothly.

1. Please write a description in this text box of the changes that are
being
   made.

2. Please ensure that you have written units tests for the changes
made/features
   added.

3. If you are closing an issue please use one of the automatic closing
words as
noted here:
https://help.github.com/articles/closing-issues-using-keywords/

4. If your pull request is not ready for review but you want to make use
of the
continuous integration testing facilities please label it with `[WIP]`.

5. If your pull request is ready to be reviewed without requiring
additional
work on top of it, then remove the `[WIP]` label (if present) and
replace
it with `[REVIEW]`. If assistance is required to complete the
functionality,
for example when the C/C++ code of a feature is complete but Python
bindings
are still required, then add the label `[HELP-REQ]` so that others can
triage
and assist. The additional changes then can be implemented on top of the
same PR. If the assistance is done by members of the rapidsAI team, then
no
additional actions are required by the creator of the original PR for
this,
otherwise the original author of the PR needs to give permission to the
person(s) assisting to commit to their personal fork of the project. If
that
doesn't happen then a new PR based on the code of the original PR can be
opened by the person assisting, which then will be the PR that will be
   merged.

6. Once all work has been done and review has taken place please do not
add
features or make changes out of the scope of those requested by the
reviewer
(doing this just add delays as already reviewed code ends up having to
be
re-reviewed/it is hard to tell what is new etc!). Further, please do not
rebase your branch on main/force push/rewrite history, doing any of
these
   causes the context of any comments made by reviewers to be lost. If
   conflicts occur against main they should be resolved by merging main
   into the branch used for making the pull request.

Many thanks in advance for your cooperation!

-->
This adds jobs to push/publish nightly packages and also fixes nightly
testing to wait for the build workflow to complete first.
…y documentation (NVIDIA#77)

Adding details on third party modeling languages and providing details
on how to install nightly packages for latest development build.

---------

Co-authored-by: Chris Maes <cmaes@nvidia.com>
@rgsl888prabhu rgsl888prabhu requested a review from a team as a code owner June 6, 2025 19:53
@rgsl888prabhu rgsl888prabhu requested a review from msarahan June 6, 2025 19:53
@rgsl888prabhu rgsl888prabhu added non-breaking Introduces a non-breaking change improvement Improves an existing functionality labels Jun 6, 2025
@rgsl888prabhu rgsl888prabhu changed the base branch from branch-25.05 to branch-25.08 June 6, 2025 19:53
@rgsl888prabhu rgsl888prabhu requested review from a team as code owners June 6, 2025 19:53
@raydouglass raydouglass merged commit 057b27d into NVIDIA:branch-25.08 Jun 6, 2025
27 checks passed
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.

5 participants