PreprintCC BY 4.0arXiv
Generation of Custom Solvers in Rust for Convex Optimization
Abstract
We introduce cvxgenrust, an open-source tool for generating custom Rust code that solves families of parameterized convex optimization problems modeled in CVXPY. cvxgenrust canonicalizes a problem family, extracts affine maps to Clarabel cone-program data, and generates a specialized Rust crate that updates parameters and calls Clarabel natively at runtime. The generated solver can also be exposed to Python and registered as a custom CVXPY solver. Our code generator supports a wide range of convex optimization problems up to semidefinite programs and exponential-cone problems. Numerical experiments show reduced runtime relative to direct CVXPY solves and performance comparable to CVXPYgen on shared problem classes.
Related
- Computing Lower Bounds on the Nonnegative Rank via Non-Convex Optimization Solvers
- Comparative Performance Analysis of Optimization Solvers for Linear Support Vector Machines: Impact of Preconditioning and Dimensionality An Empirical Study Using the Benchopt Framework
- Towards learning-enhanced solvers for multi-parametric optimization
- Comment on "The polarization hierarchy for polynomial optimization over convex bodies, with applications to nonnegative matrix rank"
- A Nearly Quadratic Lower Bound for Linear Optimization over Convex Bodies in the Membership Oracle Model
BibTeX
@misc{zhu2026generation,
title = {{Generation of Custom Solvers in Rust for Convex Optimization}},
author = {Hao Zhu and Joschka Boedecker},
howpublished = {arXiv},
year = {2026},
month = sep,
doi = {10.48550/arxiv.2609.13875},
eprint = {2609.13875},
archivePrefix = {arXiv},
url = {https://arxiv.org/abs/2609.13875},
note = {CC BY 4.0},
}
RIS
TY - UNPB
TI - Generation of Custom Solvers in Rust for Convex Optimization
AU - Hao Zhu
AU - Joschka Boedecker
PY - 2026
DA - 2026/09/12
PB - arXiv
DO - 10.48550/arxiv.2609.13875
UR - https://arxiv.org/abs/2609.13875
AB - We introduce cvxgenrust, an open-source tool for generating custom Rust code that solves families of parameterized convex optimization problems modeled in CVXPY. cvxgenrust canonicalizes a problem family, extracts affine maps to Clarabel cone-program data, and generates a specialized Rust crate that updates parameters and calls Clarabel natively at runtime. The generated solver can also be exposed to Python and registered as a custom CVXPY solver. Our code generator supports a wide range of convex optimization problems up to semidefinite programs and exponential-cone problems. Numerical experiments show reduced runtime relative to direct CVXPY solves and performance comparable to CVXPYgen on shared problem classes.
ER -