EP-3791295-B1 - APPARATUS AND METHOD FOR QUANTUM COMPUTING PERFORMANCE SIMULATION
Inventors
- MATSUURA, ANNE
- JOHRI, SONIKA
- HOGABOAM, JUSTIN
Dates
- Publication Date
- 20260506
- Application Date
- 20190405
Claims (12)
- A machine-readable medium having program code stored thereon which, when executed by a machine, causes the machine to perform the operations of: initializing (902, 230) a quantum computing system simulator for simulating multiple layers of a quantum computing system including one or more non-quantum layers and one or more physical quantum device layers of the quantum computing system; simulating (903, 203) a first set of operations of the one or more non-quantum layers of the quantum computing system to generate first simulation results; simulating (903, 204) a second set of operations of the one or more physical quantum device layers of the quantum computing system to generate second simulation results; analyzing (904, 220) the first and second simulation results to provide at least one configuration recommendation for the quantum computing system, wherein the at least one configuration recommendation comprises a recommended modification to one or more of the non-quantum layers, wherein the one or more non-quantum layers comprise an algorithm execution preparation layer and a hardware control and execution flow layer, wherein an algorithm execution preparation simulator for the algorithm execution preparation layer simulates resources that must be allocated to compiling and scheduling a sequence of quantum gates to run on a specific qubit device technology and a particular qubit plane organization, and wherein a hardware control and execution flow simulator for the hardware control and execution flow layer simulates parallelism and degree of individual qubit control afforded by available control electronics.
- The machine-readable medium of claim 1 wherein the non-quantum layers comprise a first layer to process quantum runtime program code, a second layer to translate the quantum runtime program code into a plurality of operations, and a third layer to execute the plurality of operations to control one or more physical quantum devices of the one or more physical quantum device layers.
- The machine-readable medium of claim 2 wherein the one or more physical quantum device layers comprise a quantum processor comprising a plurality of quantum bits, qubits, wherein simulation of the second set of operations include simulating the one or more operations performed on the qubits.
- The machine-readable medium of any of claims 1 to 3 further comprising: re-initializing the quantum computing system simulator in accordance with the at least one configuration recommendation; simulating a third set of operations of the one or more non-quantum layers of the quantum computing system to generate third simulation results; simulating a fourth set of operations of the one or more physical quantum device layers of the quantum computing system to generate fourth simulation results; comparing the first simulation results with the third simulation results and comparing the second simulation results with the fourth simulation results to generate a second configuration recommendation for the quantum computing system.
- The machine-readable medium of claim 4 wherein the one or more physical quantum device layers are static.
- The machine-readable medium of any of claims 1 to 5 wherein the one or more physical quantum device layers of the quantum computing system are simulated by a qubit device performance simulator which simulates single qubit and two qubit gate fidelity, state preparation and measurement errors, coherence times, and/or device performance measurements required in the quantum computing system.
- The machine-readable medium of claim 6 wherein the one or more physical quantum device layers of the quantum computing system are further simulated by a qubit plane organization simulator to simulate interconnectivity between physical qubits in a quantum processor.
- A computer-implemented method comprising: initializing (902) a quantum computing system simulator for simulating multiple layers of a quantum computing system including one or more non-quantum layers and one or more physical quantum device layers of the quantum computing system; simulating (903) a first set of operations of the one or more non-quantum layers of the quantum computing system to generate first simulation results; simulating (903) a second set of operations of the one or more physical quantum device layers of the quantum computing system to generate second simulation results; analyzing (904) the first and second simulation results to provide at least one configuration recommendation for the quantum computing system, wherein the at least one configuration recommendation comprises a recommended modification to one or more of the non-quantum layers, wherein the one or more non-quantum layers comprise an algorithm execution preparation layer and a hardware control and execution flow layer, wherein an algorithm execution preparation simulator for the algorithm execution preparation layer simulates resources that must be allocated to compiling and scheduling a sequence of quantum gates to run on a specific qubit device technology and a particular qubit plane organization, and wherein a hardware control and execution flow simulator for the hardware control and execution flow layer simulates parallelism and degree of individual qubit control afforded by available control electronics.
- The method of claim 8 wherein the non-quantum layers comprise a first layer to process quantum runtime program code, a second layer to translate the quantum runtime program code into a plurality of operations, and a third layer to execute the plurality of operations to control one or more physical quantum devices of the one or more physical quantum device layers.
- The method of claim 9 wherein the one or more physical quantum device layers comprise a quantum processor comprising a plurality of quantum bits, qubits, wherein simulation of the second set of operations include simulating the one or more operations performed on the qubits.
- The method of any of claims 8 to 10 further comprising program code to cause the machine to perform the additional operations of: re-initializing the quantum computing system simulator in accordance with the at least one configuration recommendation; simulating a third set of operations of the one or more non-quantum layers of the quantum computing system to generate third simulation results; simulating a fourth set of operations of the one or more physical quantum device layers of the quantum computing system to generate fourth simulation results; comparing the first simulation results with the third simulation results and comparing the second simulation results with the fourth simulation results to generate a second configuration recommendation for the quantum computing system.
- The method of claim 11 wherein the one or more physical quantum device layers are static.
Description
BACKGROUND Field of the Invention The embodiments of the invention relate generally to the field of quantum computing. More particularly, these embodiments relate to an apparatus and method for quantum computing performance simulation. Description of the Related Art Quantum computing refers to the field of research related to computation systems that use quantum mechanical phenomena to manipulate data. These quantum mechanical phenomena, such as superposition (in which a quantum variable can simultaneously exist in multiple different states) and entanglement (in which multiple quantum variables have related states irrespective of the distance between them in space or time), do not have analogs in the world of classical computing, and thus cannot be implemented with classical computing devices. US 2017/228483 A1 discloses a quantum information processing circuity analysis. US 2018/096085 A1 discloses a quantum simulation method that includes generating a set of models representing a quantum system. Summary Embodiments of the invention are set out in the appended claims. BRIEF DESCRIPTION OF THE DRAWINGS A better understanding of the present invention can be obtained from the following detailed description in conjunction with the following drawings, in which : FIGS. 1A-1F illustrate various views of an example quantum dot device, in accordance with one embodiment;FIG. 2 illustrates an exemplary performance simulator comprising a non-quantum simulator and a quantum device simulator;FIG, 3 illustrates additional details of a non-quantum simulator and quantum device simulator;FIGS. 4A-C illustrate examples of a design choice implemented by a quantum computing simulator;FIG. 5 illustrates a set of quantum gates for performing a fast Fourier transform;FIG. 6 illustrates an efficient arrangement of qubits selected by one embodiment of a quantum computing simulator;FIG. 7 illustrates one embodiment of a quantum computing simulator stack;FIG. 8 illustrates another example of a quantum computing performance simulator; andFIG. 9 illustrates one embodiment of a method for a quantum computing simulation. DETAILED DESCRIPTION In the following description, for the purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the embodiments of the invention described below. It will be apparent, however, to one skilled in the art that the embodiments of the invention may be practiced without some of these specific details. In other instances, well-known structures and devices are shown in block diagram form to avoid obscuring the underlying principles of the embodiments of the invention. INTRODUCTION A quantum computer uses quantum-mechanical phenomena such as superposition and entanglement to perform computations. In contrast to digital computers which store data in one of two definite states (0 or 1), quantum computation uses quantum bits (qubits), which can be in superpositions of states. Qubits may be implemented using physically distinguishable quantum states of elementary particles such as electrons and photons. For example, the polarization of a photon may be used where the two states are vertical polarization and horizontal polarization. Similarly, the spin of an electron may have distinguishable states such as "up spin" and "down spin." Qubit states are typically represented by the bracket notations |0〉 and |1〉. In a traditional computer system, a bit is exclusively in one state or the other, i.e., a '0' or a '1.' However, qubits in quantum mechanical systems can be in a superposition of both states at the same time, a trait that is unique and fundamental to quantum computing. Quantum computing systems execute algorithms containing quantum logic operations performed on qubits. The sequence of operations is statically compiled into a schedule and the qubits are addressed using an indexing scheme. This algorithm is then executed a sufficiently large number of times until the confidence interval of the computed answer is above a threshold (e.g., ~95+%). Hitting the threshold means that the desired algorithmic result has been reached. Qubits have been implemented using a variety of different technologies which are capable of manipulating and reading quantum states. These include, but are not limited to quantum dot devices (spin based and spatial based), trapped-ion devices, superconducting quantum computers, optical lattices, nuclear magnetic resonance computers, solid-state NMR Kane quantum devices, electrons-on-helium quantum computers, cavity quantum electrodynamics (CQED) devices, molecular magnet computers, and fullerene-based ESR quantum computers, to name a few. Thus, while a quantum dot device is described below in relation to certain embodiments of the invention, the underlying principles of the invention may be employed in combination with any type of quantum computer including, but not limited to, those listed above. The particular physical implementation us