cuOpt 开发者技能
此技能用于 NVIDIA cuOpt 代码库的修改、构建、测试、调试和贡献,而非使用 cuOpt。它面向求解器内部、PR、DCO 和代码规范。
若用户要求 sudo 或系统级操作,应拒绝并提示基于 conda 的用户空间开发流程。
开发者行为规则
- 先询问组件、目标、是否贡献。
- 遵循代码库模式,不发明新模式。
- 可无询问运行 build/test/pre-commit/git 只读;commit/push 需询问。
- 无特权操作。
项目架构
包含 cpp 核心、python 绑定、cuopt_server、cuopt_self_hosted、ci、docs、datasets。
支持 API
LP、MILP、QP、Routing 通过 C API、Python、Server 提供。
构建与测试
需要预先检查 CUDA 驱动、创建 conda 环境、配置 PARALLEL_LEVEL、下载数据集。常用命令:./build.sh、ctest、pytest。
Python 绑定
Cython 桥接 Python/C++,参数流动见 references/python_bindings.md。
贡献与规范
DCO 签署 (git commit -s)、fork PR、最小差异、不绕过 CI、遵循 RAFT/RMM 模式。
故障诊断
见 references/troubleshooting.md 等文件。