|Inside Microsoft’s Quest to Make Quantum Computing Scalable|
The company’s researchers are building a system that’s unlike any other quantum computer being developed today.
There’s no shortage of big tech companies building quantum computers, but Microsoft claims its approach to manufacturing qubits will make its quantum computing systems more powerful than others’. The company’s researchers are pursuing “topological” qubits, which store data in the path of moving exotic Majorana particles. This is different from storing it in the state of electrons, which is fragile.
That’s according to Krysta Svore, research manager in Microsoft’s Quantum Architectures and Computation group. The Majorana particle paths -- with a fractionalized electron appearing in many places along them -- weave together like a braid, which makes for a much more robust and efficient system, she said in an interview with Data Center Knowledge. These qubits are called “topological cubits,” and the systems are called “topological quantum computers.”
With other approaches, it may take 10,000 physical qubits to create a logical qubit that’s stable enough for useful computation, because the state of the qubits storing the answer to your problem “decoheres” very easily, she said. It’s harder to disrupt an electron that’s been split up along a topological qubit, because the information is stored in more places.
In quantum mechanics, particles are represented by wavelengths. Coherence is achieved when waves that interfere with each other have the same frequency and constant phase relation. In other words, they don’t have to be in phase with each other, but the difference between the phases has to remain constant. If it does not, the particle states are said to decohere.
“We’re working on a universally programmable circuit model, so any other circuit-based quantum machine will be able to run the same class of algorithms, but we have a big differentiator,” Svore said. “Because the fidelity of the qubit promises to be several orders of magnitude better, I can run an algorithm that’s several orders of magnitude bigger. If I can run many more operations without decohering, I could run a class of algorithm that in theory would run on other quantum machines but that physically won’t give a good result. Let’s say we’re three orders of magnitude better; then I can run three orders of magnitude more operations in my quantum circuit.”
Theoretically, that could mean a clear advantage of a quantum computer over a classical one. “We can have a much larger circuit which could theoretically be the difference between something that shows quantum advantage or not. And for larger algorithms, where error corrections are required, we need several orders of magnitude less overhead to run that algorithm,” she explained.
A Hardware and Software System that Scales
Microsoft has chosen to focus on topological qubits because the researchers believe it will scale, and the company is also building a complete hardware stack to support the scaling. “We’re building a cryogenic computer to control the topological quantum chip; then we're building a software system where you can compile millions of operations and beyond.”
The algorithms running on the system could be doing things like quantum chemistry – looking for more efficient fertilizer or a room temperature semiconductor – or improving machine learning. Microsoft Research has already shown that deep learning trains faster with a quantum computer. With the same deep learning models in use today, Svore says, the research shows “quadratic speedups” even before you start adding quantum terms to the data model, which seems to improve performance even further.
Redesigning a Programming Language
To get developers used to the rather different style of quantum programming, Microsoft will offer a new set of tools in preview later this year (which doesn’t have a name yet) that’s a superset built on what it learned from the academics, researchers, students, and developers who used Liquid, an embedded domain specific language in F# that Microsoft created some years ago.
The language itself has familiar concepts like functions, if statements, variables, and branches, but it also has quantum-specific elements and a growing set of libraries developers can call to help them build quantum apps.
“We’ve almost completely redesigned the language; we will offer all the things Liquid had, but also much more, and it’s not an embedded language. It’s really a domain-specific language designed upfront for scalable quantum computing, and what we’ve tried to do is raise the level of abstraction in this high-level language with the ability to call vast numbers of libraries and subroutines.”
Some of those are low-level subroutines like an adder, a multiplier, and trigonometry functions, but there are also higher-level functions that are commonly used in quantum computing. “Tools like phase estimation, amplitude amplification, amplitude estimation -- these are very common frameworks for your quantum algorithms. They’re the core framework for setting up your algorithm to measure and get the answer out at the end [of the computation], and they’re available in a very pluggable way.”
A key part of making the language accessible is the way it’s integrated into Visual Studio, Microsoft’s IDE. “I think this is a huge step forward,” Svore told us. “It makes it so much easier to read the code because you get the syntax coloring and the debugging; you can set a breakpoint, you can visualise the quantum state.”
Being able to step through your code to understand how it works is critical to learning a new language or a new style of programming, and quantum computing is a very different style of computing.
“As we’ve learned about quantum algorithms and applications, we’ve put what we’ve learned into libraries to make it easier for a future generation of quantum developers,” Svore said. “Our hope is that as a developer you’re not having to think at the lower level of circuits and probabilities. The ability to use these higher-level constructs is key.”
The new language will also make it easier to develop hybrid applications that use both quantum and classical computing, which Svore predicts will be a common pattern. “With the quantum computer, many of the quantum apps and algorithms are hybrid. You're doing pre and post-processing or in some algorithms you’ll even be doing a very tight loop with a classical supercomputer.”
How Many Qubits Can You Handle?Microsoft, she says, is making progress with its topological qubits, but, as it’s impossible to put any kind of date on when a working system might emerge from all this work, the company will come out with a quantum simulator to actually run the programs you write, along with the other development tools.
Depending on how powerful your system is, you’ll be able to simulate between 30 and 33 qubits on your own hardware. For 40 qubits and more, you can do the simulation on Azure.
“At 30 qubits, it takes roughly 16GB of classical memory to store that quantum state, and each operation takes a few seconds,” Svore explains. But as you simulate more qubits, you need a lot more resources. Ten qubits means adding two to the power of 10, or 16TB of memory and double that to go from 40 to 41 qubits. Pretty soon, you’re hitting petabytes of memory. “At 230 qubits, the amount of memory you need is 10^80 bytes, which is more bytes than there are particles in the physical universe, and one operation takes the lifetime of the universe,” Svore said. “But in a quantum computer, that one operation takes 100 nanoseconds.”