31 research outputs found
Performance Models for Split-execution Computing Systems
Split-execution computing leverages the capabilities of multiple
computational models to solve problems, but splitting program execution across
different computational models incurs costs associated with the translation
between domains. We analyze the performance of a split-execution computing
system developed from conventional and quantum processing units (QPUs) by using
behavioral models that track resource usage. We focus on asymmetric processing
models built using conventional CPUs and a family of special-purpose QPUs that
employ quantum computing principles. Our performance models account for the
translation of a classical optimization problem into the physical
representation required by the quantum processor while also accounting for
hardware limitations and conventional processor speed and memory. We conclude
that the bottleneck in this split-execution computing system lies at the
quantum-classical interface and that the primary time cost is independent of
quantum processor behavior.Comment: Presented at 18th Workshop on Advances in Parallel and Distributed
Computational Models [APDCM2016] on 23 May 2016; 10 page
A Language and Hardware Independent Approach to Quantum-Classical Computing
Heterogeneous high-performance computing (HPC) systems offer novel
architectures which accelerate specific workloads through judicious use of
specialized coprocessors. A promising architectural approach for future
scientific computations is provided by heterogeneous HPC systems integrating
quantum processing units (QPUs). To this end, we present XACC (eXtreme-scale
ACCelerator) --- a programming model and software framework that enables
quantum acceleration within standard or HPC software workflows. XACC follows a
coprocessor machine model that is independent of the underlying quantum
computing hardware, thereby enabling quantum programs to be defined and
executed on a variety of QPUs types through a unified application programming
interface. Moreover, XACC defines a polymorphic low-level intermediate
representation, and an extensible compiler frontend that enables language
independent quantum programming, thus promoting integration and
interoperability across the quantum programming landscape. In this work we
define the software architecture enabling our hardware and language independent
approach, and demonstrate its usefulness across a range of quantum computing
models through illustrative examples involving the compilation and execution of
gate and annealing-based quantum programs