This project builds and packages the GAMS and GAMSPy solver link for the NVIDIA cuOpt solver.
You can get more details and tips by reading the blog post "GPU-Accelerated Optimization with GAMS and NVIDIA cuOpt".
- Operating System: Linux, Windows 11 through WSL2
- GAMS: Version 49 or newer
- GAMSPy: Version 1.12.1 or newer
- NVIDIA GPU: Volta architecture or better
- CUDA Runtime Libraries: 12 or 13
- Make sure CUDA runtime is installed
- Download and unpack
cuopt-link-release-cu12.ziporcuopt-link-release-cu13.zip(for CUDA 12 and 13 respectively) from the releases page:- Unpack the contents of
cuopt-link-release-cu*.zipinto your GAMS system directory. For GAMSPy, you can find out your system directory by runninggamspy show base. So for example you can rununzip -o cuopt-link-release-cu*.zip -d $(gamspy show base). - Caution: This will overwrite any existing
gamsconfig.yamlfile in that directory. The containedgamsconfig.yamlcontains asolverConfigsection to make cuOpt available to GAMS.
- Unpack the contents of
The neccessary files from the CUDA 12 or 13 runtime can also be downloaded as convenient archive cu12-runtime.zip or cu13-runtime.zip from the releases page.
Get an example model and explicitly choose cuopt as lp or mip solver:
gamslib trnsport
gams trnsport lp cuopt
- examples/trnsport_cuopt.ipynb for CUDA 12
- examples/trnsport_cuopt.ipynb for CUDA 13