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

Number of qubits as single-number metric of Quantum Volume jobs #68

Open
cosenal opened this issue Dec 9, 2024 · 3 comments
Open

Number of qubits as single-number metric of Quantum Volume jobs #68

cosenal opened this issue Dec 9, 2024 · 3 comments
Assignees
Labels
enhancement New feature or request
Milestone

Comments

@cosenal
Copy link
Contributor

cosenal commented Dec 9, 2024

We would like the quantum volume benchmark to be a single-number metric as defined in https://arxiv.org/pdf/1811.12926.
At the moment in metriq-gym we don't do the argmax part, that is, the job takes the number of qubits (width) and the depth, and returns a boolean representing whether the quantum computer is able to run the quantum volume circuit for those width x depth dimension. Instead, we want to iterate on num_qubits > 1 and stop when the condition is no longer satisfied. The max num_qubit that is obtained should be returned as a single-number metric of the benchmark.

@cosenal cosenal added the enhancement New feature or request label Dec 9, 2024
@cosenal cosenal added this to the Release 0.1.0 milestone Dec 9, 2024
@cosenal cosenal changed the title num_qubits as single-number metric of Quantum Volume jobs Number of qubits as single-number metric of Quantum Volume jobs Dec 9, 2024
@vprusso
Copy link
Contributor

vprusso commented Dec 9, 2024

Nice. Yes, this is definitely what an external user would expect when running quantum volume, so we should make sure we align with that!

@WrathfulSpatula
Copy link
Contributor

Like we discussed earlier today, the problem we still have is that there's no straightforward way to pass a job to IBMQ in a manner that works like "increment and repeat until failure," in terms of conditioning running additional, larger quantum volume jobs based on whether the last test just passed or failed when validated against simulation. Further, it also doesn't make sense, from an economic perspective, to have the quantum volume scripts immediately and without sequential dependency condition dispatch anything like a full series from 1 to 30 qubits.

We could do something like this: when polling returns a quantum volume job, check whether it passed or failed. If it passed, ask the user if they'd like to repeat with more qubits; if it failed, ask them if they'd like to repeat it with fewer qubits. This specific approach works, somewhat, but it might add relatively little value.

For now, let's put this issue aside. If we have a better idea for how to do that respects realistic economic costs, we'll revisit.

@cosenal
Copy link
Contributor Author

cosenal commented Dec 12, 2024

Great summary of the discussion. Thanks @WrathfulSpatula

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants