Microsoft Azure Quantum Resource Estimator enables quantum innovators to develop and refine algorithms to run on tomorrow’s scaled quantum computers. This new tool is one way Microsoft empowers innovators to have breakthrough impact with quantum at scale.
The quantum computers available today enable interesting experimentation and research but they are unable to accelerate the computations necessary to solve real-world problems. While the industry awaits hardware advances, quantum software innovators are eager to make progress and prepare for a quantum future. Creating algorithms today that will eventually run on tomorrow’s fault-tolerant scaled quantum computers is a daunting task. These innovators are faced with questions such as; What hardware resources are required? How many physical and logical qubits are needed and what type? What’s the runtime? Azure Quantum Resource Estimator was designed specifically to answer these questions. Understanding this data will help innovators create, test, and refine their algorithms and ultimately lead to practical solutions that take advantage of scaled quantum computers when they become available.
The Azure Quantum Resource Estimator started as an internal tool and has been key in shaping the design of Microsoft’s quantum machine. The insights it has provided have informed our approach to engineering a machine capable of the scale required for impact including the machine’s architecture and our decision to use topological qubits. We’re making progress on our machine and recently had a that was detailed in a preprint to the . On Thursday, we will take another step forward in transparency by publicly publishing the raw data and analysis in interactive Jupyter notebooks on Azure Quantum. These notebooks provide the exact steps needed to reproduce all the data in our paper. While engineering challenges remain, the physics discovery demonstrated in this data proves out a fundamental building block for our approach to a scaled quantum computer and puts Microsoft on the path to deliver a quantum machine in Azure that will help solve some of the world’s toughest problems.
As we advance our hardware, we are also focused on empowering software innovators to advance their algorithms. The Azure Quantum Resource Estimator performs one of the most challenging problems for researchers developing quantum algorithms. It breaks down the resources required for a quantum algorithm, including the total number of physical qubits, the computational resources required including wall clock time, and the details of the formulas and values used for each estimate. This means algorithm development becomes the focus, with the goal of optimizing performance and decreasing cost. For the first time, it is possible to compare resource estimates for quantum algorithms at scale across different hardware profiles. Start from well-known, pre-defined qubit parameter settings and quantum error correction (QEC) schemes or configure unique settings across a wide range of machine characteristics such as operation error rates, operation speeds, and error correction schemes and thresholds.
“Resource estimation is an increasingly important task for development of quantum computing technology. We are happy we could use Microsoft’s new tool for our research on this topic. It’s easy to use. The integration process was simple, and the results give both a high-level overview helpful for people new to error correction, as well as a detailed breakdown for experts. Resource estimation should be a part of the pipeline for anyone working on fault-tolerant quantum algorithms. Microsoft’s new tool is great for this.”— Michał Stęchły, Tech Lead at Quantum Software Team, Zapata Computing.
The Resource Estimator will help drive the transition from today’s noisy intermediate scale quantum (NISQ) systems to tomorrow’s fault-tolerant quantum computers. Today’s NISQ systems might enable running small numbers of operations in an algorithm successfully, but to get to practical quantum advantage there will need to be trillions and more operations running successfully. This gap will be closed by scaling up to a fault-tolerant quantum machine with built-in Quantum Error Correction. This means each qubit and operation requested in a user’s program will be encoded into some number of physical qubits and operations at the hardware level, and the software stack will perform this conversion automatically. Now with the Resource Estimator, you can walk through these conversions, estimate the overheads in time and space required to enable implementation of your scaled quantum algorithms on a variety of hardware designs, and use the information to improve your algorithms and applications well before scaled fault-tolerant hardware is available. In our recent preprint on the arXiv, we show how to use the Resource Estimator to understand the cost of three important quantum algorithms that promise practical quantum advantage.
Resource Estimation paves the way for hardware-software co-design, enabling hardware designers to improve their architectures based on how large-scale algorithms might run on their specific implementation, and in turn, allowing algorithm and software developers to iterate on bringing down the cost of algorithms at scale.
“The Resource Estimator breaks down the resources needed to run a useful algorithm at scale. Putting precise numbers on the actual scale at which quantum computing provides industry-relevant solutions sheds light on the tremendous effort that has yet to be realized. This strengthens our commitment to our roadmap, which is focused on delivering an error-corrected quantum computer using a hardware-efficient approach.”—Jérémie Guillaud, Chief of Theory at .
Built on the foundation of community-supported quantum intermediate representation (QIR), it is both extensible and portable and can be used with popular quantum SDKs and languages such as Q# and Qiskit. QIR was created in alliance with the Linux Foundation and other partners and is an open source standard that serves as a common interface between many languages and target quantum computation platforms.
Getting started with resource estimation
It is easy to get started and gain your first insights with the tool. The example below shows how to estimate and analyze the physical resources required to run a quantum program on a fault-tolerant quantum computer.
1. Set up your Azure Quantum workspace and get started with Resource Estimation.
Azure Quantum, Azure’s free, cloud-based service, is available to everyone. To get started, just set up an Azure account (check out free Azure accounts for students) and create an Azure Quantum workspace in the Azure Portal.
If you already have an Azure Quantum workspace setup:
a) Open your workspace in the Azure portal.
b) On the left panel, under Operations, select Providers.
c) Select + Add a provider.
d) Select Microsoft Quantum Computing.
e) Select Learn & Develop and select Save.
2. Start with a ready-to-use sample.
To start running quantum programs with no installation required, try our free hosted notebooks experience in the Azure Portal. Our hosted Jupyter Notebooks enable a variety of languages and Quantum SDKs. You will find them in your Azure Quantum workspace (#1). Selecting Notebooks in the portal will take you to the sample gallery, where you will find the Resource Estimation tab (#2). Once there, choose one of the first two samples and then select the “Copy to my notebooks” button (#3) to add the sample to your workspace (#3).
3. Run your first Resource Estimation
After the sample has been copied to My notebooks you can select it from the Workspace menu to load it as a hosted notebook in the Azure Portal. From there, just select Run all from the top of the Jupyter Notebook to execute the program. You will be able to run an entire Resource Estimation job without writing a single line of code!
The results will immediately provide estimates of total physical qubits and runtime for the algorithm provided. For a deeper understanding of the resources consumed by the algorithm, you can trace the source of each result with detailed explanations of formulas. These deeper results can be re-used and shared in your research.
Learn more about Resource Estimation
There are many ways to learn more:
- Visit our technical documentation for more information on Resource Estimation, including detailed steps to get you started.
- Login to the Azure Portal, visit your Azure Quantum workspace, and try an advanced sample on topics such as factoring and quantum chemistry.
- Dive deeper into our research on Resource Estimation at arXiv.org.