Skip to main content

QOCOGEN: Custom Code Generator for the QOCO solver

Project description

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         = {QOCO: A Quadratic Objective Conic Optimizer with Custom Solver Generation},
  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.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

qocogen-0.1.9.tar.gz (21.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

qocogen-0.1.9-py3-none-any.whl (18.1 kB view details)

Uploaded Python 3

File details

Details for the file qocogen-0.1.9.tar.gz.

File metadata

  • Download URL: qocogen-0.1.9.tar.gz
  • Upload date:
  • Size: 21.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.1

File hashes

Hashes for qocogen-0.1.9.tar.gz
Algorithm Hash digest
SHA256 08e932117c2531e5a4bc0fbffbf3583aaa38b04d0855edd11a5c732e792e9ddf
MD5 aeee985f52251e9636eca74e1c3918b0
BLAKE2b-256 392c9c3715930a7de72dc22f22f8354935b33b261cdf78ded5928f8b3157b05b

See more details on using hashes here.

File details

Details for the file qocogen-0.1.9-py3-none-any.whl.

File metadata

  • Download URL: qocogen-0.1.9-py3-none-any.whl
  • Upload date:
  • Size: 18.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.1

File hashes

Hashes for qocogen-0.1.9-py3-none-any.whl
Algorithm Hash digest
SHA256 ab87358df9f044d27105280e6bab2f636ceadcdf71c65d55da7c2fda4aa28f21
MD5 b735cca7e18f51b10d9432cb6fb1aedf
BLAKE2b-256 94b0e1554f60a755c6e5a1872d69b00174d1254e19c47f013091f58286e19141

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page