Skip to content

qoco-org/qocogen

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

QOCOGEN

drawing

PyPI Downloads Documentation License

QOCOGEN is a code generator which takes in an second-order cone program problem family and generates a customized C solver (called qoco_custom) for the specified problem family which implements the same algorithm as QOCO. This customized solver is library-free, only uses static memory allocation, and can be a few times faster than QOCO.

Installation and Usage

You can install qocogen by running pip install qocogen.

For instructions on using QOCOGEN, refer to the documentation.

Tests

To run tests, first install cvxpy and pytest

pip install cvxpy pytest

and execute:

pytest

Bug reports

File any issues or bug reports using the issue tracker.

Citing

@misc{chari2025qoco,
  title         = {Custom Solver Generation for Quadratic Objective Second-Order Cone Programs},
  author        = {Chari, Govind M and A{\c{c}}{\i}kme{\c{s}}e, Beh{\c{c}}et},
  year          = {2025},
  eprint        = {2503.12658},
  archiveprefix = {arXiv},
  primaryclass  = {math.OC},
  url           = {https://arxiv.org/abs/2503.12658}
}

License

QOCOGEN is licensed under the BSD-3-Clause license.