26 research outputs found
Noise-Adaptive Compiler Mappings for Noisy Intermediate-Scale Quantum Computers
A massive gap exists between current quantum computing (QC) prototypes, and
the size and scale required for many proposed QC algorithms. Current QC
implementations are prone to noise and variability which affect their
reliability, and yet with less than 80 quantum bits (qubits) total, they are
too resource-constrained to implement error correction. The term Noisy
Intermediate-Scale Quantum (NISQ) refers to these current and near-term systems
of 1000 qubits or less. Given NISQ's severe resource constraints, low
reliability, and high variability in physical characteristics such as coherence
time or error rates, it is of pressing importance to map computations onto them
in ways that use resources efficiently and maximize the likelihood of
successful runs.
This paper proposes and evaluates backend compiler approaches to map and
optimize high-level QC programs to execute with high reliability on NISQ
systems with diverse hardware characteristics. Our techniques all start from an
LLVM intermediate representation of the quantum program (such as would be
generated from high-level QC languages like Scaffold) and generate QC
executables runnable on the IBM Q public QC machine. We then use this framework
to implement and evaluate several optimal and heuristic mapping methods. These
methods vary in how they account for the availability of dynamic machine
calibration data, the relative importance of various noise parameters, the
different possible routing strategies, and the relative importance of
compile-time scalability versus runtime success. Using real-system
measurements, we show that fine grained spatial and temporal variations in
hardware parameters can be exploited to obtain an average x (and up to
x) improvement in program success rate over the industry standard IBM
Qiskit compiler.Comment: To appear in ASPLOS'1
The Power of One Clean Qubit in Supervised Machine Learning
This paper explores the potential benefits of quantum coherence and quantum
discord in the non-universal quantum computing model called deterministic
quantum computing with one qubit (DQC1) in supervised machine learning. We show
that the DQC1 model can be leveraged to develop an efficient method for
estimating complex kernel functions. We demonstrate a simple relationship
between coherence consumption and the kernel function, a crucial element in
machine learning. The paper presents an implementation of a binary
classification problem on IBM hardware using the DQC1 model and analyzes the
impact of quantum coherence and hardware noise. The advantage of our proposal
lies in its utilization of quantum discord, which is more resilient to noise
than entanglement.Comment: 9 pages, 11 figure
Magic-State Functional Units: Mapping and Scheduling Multi-Level Distillation Circuits for Fault-Tolerant Quantum Architectures
Quantum computers have recently made great strides and are on a long-term
path towards useful fault-tolerant computation. A dominant overhead in
fault-tolerant quantum computation is the production of high-fidelity encoded
qubits, called magic states, which enable reliable error-corrected computation.
We present the first detailed designs of hardware functional units that
implement space-time optimized magic-state factories for surface code
error-corrected machines. Interactions among distant qubits require surface
code braids (physical pathways on chip) which must be routed. Magic-state
factories are circuits comprised of a complex set of braids that is more
difficult to route than quantum circuits considered in previous work [1]. This
paper explores the impact of scheduling techniques, such as gate reordering and
qubit renaming, and we propose two novel mapping techniques: braid repulsion
and dipole moment braid rotation. We combine these techniques with graph
partitioning and community detection algorithms, and further introduce a
stitching algorithm for mapping subgraphs onto a physical machine. Our results
show a factor of 5.64 reduction in space-time volume compared to the best-known
previous designs for magic-state factories.Comment: 13 pages, 10 figure
Resource Optimized Quantum Architectures for Surface Code Implementations of Magic-State Distillation
Quantum computers capable of solving classically intractable problems are
under construction, and intermediate-scale devices are approaching completion.
Current efforts to design large-scale devices require allocating immense
resources to error correction, with the majority dedicated to the production of
high-fidelity ancillary states known as magic-states. Leading techniques focus
on dedicating a large, contiguous region of the processor as a single
"magic-state distillation factory" responsible for meeting the magic-state
demands of applications. In this work we design and analyze a set of optimized
factory architectural layouts that divide a single factory into spatially
distributed factories located throughout the processor. We find that
distributed factory architectures minimize the space-time volume overhead
imposed by distillation. Additionally, we find that the number of distributed
components in each optimal configuration is sensitive to application
characteristics and underlying physical device error rates. More specifically,
we find that the rate at which T-gates are demanded by an application has a
significant impact on the optimal distillation architecture. We develop an
optimization procedure that discovers the optimal number of factory
distillation rounds and number of output magic states per factory, as well as
an overall system architecture that interacts with the factories. This yields
between a 10x and 20x resource reduction compared to commonly accepted single
factory designs. Performance is analyzed across representative application
classes such as quantum simulation and quantum chemistry.Comment: 16 pages, 14 figure
Formal Constraint-based Compilation for Noisy Intermediate-Scale Quantum Systems
Noisy, intermediate-scale quantum (NISQ) systems are expected to have a few
hundred qubits, minimal or no error correction, limited connectivity and limits
on the number of gates that can be performed within the short coherence window
of the machine. The past decade's research on quantum programming languages and
compilers is directed towards large systems with thousands of qubits. For near
term quantum systems, it is crucial to design tool flows which make efficient
use of the hardware resources without sacrificing the ease and portability of a
high-level programming environment. In this paper, we present a compiler for
the Scaffold quantum programming language in which aggressive optimization
specifically targets NISQ machines with hundreds of qubits. Our compiler
extracts gates from a Scaffold program, and formulates a constrained
optimization problem which considers both program characteristics and machine
constraints. Using the Z3 SMT solver, the compiler maps program qubits to
hardware qubits, schedules gates, and inserts CNOT routing operations while
optimizing the overall execution time. The output of the optimization is used
to produce target code in the OpenQASM language, which can be executed on
existing quantum hardware such as the 16-qubit IBM machine. Using real and
synthetic benchmarks, we show that it is feasible to synthesize near-optimal
compiled code for current and small NISQ systems. For large programs and
machine sizes, the SMT optimization approach can be used to synthesize compiled
code that is guaranteed to finish within the coherence window of the machine.Comment: Invited paper in Special Issue on Quantum Computer Architecture: a
full-stack overview, Microprocessors and Microsystem
Full-Stack, Real-System Quantum Computer Studies: Architectural Comparisons and Design Insights
In recent years, Quantum Computing (QC) has progressed to the point where
small working prototypes are available for use. Termed Noisy Intermediate-Scale
Quantum (NISQ) computers, these prototypes are too small for large benchmarks
or even for Quantum Error Correction, but they do have sufficient resources to
run small benchmarks, particularly if compiled with optimizations to make use
of scarce qubits and limited operation counts and coherence times. QC has not
yet, however, settled on a particular preferred device implementation
technology, and indeed different NISQ prototypes implement qubits with very
different physical approaches and therefore widely-varying device and machine
characteristics.
Our work performs a full-stack, benchmark-driven hardware-software analysis
of QC systems. We evaluate QC architectural possibilities, software-visible
gates, and software optimizations to tackle fundamental design questions about
gate set choices, communication topology, the factors affecting benchmark
performance and compiler optimizations. In order to answer key cross-technology
and cross-platform design questions, our work has built the first top-to-bottom
toolflow to target different qubit device technologies, including
superconducting and trapped ion qubits which are the current QC front-runners.
We use our toolflow, TriQ, to conduct {\em real-system} measurements on 7
running QC prototypes from 3 different groups, IBM, Rigetti, and University of
Maryland. From these real-system experiences at QC's hardware-software
interface, we make observations about native and software-visible gates for
different QC technologies, communication topologies, and the value of
noise-aware compilation even on lower-noise platforms. This is the largest
cross-platform real-system QC study performed thus far; its results have the
potential to inform both QC device and compiler design going forward.Comment: Preprint of a publication in ISCA 201
Bosehedral: Compiler Optimization for Bosonic Quantum Computing
Bosonic quantum computing, based on the infinite-dimensional qumodes, has
shown promise for various practical applications that are classically hard.
However, the lack of compiler optimizations has hindered its full potential.
This paper introduces Bosehedral, an efficient compiler optimization framework
for (Gaussian) Boson sampling on Bosonic quantum hardware. Bosehedral overcomes
the challenge of handling infinite-dimensional qumode gate matrices by
performing all its program analysis and optimizations at a higher algorithmic
level, using a compact unitary matrix representation. It optimizes qumode gate
decomposition and logical-to-physical qumode mapping, and introduces a tunable
probabilistic gate dropout method. Overall, Bosehedral significantly improves
the performance by accurately approximating the original program with much
fewer gates. Our evaluation shows that Bosehedral can largely reduce the
program size but still maintain a high approximation fidelity, which can
translate to significant end-to-end application performance improvement
Optimized Surface Code Communication in Superconducting Quantum Computers
Quantum computing (QC) is at the cusp of a revolution. Machines with 100
quantum bits (qubits) are anticipated to be operational by 2020
[googlemachine,gambetta2015building], and several-hundred-qubit machines are
around the corner. Machines of this scale have the capacity to demonstrate
quantum supremacy, the tipping point where QC is faster than the fastest
classical alternative for a particular problem. Because error correction
techniques will be central to QC and will be the most expensive component of
quantum computation, choosing the lowest-overhead error correction scheme is
critical to overall QC success. This paper evaluates two established quantum
error correction codes---planar and double-defect surface codes---using a set
of compilation, scheduling and network simulation tools. In considering
scalable methods for optimizing both codes, we do so in the context of a full
microarchitectural and compiler analysis. Contrary to previous predictions, we
find that the simpler planar codes are sometimes more favorable for
implementation on superconducting quantum computers, especially under
conditions of high communication congestion.Comment: 14 pages, 9 figures, The 50th Annual IEEE/ACM International Symposium
on Microarchitectur
Recursive Methods for Synthesizing Permutations on Limited-Connectivity Quantum Computers
We describe a family of recursive methods for the synthesis of qubit
permutations on quantum computers with limited qubit connectivity. Two
objectives are of importance: circuit size and depth. In each case we combine a
scalable heuristic with a non-scalable, yet exact, synthesis. Our algorithms
are applicable to generic connectivity constraints, scale favorably, and
achieve close-to-optimal performance in many cases. We demonstrate the utility
of these algorithms by optimizing the compilation of Quantum Volume circuits,
and to disprove an old conjecture on reversals being the hardest permutation on
a path.Comment: DAC '22: The 59th Annual Design Automation Conference 2019 San
Francisco CA US