Skip to main content

qoala-mlir

qoala-mlir is the MLIR-based middle and back end of the Qoala compiler stack. It consumes a Qoala HIR module — emitted by the euqalyptus Python frontend — lowers it through three intermediate representations (qnet → qmem → qoalahost + netqasm + qremote), and emits a textual .iqoala executable that can be run on the Qoala runtime. The build produces two command-line tools, qoala-opt (analyses, optimizations, and lowerings) and qoala-translate (LIR-to-.iqoala translation), together with a qnet Python bindings package that the frontend imports to construct HIR programmatically.

Documentation

The full documentation is published at https://softwarequtech.github.io/qoala-mlir/. It covers installation, the three intermediate representations, the pass pipeline, the per-op and per-pass reference, the Python bindings, and contributor-facing material.

Design and paper

For a deeper account of the compiler's design — the design considerations, the optimization passes (peephole rules, quantum dead-code elimination, MILP-based block reordering), the deadline-estimation MILP, and the static analyses — please refer to the accompanying paper: <PAPER_URL>.

Running the documentation locally

You can serve the documentation site locally with the official squidfunk/mkdocs-material Docker image, without installing MkDocs into your environment. Because the site uses the mkdocstrings[python] plugin to render API documentation from the qnet Python bindings' docstrings, the command below installs the docs-build dependencies (listed in requirements-docs.txt) into the container before serving:

docker run --rm -it -p 8000:8000 -v "$(pwd)":/docs \
  --entrypoint sh squidfunk/mkdocs-material:latest \
  -c 'pip install --quiet -r requirements-docs.txt && mkdocs serve --dev-addr=0.0.0.0:8000'

Run the command from the repository root. The site is then available at http://localhost:8000, with live reload on every change to docs/, mkdocs.yml, or the docstrings under lib/Python/mlir_qnet/.

Citation

If you use qoala-mlir in academic work, please cite the accompanying paper. A BibTeX entry will be available alongside the paper at the URL above; the placeholder below will be replaced once the paper is published:

<BIBTEX_PLACEHOLDER>

License

qoala-mlir is released under the MIT License (Copyright © 2025 QuTech). See the LICENSE file for the full text.

Metadata

Release files for qoala-mlir 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distributions (wheels)

Table of built distributions (wheels) for qoala-mlir 0.1.0
File Interpreter ABI Platform
qoala_mlir-0.1.0-cp312-cp312-manylinux_2_38_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.38+ x86-64 Details
qoala_mlir-0.1.0-cp311-cp311-manylinux_2_38_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.38+ x86-64 Details
qoala_mlir-0.1.0-cp310-cp310-manylinux_2_38_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.38+ x86-64 Details

Total release size: 235.0 MB

Release files / qoala_mlir-0.1.0-cp312-cp312-manylinux_2_38_x86_64.whl

Download URL qoala_mlir-0.1.0-cp312-cp312-manylinux_2_38_x86_64.whl
Size 78.3 MB
Tags CPython 3.12 Linux glibc 2.38+ x86-64
SHA-256 checksum
How to use checksums
6afa25d793e962a1daad58421fa08d857ac50bf8756b5ac0da8782d1c8864018
BLAKE2b-256 checksum
How to use checksums
f599e7d4404b41e96a064dfc2dd2175446944040677d125e0b9c650b9fe5dc21
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 29, 2026.

Transparency log

Release files / qoala_mlir-0.1.0-cp311-cp311-manylinux_2_38_x86_64.whl

Download URL qoala_mlir-0.1.0-cp311-cp311-manylinux_2_38_x86_64.whl
Size 78.3 MB
Tags CPython 3.11 Linux glibc 2.38+ x86-64
SHA-256 checksum
How to use checksums
301c35b5dc223057d3acb4f531259daf7f17a5be54a5336275851b44e95a59e0
BLAKE2b-256 checksum
How to use checksums
f7b373164e93c395e1f517e7520a268782543438ab93793be6c3b8578247ee3c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 29, 2026.

Transparency log

Release files / qoala_mlir-0.1.0-cp310-cp310-manylinux_2_38_x86_64.whl

Download URL qoala_mlir-0.1.0-cp310-cp310-manylinux_2_38_x86_64.whl
Size 78.3 MB
Tags CPython 3.10 Linux glibc 2.38+ x86-64
SHA-256 checksum
How to use checksums
b5b2bba720eb1e1df6dae385df1a9deb75bb4043eabfdc7fa22efe5860a9a63d
BLAKE2b-256 checksum
How to use checksums
d516b6e603f97427943306996cc2c13e3264abc9408a06875d0c155c3f3c03e5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 29, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.1.0 This release

3 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page