Skip to main contentIBM 

Qiskit: The software for quantum performance

Utility-scale quantum computers built by IBM. Groundbreaking algorithms applied by you. Performance by Qiskit.

15 May 2024

Ryan Mandelbaum

Blake Johnson

Jerry Chow

Last year, we entered a new era of quantum computing: the era of quantum utility

What is quantum utility? Read more about how this landmark was achieved.

. For the first time, quantum computers can run circuits beyond the reach of brute force or exact classical simulation. But our true goal is for the community to demonstrate quantum advantage — using utility-scale quantum processing to deliver value for use cases beyond state-of-the-art classical methods. The crux of our users’ discovery of quantum advantage will be a highly performant and stable software stack to enable the next generation of quantum algorithms. It will require a more performant Qiskit.

This year, we introduced the first stable version of the Qiskit

Read more about the Qiskit 1.0 release summary.

open-source software development kit — Qiskit SDK 1.x. But Qiskit is more than just the world’s most popular quantum development software to build and construct quantum circuits. We are redefining Qiskit to represent the full-stack software for quantum at IBM, extending the Qiskit SDK with middleware software and services to write, optimize, and execute programs on IBM Quantum systems — including new generative AI code assistance tools.

Qiskit will drive our vision to bring useful quantum computing to the world.

How did we get here?

When we first released Qiskit as an SDK in 2017, it quickly became the software development tool for learning and researching quantum computing. To date, more than 600,000 registered users have run over three trillion circuits on IBM Quantum computers using Qiskit. Researchers have published nearly 2,900 research papers with Qiskit and IBM systems, and over 700 universities around the world have developed quantum computing classes using Qiskit. It has become the preferred open source software development kit for 69% of respondents to the Unitary Fund’s 2023 Open Source Software Survey.

But in the past year, we’ve demonstrated that quantum computers can be used as tools for scientific discovery. And now, with our 100+ qubit quantum computers, users can begin extracting real performance from quantum hardware. Experts can begin doing algorithm discovery in their respective domains with the goal of finding quantum advantage. Qiskit, in turn, must mature to become the most performant software toolset to work alongside the world’s most performant quantum computing hardware.

Qiskit will take users through the entire journey of running utility-scale quantum workloads, from writing code to post-processing the results and everything in between.

Our vision for quantum software

Last year, we introduced a repeatable recipe for developing quantum workloads called the Qiskit pattern — a four-step journey along which users map, optimize, execute, and post-process their quantum circuits. And here’s how Qiskit will bring users along each step of that journey.

The first step of the Qiskit pattern is to map the problem to quantum circuits using the updated Qiskit SDK 1.x. Qiskit SDK 1.x evolves the widely popular open-source development kit to a highly stable, reliable, and utility-scale tool for building and optimizing circuits and operators. It enables working with the increasingly complex quantum circuits being discovered by users — those with 100s of qubits and thousands of gates or more.

The second step is to optimize the circuits with the help of major performance improvements to the Qiskit SDK and the new Qiskit Transpiler Service. Using the Qiskit Transpiler Service, users can reduce two-qubit gate counts by an average of 42 percent by combining AI and heuristic passes, compared to using the Qiskit SDK transpiler.

Two years ago, we began an effort to improve Qiskit’s performance by refactoring performance-critical code sections from Python into Rust. We are not done yet, but already this effort is yielding impressive gains. For example, binding and transpiling is now 39x faster than it was two years ago with Qiskit SDK 0.33. More recent scrutiny of memory use now allows users to comfortably work with larger circuits thanks to a greater than 3x reduction in memory footprint compared to Qiskit SDK 0.43. More improvements are still to come.

We have also been experimenting with AI-enhanced transpilation methods based upon a reinforcement learning approach. Already this exploration is yielding promising results, with a reduction in both the number of two-qubit gates and circuit depth on a variety of benchmark circuits. We are making these advanced transpilation capabilities available to our Premium users with the beta release of the Qiskit Transpiler Service. It integrates seamlessly into the Qiskit SDK as a plugin.

Read more about the updates to Qiskit SDK 1.x in the release summary here.

Step three of the Qiskit pattern is to execute workloads using the Qiskit Runtime Service. Users will notice an overhaul of the Qiskit Primitives — the Sampler and Estimator — for extracting results from quantum computers. The Primitives now define the interface to quantum systems within Qiskit. The Qiskit Runtime Service executes primitive queries with advanced error mitigation built-in, and now supports dynamic circuits in the Sampler.

Zooming out, we also released Qiskit Serverless in late 2023. Serverless will provision the appropriate resources required to run quantum circuits. But we must continue maturing Qiskit so that users can extend and reuse their code as we begin to think about production workloads.

We’re working to abstract the building blocks we’ve introduced as part of the Qiskit pattern into components called Qiskit Functions in the coming year. Qiskit Functions will be a catalogue of functions in the serverless layer that users can access as part of their workflow. Qiskit Functions will be provided both by IBM and by third-party integrators for certain types of problems — they might include custom error handling routines, post-processing techniques, and more.

Qiskit stack overview.

Qiskit stack overview.

Frictionless development with AI + Functions

But you need not take this journey alone. Since our inception, our core objective has been a frictionless developer experience. At the 2023 IBM Quantum Summit, we previewed our Qiskit AI Code Assistant to make programing quantum even easier. And this month, we have now released the Qiskit Code Assistant Service in alpha.

Qiskit Code Assistant is trained on Qiskit SDK 1.x and IBM Quantum features with an LLM model based on IBM Granite, powered by watsonx. It includes a Visual Studio Code extension and Jupyter Lab integration. We’ll release the first Qiskit HumanEval benchmark next month to evaluate Code Assistant’s ability to generate usable code. As we work toward a beta, we’ll hope you’ll get started exploring how Code Assistant alongside Qiskit patterns can accelerate your development workflow.

This is just the start. In the next six months, we’ll be continuing to improve Qiskit’s performance as we make it the highest-performing quantum software stack.

Together, this is part of our broader vision for quantum computing: the IBM Quantum Platform, where Qiskit plus IBM quantum systems equals utility-scale work. Qiskit is as important for running quantum workloads as our hardware is.

Follow along with our IBM Quantum Development Roadmap to see how Qiskit and IBM Quantum systems will evolve as we begin to deploy quantum for utility-scale workflows and realize our vision for useful quantum computing.

View documentation