-
Notifications
You must be signed in to change notification settings - Fork 126
Adding doc updates for release notes and other items #808
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
rapids-bot
merged 30 commits into
NVIDIA:release/26.02
from
rgsl888prabhu:update_doc_26_02
Feb 11, 2026
+301
−57
Merged
Changes from all commits
Commits
Show all changes
30 commits
Select commit
Hold shift + click to select a range
dd0b69e
update
rgsl888prabhu aad2425
Add details about agentic skill
rgsl888prabhu 3b575f1
Update RELEASE-NOTES.md
Kh4ster f815937
Merge branch 'update_doc_26_02' of github.com:rgsl888prabhu/cuopt_pub…
rgsl888prabhu 1938874
update release notes
rgsl888prabhu ecc1e4f
Update RELEASE-NOTES.md
chris-maes c28927a
Update RELEASE-NOTES.md
rgsl888prabhu c46403f
Update README.md
chris-maes 69b68ad
Update RELEASE-NOTES.md
chris-maes 4d72e6a
Update RELEASE-NOTES.md
chris-maes e22836b
Update RELEASE-NOTES.md
chris-maes a8484a4
Update README.md
chris-maes 474dad5
Update README.md
chris-maes 2d44670
Updated the docs for warm start breaking change, QP general availability
rg20 da9d9f6
Add TSP bathmode doc
rgsl888prabhu c912fcc
Merge branch 'release/26.02' into update_doc_26_02
rgsl888prabhu 772e01f
determinism release notes
aliceb-nv 57dcf32
Update README.md
chris-maes e172eec
Update RELEASE-NOTES.md
chris-maes cd8397f
Update RELEASE-NOTES.md
chris-maes 9606610
Update RELEASE-NOTES.md
chris-maes 1ecffa8
Update RELEASE-NOTES.md
chris-maes df57575
Update RELEASE-NOTES.md
chris-maes 9e68636
Document new parameters. Style fixes
chris-maes d3376a6
Merge remote-tracking branch 'cuopt-nvidia/release/26.02' into update…
chris-maes 6faaa30
Update lp-qp-milp-settings.rst
Iroy30 548f9c9
Update routing-examples.rst
Iroy30 4f83c39
Update README.md
Iroy30 847df85
Update RELEASE-NOTES.md
Iroy30 75682ff
Update faq.rst
Iroy30 File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
55 changes: 55 additions & 0 deletions
55
docs/cuopt/source/cuopt-python/routing/examples/tsp_batch_example.py
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,55 @@ | ||
| # SPDX-FileCopyrightText: Copyright (c) 2025-2026, NVIDIA CORPORATION & AFFILIATES. All rights reserved. | ||
| # SPDX-License-Identifier: Apache-2.0 | ||
| # | ||
| # TSP batch solve example: solve multiple TSP instances in one call for higher throughput. | ||
| # Use this when you have many similar routing problems (e.g., many small TSPs) to solve. | ||
|
|
||
| import cudf | ||
| import numpy as np | ||
|
|
||
| from cuopt import routing | ||
|
|
||
|
|
||
| def create_tsp_cost_matrix(n_locations): | ||
| """Create a simple symmetric cost matrix for a TSP of size n_locations.""" | ||
| cost_matrix = np.zeros((n_locations, n_locations), dtype=np.float32) | ||
| for i in range(n_locations): | ||
| for j in range(n_locations): | ||
| cost_matrix[i, j] = abs(i - j) | ||
| return cudf.DataFrame(cost_matrix) | ||
|
|
||
|
|
||
| def main(): | ||
| # Define multiple TSP sizes to solve in one batch | ||
| tsp_sizes = [5, 8, 10, 6, 7, 9] | ||
|
|
||
| # Build one DataModel per TSP | ||
| data_models = [] | ||
| for n_locations in tsp_sizes: | ||
| cost_matrix = create_tsp_cost_matrix(n_locations) | ||
| dm = routing.DataModel(n_locations, 1) # n_locations, 1 vehicle (TSP) | ||
| dm.add_cost_matrix(cost_matrix) | ||
| data_models.append(dm) | ||
|
|
||
| # Shared solver settings for the batch | ||
| settings = routing.SolverSettings() | ||
| settings.set_time_limit(5.0) | ||
|
|
||
| # Solve all TSPs in batch (parallel execution) | ||
| solutions = routing.BatchSolve(data_models, settings) | ||
|
|
||
| # Inspect results | ||
| print(f"Solved {len(solutions)} TSPs in batch.") | ||
| for i, (size, solution) in enumerate(zip(tsp_sizes, solutions)): | ||
| status = solution.get_status() | ||
| status_str = ( | ||
| "SUCCESS" if status == routing.SolutionStatus.SUCCESS else status | ||
| ) | ||
| vehicle_count = solution.get_vehicle_count() | ||
| print( | ||
| f" TSP {i} (size {size}): status={status_str}, vehicles={vehicle_count}" | ||
| ) | ||
|
|
||
|
|
||
| if __name__ == "__main__": | ||
| main() |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
42 changes: 42 additions & 0 deletions
42
docs/cuopt/source/cuopt-python/routing/routing-examples.rst
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,42 @@ | ||
| ======================================== | ||
| Routing Examples | ||
| ======================================== | ||
|
|
||
| This section contains examples for the cuOpt routing Python API. | ||
|
|
||
| TSP Batch Mode | ||
| -------------- | ||
|
|
||
| The routing Python API supports **batch mode** for solving many TSP (or routing) instances in a single call. Instead of calling :func:`cuopt.routing.Solve` repeatedly, you build a list of :class:`cuopt.routing.DataModel` objects and call :func:`cuopt.routing.BatchSolve`. The solver runs the problems in parallel to improve throughput. | ||
|
|
||
| **When to use batch mode:** | ||
|
|
||
| - You have **many similar routing problems** (e.g., dozens or hundreds of small TSPs). | ||
| - You want to **maximize throughput** by utilizing the GPU across multiple problems at once. | ||
| - Problem sizes and structure are compatible with the same :class:`cuopt.routing.SolverSettings` (e.g., same time limit). | ||
|
|
||
| **Returns:** A list of :class:`cuopt.routing.Assignment` objects, one per input data model, in the same order as ``data_model_list``. Use :meth:`cuopt.routing.Assignment.get_status` and other assignment methods to inspect each solution. | ||
|
|
||
| The following example builds several TSPs of different sizes, solves them in one batch, and prints a short summary per solution. | ||
|
|
||
| :download:`tsp_batch_example.py <examples/tsp_batch_example.py>` | ||
|
|
||
| .. literalinclude:: examples/tsp_batch_example.py | ||
| :language: python | ||
| :linenos: | ||
|
|
||
| Sample output: | ||
|
|
||
| .. code-block:: text | ||
|
|
||
| Solved 6 TSPs in batch. | ||
| TSP 0 (size 5): status=SUCCESS, vehicles=1 | ||
| TSP 1 (size 8): status=SUCCESS, vehicles=1 | ||
| TSP 2 (size 10): status=SUCCESS, vehicles=1 | ||
| ... | ||
|
|
||
| **Notes:** | ||
|
|
||
| - All problems in the batch use the **same** :class:`cuopt.routing.SolverSettings` (e.g., time limit, solver options). | ||
| - Callbacks are not supported in batch mode. | ||
| - For best practices when batching many instances, see the *Add best practices for batch solving* note in the release documentation. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -10,6 +10,11 @@ | |
| Note: | ||
| Warmstart is only applicable to LP, not for MILP. | ||
| Important: | ||
| To use warm start with PDLP, presolve must be explicitly disabled. | ||
| Set "presolve": "off" in solver_config, as presolve transforms the problem | ||
| and the warm start solution from the original problem cannot be applied. | ||
|
Comment on lines
+13
to
+16
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Keep the warm-start note consistent with the example config. The note says 💡 Suggested doc tweak- Set "presolve": "off" in solver_config, as presolve transforms the problem
+ Set "presolve": 0 in solver_config, as presolve transforms the problemAlso applies to: 58-62 🤖 Prompt for AI Agents |
||
| Requirements: | ||
| - cuOpt server running (default: localhost:5000) | ||
| - cuopt_sh_client package installed | ||
|
|
||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.