Technical blog

Opening new opportunities for you on 127-qubit devices

December 5, 2023
Written by
Rowen Wu
Rowen Wu

Building on last week’s exciting announcement, we’re thrilled to announce that Q-CTRL’s performance management is now available for you to use on three of IBM’s 127-qubit processors (Brisbane, Kyoto, Osaka) through the IBM Quantum Pay-As-You-Go plan. By expanding to larger devices, you can build utility-scale applications and push the limits of what quantum computers can do, as we usher in the era of quantum utility.

We’ve been performing extensive benchmarking across different algorithms using our error-suppression technology to achieve results at larger scales than we’ve seen published anywhere else.

The following figures show the results of running the Bernstein–Vazirani algorithm, commonly used for benchmarking, on 127-qubit IBM systems.

The first image gives the success probability—the percentage of executions (shots) that landed on the correct answer—up to 45 qubits. This plot reflects our previous demonstrations that the combination of the IBM Quantum system with Q-CTRL’s integrated performance management software can give huge boosts over the “default” settings.

Figure 1. The success probabilities of executing the Bernstein–Vazirani algorithm on 10 to 45 qubits. These results compare the performance of the “Q-CTRL automated error suppression” performance management option on Qiskit Runtime versus the advanced “Default” runtime settings (Qiskit Runtime Sampler, Resilience level 1). The total number of shots executed varies based on the circuit width.

Success probability is an important metric, but it doesn’t tell the entire story. As problems get larger, the solution space expands exponentially, meaning that the total probability of the “right” answer will naturally get smaller. The success probability only tells you how tall the peak in your output is—it doesn’t tell you how much taller it is than the next best alternative.

That’s why we also measure something called “selectivity” which represents the effective signal-to-noise ratio—how much the right answer stands out relative to the other (wrong) choices. More precisely, selectivity is the logarithm of the ratio of the success probability to the probability of the most likely incorrect bitstring.

A selectivity greater than one implies that the solution bitstring is much more probable than any other, and the signal can be amplified by simply performing further executions (averaging). As you repeat the experiment, you will keep getting the correct solution as the most probable answer, and this boosts the confidence that the algorithm is working as expected, as opposed to obtaining this result by chance.

By contrast, when the selectivity is less than zero, the algorithm tends to output the wrong answer as the tallest peak (most likely output).  In this case even averaging doesn’t help since it’s either amplifying the wrong answer or returning a random answer each time.  In the intermediate regime - between zero and one - the signal is correct but weak.

From the success probabilities in Figure 1, we can tell that the likelihood of obtaining even a single correct result without Q-CTRL across thousands of executions drops to zero after 15 qubits, whereas with Q-CTRL techniques, you still obtain correct solutions up to 45 qubits!

Figure 2. The selectivity of the results of executing the Bernstein–Vazirani algorithm on 10 to 45 qubits, calculated from the same data as the success probabilities in Figure 1. These results compare the performance of the “Q-CTRL automated error suppression” performance management option on Qiskit Runtime versus the advanced “Default” runtime settings (Qiskit Runtime Sampler, Resilience level 1). 

With Q-CTRL error suppression, selectivity remains above one up to and including 45-qubit tests. The signal is still clear enough to have confidence that the process of averaging is helping you secure the right answer.

We’ve also achieved some exciting new records. Entanglement is a resource used in quantum computing that links qubits together in a truly “non-classical” way. But it’s quite difficult to generate large entangled states. One kind, called GHZ state, is notoriously difficult to generate as it is very sensitive to noise. It’s the multi-qubit analog of the famous Schroedinger cat: all qubits 0 and all qubits 1 “at the same time”.

The current standing record is a 32-qubit GHZ state, published earlier this year. But with the combination of Q-CTRL and IBM Quantum that record looks to have tumbled! Now you can generate GHZ states beyond 50 qubits, well above the previous record. This unlocks totally new capabilities to run advanced algorithms and physics simulations at utility scale.

Figure 3. The quality of GHZ state generation as a function of the number of qubits involved.  Here we measure “Hellinger Fidelity” a metric that compares the expected and actual outputs of the machine following state generation - higher is better.  These results compare the performance of the “Q-CTRL automated error suppression” performance management option on Qiskit Runtime versus the advanced “Default” runtime settings (Qiskit Runtime Sampler, Resilience level 1). The horizontal dashed line near 0.5 is a typical threshold used to identify whether a state passes a test as verifiably entangled.  Note the use of Hellinger Fidelity in this demonstration approximates the full state fidelity.

You can get more information about how much improvement can be obtained across multiple algorithms by visiting our documentation.

If you’re an existing IBM Open or Premium user, you can get access to this technology too. These 127-qubit processors are now supported backends on our standalone error-suppression product, Fire Opal, which supports all plan types. We’ve also performed customized onboarding for other backends to support our customers on Premium plans—just get in touch, and we can bring your system online.

We’re very excited by the benchmarking performance we’re achieving on these utility-scale devices.  But don’t just take our word for it—try it out yourself to see how much you can scale your own algorithms and use cases. Create a new Qiskit Runtime instance with Q-CTRL performance management to get started today!

Latest news and updates