Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

🧪 Testing circuit support in device implementations #113

Open
burgholzer opened this issue Dec 3, 2024 · 0 comments
Open

🧪 Testing circuit support in device implementations #113

burgholzer opened this issue Dec 3, 2024 · 0 comments
Labels
documentation Improvements or additions to documentation usability Increasing usability of the library

Comments

@burgholzer
Copy link
Contributor

This is an addition to #112 because it is slightly more involved and requires a little more care.

It would be good for the QDMI repository to provide ways to test the circuit support of a QDMI device implementation based on a representative set of benchmarks.
A suitable candidate for providing these benchmarks is the MQT Bench library (https://github.com/cda-tum/mqt-bench) developed as part of the Munich Quantum Toolkit. It allows one to generate circuits for various different algorithms with increasing qubit numbers and on multiple different levels. In particular, it allows one to generate circuits that are executable on a particular device (the "mapped level").
MQT Bench plans to adopt QDMI for managing the information about devices to compile to. Once implemented, this allows MQT Bench to generate circuits for any (hopefully) QDMI device implementation without much configuration. This is being tracked in cda-tum/mqt-bench#438.
In the meantime, required device configurations can be explicitly added to MQT Bench if necessary.
At the time of creating this issue, MQT Bench exports OpenQASM circuits (OpenQASM 2 and, soon, OpenQASM 3). This already allows to set up testing for devices supporting either OpenQASM standard.
Support for QIR is being tracked in cda-tum/mqt-bench#437.

The main purpose of these tests should be to check whether the device can accept common circuits in the formats it claims to support and does not error out for whatever reason.
Execution itself is not a priority here and is probably hard to test on a regular basis anyways.

@burgholzer burgholzer added documentation Improvements or additions to documentation usability Increasing usability of the library labels Dec 3, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation usability Increasing usability of the library
Projects
None yet
Development

No branches or pull requests

1 participant