ConceptioArchiveGoogle Patents
Google Patentsopen access

Quantum computing service supporting local execution of hybrid algorithms — Amazon Technologies, Inc. (US11605016B2)

Amazon Technologies, Inc. · Google Patents
Google Patents · Patents · License: Open Access
Open Source ↗
amazontechnologiesjeffreypaulheckey
patent, google patents, intellectual property, US11605016B2, Amazon Technologies, Inc., Jeffrey Paul Heckey, en, 2023

ABSTRACT

Abstract

A quantum computing service includes connections to one or more quantum hardware providers that are configured to execute quantum circuits using quantum computers based on one or more quantum technologies. The quantum computing service also includes at least one edge computing device located adjacent to a quantum computer at one of the quantum hardware provider facilities. The edge computing device is configured to execute classical computing portions of a hybrid algorithm in coordination with the quantum computer, which executes quantum computing portions of the hybrid algorithm. Results of the execution of the hybrid algorithm are automatically stored to a data storage service accessible to the customer.

Description

BACKGROUND

Quantum computing utilizes the laws of quantum physics to process information. Quantum physics is a theory that describes the behavior of reality at the fundamental level. It is currently the only physical theory that is capable of consistently predicting the behavior of microscopic quantum objects like photons, molecules, atoms, and electrons.

A quantum computer is a device that utilizes quantum mechanics to allow one to write, store, process and read out information encoded in quantum states, e.g. the states of quantum objects. A quantum object is a physical object that behaves according to the laws of quantum physics. The state of a physical object is a description of the object at a given time.

In quantum mechanics, the state of a two-level quantum system, or simply, a qubit, is a list of two complex numbers whose squares sum up to one. Each of the two numbers is called an amplitude, or quasi-probability. The square of an amplitude gives a potentially negative probability. Hence, each of the two numbers correspond to the square root that event zero and event one will happen, respectively. A fundamental and counterintuitive difference between a probabilistic bit (e.g. a traditional zero or one bit) and the qubit is that a probabilistic bit represents a lack of information about a two-level classical system, while a qubit contains maximal information about a two-level quantum system.

Quantum computers are based on such quantum bits (qubits), which may experience the phenomena of “superposition” and “entanglement.” Superposition allows a quantum system to be in multiple states at the same time. For example, whereas a classical computer is based on bits that are either zero or one, a qubit may be both zero and one at the same time, with different probabilities assigned to zero and one. Entanglement is a strong correlation between quantum particles, such that the quantum particles are inextricably linked in unison even if separated by great distances.

A quantum algorithm is a reversible transformation acting on qubits in a desired and controlled way, followed by a measurement on one or multiple qubits. For example, if a system has two qubits, a transformation may modify four numbers; with three qubits this becomes eight numbers, and so on. As such, a quantum algorithm acts on a list of numbers exponentially large as dictated by the number of qubits. To implement a transform, the transform may be decomposed into small operations acting on a single qubit, or a pair of qubits, as an example. Such small operations may be called quantum gates and the arrangement of the gates to implement a transformation may form a quantum circuit.

There are different types of qubits that may be used in quantum computers, each having different advantages and disadvantages. For example, some quantum computers may include qubits built from superconductors, trapped ions, semiconductors, photonics, etc. Each may experience different levels of interference, errors and decoherence. Also, some may be more useful for generating particular types of quantum circuits or quantum algorithms, while others may be more useful for generating other types of quantum circuits or quantum algorithms. Also, costs, run-times, error rates, availability, etc. may vary across quantum computing technologies.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a quantum computing service of a service provider network that enables customers to access quantum computers that use multiple quantum computing technologies, according to some embodiments.

FIG. 2 illustrates edge computing devices of a quantum computing service physically located at quantum hardware provider locations, according to some embodiments.

FIG. 3 illustrates a service provider network comprising a quantum computing service, virtual computing service, and storage service, according to some embodiments.

FIG. 4 illustrates an example quantum computing service quantum algorithm development kit interface, according to some embodiments.

FIG. 5 illustrates an example quantum computing service quantum algorithm development kit interface displaying a problem-domain design paradigm, according to some embodiments.

FIG. 6 illustrates an example quantum computing service quantum algorithm development kit interface displaying a quantum algorithm design paradigm, according to some embodiments.

FIG. 7 illustrates an example quantum computing service quantum algorithm development kit interface displaying a quantum circuit design paradigm, according to some embodiments.

FIG. 8 illustrates an example flowchart for designing a quantum task, algorithm, or circuit using a quantum algorithm development kit interface, according to some embodiments.

FIG. 9 illustrates example translations of a quantum task, algorithm, or circuit defined via a quantum algorithm development kit interface into quantum computing technology specific representations, according to some embodiments.

FIG. 10 illustrates example translations of an intermediate representation of a quantum task, algorithm, or circuit into any of a plurality of supported quantum computing technology representations, according to some embodiments.

FIG. 11 A illustrates a process involving a quantum computing service receiving, translating, and executing a quantum task, algorithm, or circuit, according to some embodiments.

FIG. 11 B illustrates additional steps that may be performed to translate a quantum task, algorithm, or circuit from an intermediate representation to a quantum computing technology specific representation, according to some embodiments.

FIG. 12 illustrates an example quantum circuit optimization process, according to some embodiments.

FIG. 13 illustrates an example edge computing device connected to a quantum computing service, according to some embodiments.

FIG. 14 illustrates example interactions between a quantum computing service and an edge computing device of the quantum computing service, according to some embodiments.

FIG. 15 A , illustrates an example process for transporting quantum circuits from a quantum computing service to an edge computing device of the quantum computing service, according to some embodiments.

FIG. 15 B , illustrates an example process for scheduling execution of a quantum circuit on a quantum computer by an edge computing device of a quantum computing service that is located at a quantum hardware provider location, according to some embodiments.

FIG. 15 C , illustrates an example process for processing results of an execution of a quantum circuit on a quantum computer by an edge computing device of a quantum computing service that is located at a quantum hardware provider location, according to some embodiments.

FIG. 16 illustrates an example process for adding additional quantum computing technologies, as supported quantum computing technologies, to a quantum computing service, according to some embodiments.

FIG. 17 , illustrates example interactions between a classical computer implemented on an edge computing device of a quantum computing service, located at a quantum hardware provider location, and a quantum computer at the quantum hardware provider location, according to some embodiments.

FIG. 18 illustrates an example process for executing a hybrid algorithm using an edge computing device of a quantum computing service, located at a quantum hardware provider location, according to some embodiments.

FIG. 19 illustrates example virtualization management software components which may be executed at an edge computing device of a quantum computing service, located at a quantum hardware provider location, according to some embodiments.

FIG. 20 illustrates an example network configuration for an isolated virtual network that includes an edge computing device of a quantum computing service, located at a quantum hardware provider location, according to some embodiments.

FIG. 21 illustrates an example shippable pre-configured edge computing device of a quantum computing service, according to some embodiments.

FIG. 22 is a block diagram that illustrates example components of a shippable pre-configured edge computing device of a quantum computing service, according to some embodiments.

FIG. 23 is a block diagram illustrating an example computing device that may be used in at least some embodiments.

While embodiments are described herein by way of example for several embodiments and illustrative drawings, those skilled in the art will recognize that embodiments are not limited to the embodiments or drawings described. It should be understood, that the drawings and detailed description thereto are not intended to limit embodiments to the particular form disclosed, but on the contrary, the intention is to cover all modifications, equivalents and alternatives falling within the spirit and scope as defined by the appended claims. The headings used herein are for organizational purposes only and are not meant to be used to limit the scope of the description or the claims. As used throughout this application, the word “may” is used in a permissive sense (i.e., meaning having the potential to), rather than the mandatory sense (i.e., meaning must). Similarly, the words “include,” “including,” and “includes” mean including, but not limited to. When used in the claims, the term “or” is used as an inclusive or and not as an exclusive or. For example, the phrase “at least one of x, y, or z” means any one of x, y, and z, as well as any combination thereof.

DETAILED DESCRIPTION

The present disclosure relates to methods and apparatus for providing quantum computing services supporting multiple different quantum computing technologies to customers and enabling customers to seamlessly use the different quantum computing technologies without requiring the customers to have specific knowledge of the underlying quantum computing technologies.

In some embodiments, a system includes a service provider network comprising one or more computing devices that are configured to implement a quantum computing service. The system also includes a first edge computing device of the service provider network located at a location of a first quantum hardware provider and a second edge computing device of the service provider network located at a location of a second quantum hardware provider. The one or more computing devices that implement the quantum computing service are configured to receive, from a customer of the quantum computing service, a definition of a quantum computing object to be executed and select at least one of the first or second quantum hardware providers to execute the quantum computing object. In some embodiments, the quantum computing object may be a quantum task, such as a task defined using a problem-domain interface of a quantum algorithm development kit; a quantum algorithm defined using a quantum algorithm development kit of the quantum computing service or provided by a customer; or a quantum circuit defined using the quantum algorithm development kit of the quantum computing service, or supplied by a customer. In some embodiments, the one or more computing device that implement the quantum computing service may further be configured to provide the customer with a recommendation in regard to which quantum hardware provider to use to execute the customer's quantum computing object, and the selection of the first or second quantum hardware provider to execute the quantum computing object may be based on the recommendation and/or other input received from the customer regarding which quantum hardware provider to select to execute the customer's quantum computing object. In some embodiments, the recommendation may include estimated costs, error rates, run-time, etc. associated with executing the quantum computing object on quantum computers of respective ones of the quantum hardware providers.

The one or more computing devices implementing the quantum computing service are further configured to submit a quantum circuit corresponding to the quantum computing object to a selected one or more of the quantum hardware providers via the first or second edge computing device located at the respective locations of the selected one or more quantum hardware providers, receive results of executing the quantum circuit on a quantum computer of the selected one or more quantum hardware providers, store the results of executing the quantum circuit, and provide a notification to the customer that execution of the quantum computing object has been completed.

In some embodiments, a method includes receiving, at a quantum computing service implemented on one or more computing devices, from a customer of the quantum computing service, a definition of a quantum computing task to be performed. The method also includes selecting, by the quantum computing service, at least one of a first quantum hardware provider or a second quantum hardware provider to perform the quantum computing task, wherein the first quantum hardware provider and the second quantum hardware provider are configured to execute quantum computing tasks using quantum computers based on different quantum computing technologies. Additionally, the method includes submitting, by the quantum computing service, a quantum circuit corresponding to the quantum computing task to the selected at least one quantum hardware provider via a first edge computing device of the quantum computing service located at a location of the first quantum hardware provider or a second edge device of the quantum computing service located at a location of the second quantum hardware provider. Also, the method includes causing execution results received from the first or second quantum hardware provider to be stored and providing, by the quantum computing service, a notification to the customer that the quantum computing task has been completed.

In some embodiments, one or more non-transitory computer-readable media store program instructions, that when executed on or across one or more processors, cause the one or more processors to receive a definition of a quantum computing task to be performed and determine at least one of a first quantum hardware provider or a second quantum hardware provider to perform the quantum computing task, wherein the first quantum hardware provider and the second quantum hardware provider are configured to execute quantum computing tasks using quantum computers based on different quantum computing technologies. Additionally, the program instructions cause the one or more processors to submit the quantum computing task to the at least one quantum hardware provider via a first edge computing device of the quantum computing service located at a location of the first quantum hardware provider or a second edge device of the quan

BACKGROUND

Quantum computing utilizes the laws of quantum physics to process information. Quantum physics is a theory that describes the behavior of reality at the fundamental level. It is currently the only physical theory that is capable of consistently predicting the behavior of microscopic quantum objects like photons, molecules, atoms, and electrons.

A quantum computer is a device that utilizes quantum mechanics to allow one to write, store, process and read out information encoded in quantum states, e.g. the states of quantum objects. A quantum object is a physical object that behaves according to the laws of quantum physics. The state of a physical object is a description of the object at a given time.

In quantum mechanics, the state of a two-level quantum system, or simply, a qubit, is a list of two complex numbers whose squares sum up to one. Each of the two numbers is called an amplitude, or quasi-probability. The square of an amplitude gives a potentially negative probability. Hence, each of the two numbers correspond to the square root that event zero and event one will happen, respectively. A fundamental and counterintuitive difference between a probabilistic bit (e.g. a traditional zero or one bit) and the qubit is that a probabilistic bit represents a lack of information about a two-level classical system, while a qubit contains maximal information about a two-level quantum system.

Quantum computers are based on such quantum bits (qubits), which may experience the phenomena of “superposition” and “entanglement.” Superposition allows a quantum system to be in multiple states at the same time. For example, whereas a classical computer is based on bits that are either zero or one, a qubit may be both zero and one at the same time, with different probabilities assigned to zero and one. Entanglement is a strong correlation between quantum particles, such that the quantum particles are inextricably linked in unison even if separated by great distances.

A quantum algorithm is a reversible transformation acting on qubits in a desired and controlled way, followed by a measurement on one or multiple qubits. For example, if a system has two qubits, a transformation may modify four numbers; with three qubits this becomes eight numbers, and so on. As such, a quantum algorithm acts on a list of numbers exponentially large as dictated by the number of qubits. To implement a transform, the transform may be decomposed into small operations acting on a single qubit, or a pair of qubits, as an example. Such small operations may be called quantum gates and the arrangement of the gates to implement a transformation may form a quantum circuit.

There are different types of qubits that may be used in quantum computers, each having different advantages and disadvantages. For example, some quantum computers may include qubits built from superconductors, trapped ions, semiconductors, photonics, etc. Each may experience different levels of interference, errors and decoherence. Also, some may be more useful for generating particular types of quantum circuits or quantum algorithms, while others may be more useful for generating other types of quantum circuits or quantum algorithms. Also, costs, run-times, error rates, availability, etc. may vary across quantum computing technologies.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a quantum computing service of a service provider network that enables customers to access quantum computers that use multiple quantum computing technologies, according to some embodiments.

FIG. 2 illustrates edge computing devices of a quantum computing service physically located at quantum hardware provider locations, according to some embodiments.

FIG. 3 illustrates a service provider network comprising a quantum computing service, virtual computing service, and storage service, according to some embodiments.

FIG. 4 illustrates an example quantum computing service quantum algorithm development kit interface, according to some embodiments.

FIG. 5 illustrates an example quantum computing service quantum algorithm development kit interface displaying a problem-domain design paradigm, according to some embodiments.

FIG. 6 illustrates an example quantum computing service quantum algorithm development kit interface displaying a quantum algorithm design paradigm, according to some embodiments.

FIG. 7 illustrates an example quantum computing service quantum algorithm development kit interface displaying a quantum circuit design paradigm, according to some embodiments.

FIG. 8 illustrates an example flowchart for designing a quantum task, algorithm, or circuit using a quantum algorithm development kit interface, according to some embodiments.

FIG. 9 illustrates example translations of a quantum task, algorithm, or circuit defined via a quantum algorithm development kit interface into quantum computing technology specific representations, according to some embodiments.

FIG. 10 illustrates example translations of an intermediate representation of a quantum task, algorithm, or circuit into any of a plurality of supported quantum computing technology representations, according to some embodiments.

FIG. 11 A illustrates a process involving a quantum computing service receiving, translating, and executing a quantum task, algorithm, or circuit, according to some embodiments.

FIG. 11 B illustrates additional steps that may be performed to translate a quantum task, algorithm, or circuit from an intermediate representation to a quantum computing technology specific representation, according to some embodiments.

FIG. 12 illustrates an example quantum circuit optimization process, according to some embodiments.

FIG. 13 illustrates an example edge computing device connected to a quantum computing service, according to some embodiments.

FIG. 14 illustrates example interactions between a quantum computing service and an edge computing device of the quantum computing service, according to some embodiments.

FIG. 15 A , illustrates an example process for transporting quantum circuits from a quantum computing service to an edge computing device of the quantum computing service, according to some embodiments.

FIG. 15 B , illustrates an example process for scheduling execution of a quantum circuit on a quantum computer by an edge computing device of a quantum computing service that is located at a quantum hardware provider location, according to some embodiments.

FIG. 15 C , illustrates an example process for processing results of an execution of a quantum circuit on a quantum computer by an edge computing device of a quantum computing service that is located at a quantum hardware provider location, according to some embodiments.

FIG. 16 illustrates an example process for adding additional quantum computing technologies, as supported quantum computing technologies, to a quantum computing service, according to some embodiments.

FIG. 17 , illustrates example interactions between a classical computer implemented on an edge computing device of a quantum computing service, located at a quantum hardware provider location, and a quantum computer at the quantum hardware provider location, according to some embodiments.

FIG. 18 illustrates an example process for executing a hybrid algorithm using an edge computing device of a quantum computing service, located at a quantum hardware provider location, according to some embodiments.

FIG. 19 illustrates example virtualization management software components which may be executed at an edge computing device of a quantum computing service, located at a quantum hardware provider location, according to some embodiments.

FIG. 20 illustrates an example network configuration for an isolated virtual network that includes an edge computing device of a quantum computing service, located at a quantum hardware provider location, according to some embodiments.

FIG. 21 illustrates an example shippable pre-configured edge computing device of a quantum computing service, according to some embodiments.

FIG. 22 is a block diagram that illustrates example components of a shippable pre-configured edge computing device of a quantum computing service, according to some embodiments.

FIG. 23 is a block diagram illustrating an example computing device that may be used in at least some embodiments.

While embodiments are described herein by way of example for several embodiments and illustrative drawings, those skilled in the art will recognize that embodiments are not limited to the embodiments or drawings described. It should be understood, that the drawings and detailed description thereto are not intended to limit embodiments to the particular form disclosed, but on the contrary, the intention is to cover all modifications, equivalents and alternatives falling within the spirit and scope as defined by the appended claims. The headings used herein are for organizational purposes only and are not meant to be used to limit the scope of the description or the claims. As used throughout this application, the word “may” is used in a permissive sense (i.e., meaning having the potential to), rather than the mandatory sense (i.e., meaning must). Similarly, the words “include,” “including,” and “includes” mean including, but not limited to. When used in the claims, the term “or” is used as an inclusive or and not as an exclusive or. For example, the phrase “at least one of x, y, or z” means any one of x, y, and z, as well as any combination thereof.

DETAILED DESCRIPTION

The present disclosure relates to methods and apparatus for providing quantum computing services supporting multiple different quantum computing technologies to customers and enabling customers to seamlessly use the different quantum computing technologies without requiring the customers to have specific knowledge of the underlying quantum computing technologies.

In some embodiments, a system includes a service provider network comprising one or more computing devices that are configured to implement a quantum computing service. The system also includes a first edge computing device of the service provider network located at a location of a first quantum hardware provider and a second edge computing device of the service provider network located at a location of a second quantum hardware provider. The one or more computing devices that implement the quantum computing service are configured to receive, from a customer of the quantum computing service, a definition of a quantum computing object to be executed and select at least one of the first or second quantum hardware providers to execute the quantum computing object. In some embodiments, the quantum computing object may be a quantum task, such as a task defined using a problem-domain interface of a quantum algorithm development kit; a quantum algorithm defined using a quantum algorithm development kit of the quantum computing service or provided by a customer; or a quantum circuit defined using the quantum algorithm development kit of the quantum computing service, or supplied by a customer. In some embodiments, the one or more computing device that implement the quantum computing service may further be configured to provide the customer with a recommendation in regard to which quantum hardware provider to use to execute the customer's quantum computing object, and the selection of the first or second quantum hardware provider to execute the quantum computing object may be based on the recommendation and/or other input received from the customer regarding which quantum hardware provider to select to execute the customer's quantum computing object. In some embodiments, the recommendation may include estimated costs, error rates, run-time, etc. associated with executing the quantum computing object on quantum computers of respective ones of the quantum hardware providers.

The one or more computing devices implementing the quantum computing service are further configured to submit a quantum circuit corresponding to the quantum computing object to a selected one or more of the quantum hardware providers via the first or second edge computing device located at the respective locations of the selected one or more quantum hardware providers, receive results of executing the quantum circuit on a quantum computer of the selected one or more quantum hardware providers, store the results of executing the quantum circuit, and provide a notification to the customer that execution of the quantum computing object has been completed.

In some embodiments, a method includes receiving, at a quantum computing service implemented on one or more computing devices, from a customer of the quantum computing service, a definition of a quantum computing task to be performed. The method also includes selecting, by the quantum computing service, at least one of a first quantum hardware provider or a second quantum hardware provider to perform the quantum computing task, wherein the first quantum hardware provider and the second quantum hardware provider are configured to execute quantum computing tasks using quantum computers based on different quantum computing technologies. Additionally, the method includes submitting, by the quantum computing service, a quantum circuit corresponding to the quantum computing task to the selected at least one quantum hardware provider via a first edge computing device of the quantum computing service located at a location of the first quantum hardware provider or a second edge device of the quantum computing service located at a location of the second quantum hardware provider. Also, the method includes causing execution results received from the first or second quantum hardware provider to be stored and providing, by the quantum computing service, a notification to the customer that the quantum computing task has been completed.

In some embodiments, one or more non-transitory computer-readable media store program instructions, that when executed on or across one or more processors, cause the one or more processors to receive a definition of a quantum computing task to be performed and determine at least one of a first quantum hardware provider or a second quantum hardware provider to perform the quantum computing task, wherein the first quantum hardware provider and the second quantum hardware provider are configured to execute quantum computing tasks using quantum computers based on different quantum computing technologies. Additionally, the program instructions cause the one or more processors to submit the quantum computing task to the at least one quantum hardware provider via a first edge computing device of the quantum computing service located at a location of the first quantum hardware provider or a second edge device of the quantum computing service located at a location of the second quantum hardware provider and provide a notification when the quantum computing task has been completed.

In some embodiments, a system includes one or more computing devices of a service provider network that are configured to implement a quantum computing service configured to receive a quantum computing object defined in an intermediate representation. For example, the quantum computing object may be a quantum task, such as defined using a problem-domain interface of a quantum algorithm development kit; a quantum algorithm defined using a quantum algorithm development kit of the quantum computing service or provided by a customer; or a quantum circuit defined using the quantum algorithm development kit of the quantum computing service, or supplied by a customer. In some embodiments, the one or more computing devices that implement the quantum computing service may further be configured to provide the customer with a recommendation in regard to which quantum computing format to use to execute the customer's quantum computing object, and the selection of the quantum computing format to execute the quantum computing object may be based on the recommendation and/or other input received from the customer regarding which quantum computing format to select to execute the customer's quantum computing object. In some embodiments, the recommendation may include estimated costs, error rates, run-time, etc. associated with executing the quantum computing object on quantum computers of respective ones of the quantum hardware providers.

The quantum computing service is also configured to translate the quantum computing object into a selected quantum circuit format for a particular quantum computing technology, wherein the selected quantum circuit format for the particular quantum computing technology is one of a plurality of quantum circuit formats for a plurality of different quantum computing technologies supported by the quantum computing service.

To translate the quantum computing object into the selected quantum circuit format, the one or more computing devices that implement the quantum computing service are configured to identify portions of the quantum computing object corresponding to quantum operators in the intermediate representation, substitute the quantum operators of the intermediate representation with quantum operators of the quantum circuit format of the particular quantum computing technology, and perform one or more optimizations to reduce an overall number of quantum operators in a translated quantum circuit that is a translated version of the received quantum computing object.

Additionally, the quantum computing service is configured to provide the translated quantum circuit for execution at a quantum hardware provider that uses the particular quantum computing technology; receive, from the quantum hardware provider, results of the execution of the translated quantum circuit; and provide a notification to a customer of the quantum computing service that the quantum computing object has been executed.

In some embodiments, a method includes receiving, at a quantum computing service implemented on one or more computing devices, a quantum computing object defined in an intermediate representation and translating, by the quantum computing service, the quantum computing object into a format for a particular quantum computing technology, wherein the format for the particular quantum computing technology is one of a plurality of formats for a plurality of different quantum computing technologies supported by the quantum computing service. Translating the quantum computing object into the format for the particular quantum computing technology comprises identifying portions of the quantum computing object corresponding to quantum operators in the intermediate representation and substituting the quantum operators of the intermediate representation with quantum operators of the format for the particular quantum computing technology. Also, translating the quantum computing object into the format for the particular quantum computing technology may comprise performing one or more optimizations to reduce an overall number of quantum operators included in a translated quantum circuit that is a translated version of the received quantum computing object.

In some embodiments, one or more non-transitory computer-readable media store program instructions, that when executed on or across one or more processors, cause the one or more processors to receive a quantum computing object defined in an intermediate representation and translate the quantum computing object into a format for a particular quantum computing technology, wherein the format for the particular quantum computing technology is one of a plurality of supported formats for a plurality of different quantum computing technologies. To translate the quantum computing object into the format for the particular quantum computing technology, the one or program instructions, when executed one or across the one or more processors, cause the one or more processors to identify portions of the quantum computing object corresponding to quantum operators in the intermediate representation; substitute the quantum operators of the intermediate representation with quantum operators of the quantum format of the particular quantum computing technology; and perform one or more optimizations to reduce an overall number of quantum operators in a translated quantum circuit that is a translated version of the quantum computing object.

In some embodiments, a quantum operator included in a quantum object may correspond with a quantum gate. Also, in some embodiments, optimization reduce an overall number of quantum operators may include reducing an overall number of quantum gates included in the translated quantum circuit. In some embodiments, a quantum operator included in a quantum circuit may be an operator used to program other types of quantum computing systems, such as a quantum annealer.

In some embodiments, a system includes one or more computing devices of a service provider network configured to implement a quantum computing service. The system also includes a first edge computing device of the service provider network located at a location of a first quantum hardware provider and a second edge computing device of the service provider network located at a location of a second quantum hardware provider. The first quantum hardware provider and the second quantum hardware provider are configured to execute quantum computing circuits using quantum computers based on different quantum computing technologies. Additionally, the first and second edge computing devices are each configured to instantiate a virtual machine implemented on classical computing hardware of the respective first or second edge computing device and receive, via the quantum computing service, a hybrid quantum computing algorithm comprising classical computing portions and quantum computing portions.

Additionally, the first and second edge computing devices are each configured to execute the classical computing portions on the virtual machine implemented on the classical computing hardware of the respective first or second edge computing device and coordinate execution of the quantum computing portions on a quantum computer at the respective first or second quantum hardware provider location where the respective first or second edge computing device is located. For example, in some embodiments, the first and second edge computing devices are each configured to instantiate at least one virtual machine to manage coordinating execution of the quantum computing portions of the hybrid quantum computing algorithm and also instantiate one or more virtual machine to execute the classical computing portions of the hybrid quantum computing algorithm. Wherein the classical portions are executed locally at the quantum hardware provider such that there is minimal latency between the classical computer of the virtual machine implemented on the edge computing device and the quantum computer at the quantum hardware provider.

Also, the first and second edge computing devices are each configured to submit results generated from executing the hybrid quantum computing algorithm to a data storage system of the service provider network, wherein one or more computing devices implementing the data storage system are located at a facility of the service provider network remote from the location of the respective first or second quantum hardware provider.

In some embodiments, an edge computing device includes a first network connector configured to couple with a local network of a quantum hardware provider, a second network connector configured to connect to a quantum computing service, and classical computing hardware. The classical computing hardware includes one or more processors and a memory storing program instructions, that when executed on or across the one or more processors, cause the one or more processors to instantiate a virtual machine implemented on the classical computing hardware of the edge computing device; and receive, from a quantum computing service via the second connector, a hybrid quantum computing algorithm comprising classical computing portions and quantum computing portions. The program instructions further cause the one or more processors to execute the classical computing portions on the virtual machine implemented on the classical computing hardware of the edge computing device; coordinate, via the first connector coupled to the local network of the quantum hardware provider, execution of the quantum computing portions on a quantum computer at a location of the quantum hardware provider where the edge computing device is located; and submit, via the second connector, results generated from executing the hybrid quantum computing algorithm to a data storage system of a service provider network that includes the quantum computing service, wherein one or more computing devices implementing the data storage system are located at a facility of the service provider network remote from the location of the quantum hardware provider.

In some embodiments, a method includes instantiating a virtual machine implemented on classical computing hardware of an edge computing device located at a quantum hardware provider location and connected to a quantum computing service implemented via one or more computing devices at a location remote from the quantum hardware provider location and receiving, via the quantum computing service, a hybrid quantum computing algorithm comprising classical computing portions and quantum computing portions. The method further includes executing the classical computing portions on the virtual machine implemented on the classical computing hardware of the edge computing device located at the quantum hardware provider location; coordinating execution of the quantum computing portions on a quantum computer at the quantum hardware provider location; and submitting results generated from executing the hybrid quantum computing algorithm to a data storage system, wherein one or more computing devices implementing the data storage system are located remote from the quantum hardware provider location.

In some embodiments, a system includes one or more computing devices of a service provider network configured to implement a quantum computing service. The system also includes a first edge computing device of the service provider network located at a location of a first quantum hardware provider and a second edge computing device of the service provider network located at a location of a second quantum hardware provider, wherein the first quantum hardware provider and the second quantum hardware provider are configured to execute quantum computing circuits using quantum computers based on different quantum computing technologies. The first and second edge computing devices are each configured to receive one or more quantum computing circuits to be executed on a quantum computer at the first or second hardware provider location, schedule availability on the quantum computer for executing the one or more quantum computing circuits, store the one or more quantum computing circuits in a local queue of the first or second edge computing device, and submit the one or more quantum computing circuits to the quantum computer at the first or second quantum hardware provider location for execution during the scheduled availability.

In some embodiments, an edge computing device includes a first network connector configured to couple with a local network of a quantum hardware provider and a second network connector configured to connect the edge computing device to a quantum computing service. The edge computing device also includes one or more processors and a memory storing program instructions, that when executed on or across the one or more processors, cause the one or more processors to receive one or more quantum computing circuits to be executed on a quantum computer at a location of the quantum hardware provider where the edge computing device is located; schedule availability on the quantum computer for executing the one or more quantum computing circuits; store the one or more quantum computing circuits in a local queue pending the availability; and submit the one or more quantum computing circuits to the quantum computer at the location of the quantum hardware provider for execution during the scheduled availability.

In some embodiments, one or more non-transitory computer-readable media store program instructions, that when executed on or across one or more processors, cause the one or more processors to receive, from a quantum computing service, one or more quantum computing circuits to be executed on a quantum computer at quantum hardware provider location, wherein the quantum hardware provider location is remote from one or more computers that implement the quantum computing service; coordinate scheduling availability on the quantum computer for executing the one or more quantum computing circuits; cause the one or more quantum computing circuits to be stored in a local queue pending the availability; and submit the one or more quantum computing circuits to the quantum computer at the quantum hardware provider location for execution during the scheduled availability.

In some embodiments, an edge computing device of a quantum computing service located at a quantum hardware provider location may include a virtualization offloading component that manages compute instances (e.g. virtual machines) instantiated on the edge computing device. In some embodiments, a virtualization offloading component of an edge computing device located at a quantum hardware provider location may provide a compute instance instantiated on the edge computing device access to a quantum machine image stored in a block-based storage service of the service provider network for use in booting the compute instance (e.g. virtual machine) on the edge computing device. Also, the virtualization offloading component may provide another compute instance instantiated on the edge computing device access to a hybrid compute machine image stored in the block-based storage service. In some embodiments, the virtualization offloading component may provide yet a third compute instance access to a customer selected machine image stored in the block-based storage service. Alternatively in some embodiments, the machine images, such as the quantum machine image and the hybrid compute machine image may be stored in a local persistent store of the edge computing device located at the quantum hardware provider location.

Also, in some embodiments, the virtualization offloading component of the edge computing device may manage network traffic between a compute instance instantiated on the edge computing device and other instances or services of the service provider network. For example, the virtualization offloading component may route packets to or from the compute instance over a substrate network of the virtualized computing service and may perform encapsulation or address re-direction of the packets. Additionally, the virtualization offloading component may manage security for a compute instance instantiated on the edge computing device. For example, the virtualization offloading component may encrypt and decrypt incoming and outgoing traffic and may manage security keys for the compute instance instantiated on the edge computing device. Additionally, the virtualization offloading component may manage traffic such that a given compute instance instantiated on the edge computing device is included in an isolated virtual network, e.g. a virtual private cloud, and may manage address translation between private and/or public addresses for the compute instance. In some embodiments, these virtualization tasks may be performed on processors or cores of the virtualization offloading component that are separate from other hardware of the edge computing device, but that are included in the same chassis with the edge computing device.

In some embodiments, a virtualized computing service may be among a plurality of network-accessible services (e.g., including storage services, database services, etc.) implemented at a service provider network or in a cloud computing environment.

In some embodiments, the virtualization offloading components of the edge computing devices may include various elements of hardware (e.g., including processors/cores, memories, storage devices, circuitry for power management, security management and the like) and software that collectively implement network and storage virtualization management, provide access to storage volumes via block-device interfaces, and incorporate the compute instances instantiated on the edge computing device within isolated virtual networks (IVNs) or other logical networks set up for the customer at the virtualized computing service.

In various embodiments, a virtualized computing service may comprise a physical network, referred to as a substrate network, to which hardware servers at a service provider data center and edge computing devices at a quantum hardware provider location, as well as various other devices (such as networking intermediary devices including routers, switches, gateways and the like) may be connected. Utilizing the substrate network as underlying infrastructure, logical networks may be configured in such embodiments on behalf of various virtualized computing service customers. For example, a set of compute instances (including virtual machines, bare-metal instances that allow un-virtualized access to at least some hardware components of the underlying servers, etc.) may be configured on behalf of customer C1 within a logical network called an isolated virtual network IVN1 (also referred to herein a virtual private cloud or VPC), while another set of compute instances may be configured on behalf of a different customer C2 within another isolated virtual network IVN2.

An isolated virtual network (IVN) or virtual private cloud (VPC) may comprise a collection of networked resources (including compute instances) assigned or allocated to a given customer, which are logically isolated from (and by default, inaccessible from) resources allocated for other customers in other isolated virtual networks or other virtual private clouds. The customer on whose behalf an IVN (or VPC) is established may be granted substantial flexibility regarding network configuration for the resources of the IVN (or VPC)—e.g., private IP addresses for compute instances may be selected by the customer without having to consider the possibility that other resources within other IVNs (or VPCs) may have been assigned the same IP addresses, subnets of the customer's choice may be established within the IVN (or VPC), security rules may be set up by the customer for incoming and outgoing traffic with respect to the IVN (or VPC), and so on.

Furthermore, in at least some embodiments, custom network endpoints may be set up within IVNs (or VPCs) to enable compute instances of the IVN (or VPC) to communicate with network-accessible services of the service provider network (such as storage services, database services, machine learning services, etc.) using private network pathways of the provider network, without having to traverse or use links or devices of the public Internet. In various embodiments, the network addresses assigned to compute instances within an IVN (or VPC) may differ from the substrate network addresses assigned to the hardware servers on which the compute instances run. An encapsulation protocol and associated mapping service may be used to route the flows of network traffic within and across the IVNs (or VPCs) (e.g., from one compute instance to another, between client devices external to the virtualized computing service and the compute instances, or between compute instances and other provider network services) over the links and servers of the underlying substrate network in various embodiments. The virtualized computing service may also comprise a set of administrative or data plane components in various embodiments, responsible for tasks such as provisioning hardware, monitoring other resources, receiving and processing instance configuration commands from customers, and so on.

The virtualization offloading component of an edge computing device at a quantum hardware provider location may initiate one or more configuration operations of a compute instance on behalf of the customer in various embodiments, including for example launching the compute instance, changing networking or other configuration settings, terminating the instance, and so on. In at least one embodiment, a bare metal compute instance may be instantiated on an edge computing device on behalf of the customer via a virtualization offloading component included in the edge computing device, enabling un-virtualized access to at least some of the edge computing device's hardware devices/components. In various embodiments, a compute instance implemented on an edge computing device may be configured within an isolated virtual network of the service provider network based at least in part on operations performed using the one or more networking managers running at a virtualization offloading component included in the edge computing device. Such networking managers may, for example, store an indication of a network address (within a range of private network addresses of an isolated virtual network established at the virtualized computing service) which has been assigned to a compute instance configured at the edge computing device, and/or may assign such an address to a virtual network interface programmatically attached to such a compute instance.

In some embodiments, a compute instance of an edge computing device may be provided access to a root volume (and/or other logical storage devices, file systems, and the like) based at least in part on operations performed by the one or more storage managers running at the virtualization offloading component included in the edge computing device. For example, in some embodiments the storage managers may set up, modify, or otherwise configure the root volume using a block-storage service of the service provider network, and/or other logical storage devices, file systems and the like. In some embodiments, the virtualization offloading component may comprise one or more persistent storage devices (e.g., devices accessible via an NVME (non-volatile memory express) interface) at which the contents of the root volume and/or other storage objects accessed from the compute instances of the edge computing device may be stored. Additionally, or alternatively, the virtualization offloading component may be connected, for example, via a SATA cable connection, to one or more solid-state drives included in the edge computing device at which the contents of the root volume and/or other storage objects accessed from the compute instances of the edge computing device may be stored.

According to at least one embodiment, the networking managers of the virtualization offloading component may include a network interface card (NIC) emulator and/or an IVN connectivity manager. Encapsulation/de-capsulation operations of the encapsulation protocol of the virtualized computing service may be implemented at the networking managers in some embodiments, e.g., for packets directed from a data center compute instance within a particular IVN to an edge computing device compute instance running at the same IVN or a different IVN. In at least one embodiment, the networking managers of the virtualization offloading component may be configured to log various types of network traffic directed to and/or from the compute instance(s), e.g., including Domain Name Service traffic directed to DNS servers in or outside the provider network, and provide such logs via programmatic interfaces to the customer on whose behalf the compute instance is configured.

A number of programmatic interfaces (e.g., web-based consoles, command-line tools, graphical user interfaces, application programming interfaces (APIs) and the like) may be implemented by the virtualized computing service to enable customers to submit requests pertaining to compute instances in various embodiments and receive corresponding responses. For example, a customer may submit a programmatic request to instantiate a compute instance on an edge computing device located at a quantum hardware provider. In some embodiments, a virtualized computing service may dynamically increase or decrease provisioned compute instances that execute in an edge computing device at a quantum hardware provider location. For example, a customer may request more or fewer instances via a command-line tool or graphical user interface and the virtualized computing service may dynamically add or remove compute instances from the customer's pool of allocated resources. Also, a customer may dynamically add or remove compute instances that execute in at an edge computing device at a quantum hardware provider location to or from isolated virtual networks or VPCs allocated to the customer.

In some embodiments, the server chassis of an edge computing device may include a persistent storage device and the virtualization offloading component may comprise an associated cryptographic storage security device (such as a physical key). A removal of the cryptographic storage security device may render the contents of the persistent storage device unreadable/un-writeable in such an embodiment—that is, the security device may have to be physically present to allow the contents of the persistent storage device to be read or written.

According to at least one embodiment, the virtualization offloading component may comprise one or more small form factor pluggable (SFP) ports. Such ports may be used to establish connectivity with the virtualized computing service substrate network and/or other networks.

According to some embodiments, as mentioned earlier, the provider network of the virtualized computing service may implement one or more other services, such as a database service or an object storage service, which can be accessed from at least some compute instances of the virtualized computing service executing in a quantum hardware provider location using credentials assigned to the compute instances by an instance metadata service (IMDS) of the virtualized computing service. Such an IMDS may also provide other metadata elements to compute instances executing in a quantum hardware provider location, including a unique identifier assigned by the virtualized computing service to the compute instance, an identifier of a machine image used for the compute instance (if any), block device mappings information of the instance, and so on. In some embodiments, the metadata may be accessed from the compute instance executing in the quantum hardware provider location via a link-local HTTP (HyperText Transfer Protocol) address accessible only from within the instance itself. In at least one embodiment, an agent of the IMDS may be run at a virtualization offloading component, and such metadata (including the credentials usable to access other provider network services from the compute instance) may be provided by the agent.

In some embodiments, as mentioned earlier, private service endpoints (PSEs) may be set up within an IVN, e.g., to enable network traffic to flow between compute instances of the IVN and other publicly-accessible service provider network services without using the public Internet. In at least one such embodiments, customers may define and associate various types of policies with such PSEs—e.g., a policy may indicate that only instances CI1, CI2 and CI3 of an IVN are permitted to use an endpoint PSE1 to access a particular storage object SO1 at a storage service SS1. Compute instances set up at quantum hardware provider locations included in an edge computing device with a virtualization offloading component may utilize such PSEs and associated policies in at least some embodiments.

In some embodiments, a virtualization offloading component used to manage compute instances on an edge computing device at a quantum hardware provider location may provide the same elasticity, scalability, reliability, and security that is offered to customers using data center based compute instances. Also, a virtualization offloading component used to manage compute instances on an edge computing device at a quantum hardware provider location may provide seamless access to other services of a service provider network of the virtualized computing service, such as a virtual private cloud service (VPC or IVN), an elastic-block storage service (EBS), a load balancing service (LBS), object-based storage system, etc.

Example Quantum Computing Service

Quantum computers may be difficult and costly to construct and operate. Also, there are varying quantum computing technologies under development with no clear trend as to which of the developing quantum computing technologies may gain prominence. Thus, potential users of quantum computers may be hesitant to invest in building or acquiring a particular type of quantum computer, as other quantum computing technologies may eclipse a selected quantum computing technology that a potential quantum computer user may invest in. Also, successfully using quantum computers to solve practical problems may require significant trial and error and/or otherwise require significant expertise in using quantum computers.

As an alternative to building and maintaining a quantum computer, potential users of quantum computers may instead prefer to rely on a quantum computing service to provide access to quantum computers. Also, in some embodiments, a quantum computing service, as described herein, may enable potential users of quantum computers to access quantum computers based on multiple different quantum computing technologies and/or paradigms, without the cost and resources required to build or manage such quantum computers. Also, in some embodiments, a quantum computing service, as described herein, may provide various services that simplify the experience of using a quantum computer such that potential quantum computer users lacking deep experience or knowledge of quantum mechanics, may, never the less, utilize quantum computing services to solve problems.

Also, in some embodiments, a quantum computing service, as described herein, may be used to supplement other services offered by a service provider network. For example, a quantum computing service may interact with a classical computing service to execute hybrid algorithms. In some embodiments, a quantum computing service may allow a classical computer to be accelerated by sending particular tasks to a quantum computer for execution, and then further performing additional classical compute operations using the results of the execution of a quantum computing object on the quantum computer. For example, a quantum computing service may allow for the acceleration of virtual machines implemented on classical hardware in a similar manner as a graphics processing unit (GPU) may accelerate graphical operations that otherwise would be performed on a central processing unit (CPU).

In some embodiments, a quantum computing service may provide potential quantum computer users with access to quantum computers using various quantum computing technologies, such as quantum annealers, ion trap machines, superconducting machines, photonic devices, etc. In some embodiments, a quantum computing service may provide customers with access to at least three broad categories of quantum computers including quantum annealers, circuit-based quantum computers, and analog or continuous variable quantum computers. As used herein, these three broad categories may be referred to as quantum computing paradigms.

In some embodiments, a quantum computing service may be configured to provide simulation services using classical hardware based computing instances to simulate execution of a quantum circuit on a quantum computer. In some embodiments, a quantum computing service may be configured to perform general simulation and/or simulation that specifically simulates execution of a quantum circuit on a particular type of quantum computer of a particular quantum computer technology type or paradigm type. In some embodiments, simulation may be fully managed by a quantum computing service on behalf of a customer of the quantum computing service. For example, the quantum computing service may reserve sufficient computing capacity on a virtualized computing service of the service provider network to perform simulation without customer involvement in the details of managing the resources for the simulator. Also, in some embodiments, a quantum computing service may maintain one or more “warm” simulators. The “warm” simulators may include simulators that are pre-configured on compute instances of a virtualized computing service and are already instantiated such that the simulators are ready to perform simulation on behalf of quantum computing service customers on demand.

In some embodiments, a quantum computing service may include a dedicated console that provides customers access to multiple quantum computing technologies. Furthermore, the quantum computing service may provide a quantum algorithm development kit that enables customers with varying levels of familiarity with quantum circuit design to design and execute quantum circuits. In some embodiments, a console of a quantum computing service may include various application programmatic interfaces (APIs), such as:

(Create/Delete/Update/Get/List)Simulator-Configuration—create, read, update, and delete (CRUD) operations for simulator configuration objects. (Start/Cancel/Describe)Simulator—used to control each of the user-defined simulator instances. (List/Describe) quantum processor units (QPUs)—retrieves quantum computer hardware information. (Create/Cancel/List/Describe)Task—used to manage the lifecycle of individual quantum tasks/quantum objects.

In some embodiments, a quantum algorithm development kit may include a graphical user interface, APIs or other interface to allow customers of a quantum computing service to define quantum objects, such as quantum tasks, algorithms or circuits, using the quantum algorithm development kit. In the some embodiments, the quantum algorithm development kit may include an interface option that enables customers to share the quantum objects with other customers of the quantum computing service. For example, the quantum algorithm development kit may include a marketplace that allows customers to share or sell particular quantum objects with other customers.

In some embodiments, a quantum computing service may include a public application programmatic interface (API) that accepts quantum objects submitted by a customer of the quantum computing service. Additionally, the quantum computing service may include a back-end API transport that is non-public. The back-end API transport may enable quantum circuits to be transported from a centralized location that implements the quantum computing service, such as one or more data centers of a service provider network, to an edge computing device at a particular quantum hardware provider location where the quantum circuit is to be executed.

In some embodiments, results of the execution of a quantum circuit on a quantum computer at a quantum hardware provider location may be provided to the edge computing device at the quantum hardware provider location. The edge computing device may automatically transport the results to a secure storage service of the service provider network, where the customer can access the results using the storage service of the service provider network or via a console of the quantum computing service.

In some embodiments, the results stored to the secure storage service may be seamlessly used by other services integrated into the service provider network, such as a machine learning service, a database service, an object-based storage service, a block-storage service, a data presentation service (that reformats the results into a more usable configuration), etc. For example, in some embodiments, a machine learning service may be used to optimize a quantum algorithm or quantum circuit. For example, the machine learning service may cause various versions of a quantum algorithm or quantum circuit to be run on a quantum computer via a quantum computing service. The machine learning service may also be provided access to results of running the quantum algorithms or quantum circuits. In some embodiments,

CLAIMS

Claims ( 20 )

What is claimed is:

1. A system comprising:

one or more computing devices of a service provider network, wherein the one or more computing devices are configured to implement a quantum computing service;

a first edge computing device of the service provider network located at a location of a first quantum hardware provider; and

a second edge computing device of the service provider network located at a location of a second quantum hardware provider;

wherein the first quantum hardware provider and the second quantum hardware provider are configured to execute quantum computing circuits using quantum computers based on different quantum computing technologies; and

wherein the first and second edge computing devices are configured to:

instantiate a virtual machine implemented on classical computing hardware of the respective first or second edge computing device;

receive, via the quantum computing service, a hybrid quantum computing algorithm comprising classical computing portions and quantum computing portions;

execute the classical computing portions on the virtual machine implemented on the classical computing hardware of the respective first or second edge computing device;

coordinate execution of the quantum computing portions on a quantum computer at the respective first or second quantum hardware provider location where the respective first or second edge computing device is located; and

submit results generated from executing the hybrid quantum computing algorithm to a data storage system of the service provider network, wherein one or more computing devices implementing the data storage system are located at a facility of the service provider network remote from the location of the respective first or second quantum hardware provider.

2. The system of claim 1 , wherein the virtual machine implemented on the first or the second edge computing device is further configured to:

provide the quantum computing portions as one or more translated quantum computing circuits to be executed on the quantum computer at the respective first or second quantum hardware provider location,

wherein the one or more translated quantum computing circuits are translated into a format in accordance with a quantum computing technology of the quantum computer at the respective first or second quantum hardware provider location, and

wherein the one or more translated quantum computing circuits are provided to a back-end application programmatic interface (API) transport of the quantum computing service, wherein the back-end API transport interface is a non-public interface that schedules the one or more translated quantum computing circuits for execution on the quantum computer at the respective first or second quantum hardware provider location.

3. The system of claim 2 , wherein the first or second edge computing device is further configured to:

implement a virtual storage device configured to store intermediate results generated from the execution of the one or more translated quantum computing circuits that have been executed by the quantum computer at the respective first or second quantum hardware provider location;

receive the intermediate results from the quantum computer at the first or second quantum hardware provider location; and

provide access to the intermediate results to the virtual machine executing the classical computing portions of the hybrid quantum computing algorithm.

4. The system of claim 3 , wherein the first or second edge computing devices are further configured to:

create snapshot copies of the intermediate results; and

cause the snapshot copies to be stored at the data storage system of the service provider network.

5. The system of claim 1 , wherein the first and second edge computing devices are directly connected to a local network at the respective first or second quantum hardware provider location, wherein the quantum computer of the first or second quantum hardware provider, respectively, is also connected to the local network.

6. An edge computing device, comprising:

a first network connector configured to couple with a local network of a quantum hardware provider;

a second network connector configured to connect to a quantum computing service; and

classical computing hardware comprising:

one or more processors; and

a memory storing program instructions, that when executed on or across the one or more processors, cause the one or more processors to:

instantiate a virtual machine implemented on the classical computing hardware of the edge computing device;

receive, from a quantum computing service via the second connector, a hybrid quantum computing algorithm comprising classical computing portions and quantum computing portions;

execute the classical computing portions on the virtual machine implemented on the classical computing hardware of the edge computing device;

coordinate, via the first connector coupled to the local network of the quantum hardware provider, execution of the quantum computing portions on a quantum computer at a location of the quantum hardware provider where the edge computing device is located; and

submit, via the second connector, results generated from executing the hybrid quantum computing algorithm to a data storage system of a service provider network that includes the quantum computing service, wherein one or more computing devices implementing the data storage system are located at a facility of the service provider network remote from the location of the quantum hardware provider.

7. The edge computing device of claim 6 , wherein the virtual machine implemented on the edge computing device is further configured to:

receive, from the quantum computing service as part of the hybrid computing algorithm, one or more translated quantum computing circuits for the quantum computing portions of the hybrid computing algorithm, wherein the translated quantum computing circuits are to be executed on the quantum computer at the location of the quantum hardware provider as part of executing the hybrid computing algorithm,

wherein the one or more translated quantum computing circuits are received translated into a format in accordance with a quantum computing technology of the quantum computer at the location of the quantum hardware provider, and

wherein the one or more translated quantum computing circuits are provided to a back-end application programmatic interface (API) transport of the quantum computing service, wherein the back-end API transport interface is a non-public interface that provides the one or more translated quantum computing circuits the edge computing device, or another edge computing device, that is configured to schedule the one or more translated quantum computing circuits for execution on the quantum computer at the location of the quantum hardware provider.

8. The edge computing device of claim 6 , wherein the program instructions when executed on the one or more processors are further configured to:

scale up or down resources allocated to performing the classical computing portions of the hybrid quantum computing algorithm.

9. The edge computing device of claim 6 , wherein the classical computing hardware is further configured to support multi-tenancy, wherein the program instructions, when executed on or across the one or more processors cause the one or more processors to:

instantiate another virtual machine implemented on the classical computing hardware of the edge computing device;

receive, via the second connector, another hybrid quantum computing algorithm comprising classical computing portions and quantum computing portions from the quantum computing service;

execute the classical computing portions on the other virtual machine implemented on the classical computing hardware of the edge computing device;

coordinate, via the first connector coupled to a local network of the quantum hardware provider, execution of the quantum computing portions of the other hybrid quantum computing algorithm on the quantum computer at the location of the quantum hardware provider where the edge computing device is located; and

submit, via the second connector, results generated from executing the hybrid quantum computing algorithm to a second storage bucket of the data storage system of the service provider network,

wherein the virtual machine and the other virtual machine execute different hybrid quantum computing algorithms for different customers of the quantum computing service, and

wherein the results of the hybrid quantum computing algorithm executed on the virtual machine are stored to a first storage bucket of the data storage system that is separate from the second storage bucket where the results of the other hybrid quantum computing algorithm are stored.

10. The edge computing device of claim 6 , wherein the program instructions, when executed on or across the one or more processors, cause the one or more processors to:

cause the edge computing device to store intermediate results of the hybrid quantum computing algorithm in a local storage of the edge computing device; and

provide the virtual machine executing the classical computing portions of the hybrid quantum computing algorithm access to the intermediate results.

11. The edge computing device of claim 10 , wherein the program instructions, when executed on or across the one or more processors further cause the one or more processors to:

create snapshot copies of the intermediate results; and

cause the snapshot copies to be stored in the data storage system of the service provider network.

12. The edge computing device of claim 6 , wherein the program instructions, when executed on or across the one or more processors are further configured to:

instantiate, using excess classical computing capacity of the edge computing device, one or more additional virtual machines for use by the quantum hardware provider.

13. The edge computing device of claim 6 , wherein the program instructions, when executed on or across the one or more processors are further configured to:

instantiate one or more additional virtual machines for use by a quantum computer simulator using classical computing capacity of the edge computing device; and

configure the quantum computer simulator to simulate a quantum computer based on a same quantum computing technology as the quantum computer at the quantum hardware provider location.

14. The edge computing device of claim 6 , wherein the edge computing device further comprises:

additional program instructions that when executed on or across the one or more processors of the edge computing device implement (a) one or more storage managers, and (b) one or more networking managers;

wherein the edge computing device is configured to:

establish connectivity with a substrate network of a virtualized computing service of the service provider network, wherein an encapsulation protocol implemented at a plurality of computing devices attached to the substrate network is used to transmit traffic between one or more logical networks of the virtualized computing service; and

initiate one or more configuration operations to launch the virtual machine at the edge computing device, wherein the virtual machine is configured within an isolated virtual network of the service provider network based, at least in part, on operations performed using the one or more networking managers, and wherein the virtual machine is provided access to a root volume based at least in part on operations performed by the one or more storage managers.

15. The edge computing device of claim 14 , wherein the edge computing device is configured to communicate with devices external to the hardware provider location via the second network connector using an encrypted communication format.

16. A method, comprising:

instantiating a virtual machine implemented on classical computing hardware of an edge computing device located at a quantum hardware provider location and connected to a quantum computing service implemented via one or more computing devices at a location remote from the quantum hardware provider location;

receiving, via the quantum computing service, a hybrid quantum computing algorithm comprising classical computing portions and quantum computing portions;

executing the classical computing portions on the virtual machine implemented on the classical computing hardware of the edge computing device located at the quantum hardware provider location;

coordinating execution of the quantum computing portions on a quantum computer at the quantum hardware provider location; and

submitting results generated from executing the hybrid quantum computing algorithm to a data storage system, wherein one or more computing devices implementing the data storage system are located remote from the quantum hardware provider location.

17. The method of claim 16 , further comprising:

providing one or more quantum computing circuits of the hybrid algorithm to a back-end application programmatic interface (API) transport interface of the quantum computing service, wherein the back-end API transport interface is a non-public interface that provides the one or more quantum computing circuits to another virtual machine implemented on the edge computing device, or another edge computing device, that is configured to schedule the one or more quantum computing circuits for execution on the quantum computer at the quantum hardware provider location.

18. The method of claim 17 , wherein access to the edge computing device is limited to:

encrypted communications sent or received via a first port connected to the quantum computing service; and

communications with the local network at the quantum hardware provider location.

19. The method of claim 16 , further comprising:

receiving, at the edge computing device, intermediate results from the quantum computer at the quantum hardware provider location;

storing the intermediate results in a memory of the edge computing device located at the quantum hardware provider location; and

providing access to the intermediate results to the virtual machine executing the classical computing portions of the hybrid quantum computing algorithm.

20. The method of claim 19 , further comprising:

generating snap shot copies of the intermediate results; and

causing the snapshot copies to be stored to a storage service.

US16/698,674

2019-11-27

2019-11-27

Quantum computing service supporting local execution of hybrid algorithms

Active

2041-08-28

US11605016B2

( en )

Priority Applications (6)

Application Number

Priority Date

Filing Date

Title

US16/698,674

US11605016B2

( en )

2019-11-27

2019-11-27

Quantum computing service supporting local execution of hybrid algorithms

EP26157288.7A

EP4722916A2

( en )

2019-11-27

2020-11-25

Quantum computing service supporting multiple quantum computing technologies

EP20828451.3A

EP4066174B8

( en )

2019-11-27

2020-11-25

Quantum computing service supporting multiple quantum computing technologies

PCT/US2020/062176

WO2021108510A1

( en )

2019-11-27

2020-11-25

Quantum computing service supporting multiple quantum computing technologies

CN202080088554.5A

CN114846480B

( en )

2019-11-27

2020-11-25

Method and system for providing quantum computing services supporting multiple quantum computing technologies

CN202511578741.2A

CN121413795A

( en )

2019-11-27

2020-11-25

Quantum computing services supporting multiple quantum computing technologies

Applications Claiming Priority (1)

Application Number

Priority Date

Filing Date

Title

US16/698,674

US11605016B2

( en )

2019-11-27

2019-11-27

Quantum computing service supporting local execution of hybrid algorithms

Publications (2)

Publication Number

Publication Date

US20210158199A1

US20210158199A1 ( en )

2021-05-27

US11605016B2

true

US11605016B2 ( en )

2023-03-14

Family

ID=75971303

Family Applications (1)

Application Number

Title

Priority Date

Filing Date

US16/698,674

Active

2041-08-28

US11605016B2

( en )

2019-11-27

2019-11-27

Quantum computing service supporting local execution of hybrid algorithms

Country Status (1)

Country

Link

US

( 1 )

US11605016B2

( en )

Cited By (7)

* Cited by examiner, † Cited by third party

Publication number

Priority date

Publication date

Assignee

Title

US20220351062A1

( en )

*

2021-04-29

2022-11-03

Red Hat, Inc.

Generating quantum service definitions from executing quantum services

US20230186141A1

( en )

*

2021-12-11

2023-06-15

International Business Machines Corporation

Visual presentation of quantum-classical interface in a user experience

US11907092B2

( en )

2021-11-12

2024-02-20

Amazon Technologies, Inc.

Quantum computing monitoring system

US12217090B2

( en )

2021-11-12

2025-02-04

Amazon Technologies, Inc.

On-demand co-processing resources for quantum computing

US12430170B2

( en )

2021-09-30

2025-09-30

Amazon Technologies, Inc.

Quantum computing service with quality of service (QoS) enforcement via out-of-band prioritization of quantum tasks

US12456079B2

( en )

2019-11-27

2025-10-28

Amazon Technologies, Inc.

Quantum computing task translation supporting multiple quantum computing technologies

US12530730B2

( en )

2023-07-10

2026-01-20

Bank Of America Corporation

Quantum computing and blockchain enabled learning management system

Families Citing this family (14)

* Cited by examiner, † Cited by third party

Publication number

Priority date

Publication date

Assignee

Title

EP3844689A4

( en )

2018-08-30

2022-06-08

Rigetti & Co, LLC

HIGH-PERFORMANCE, LOW-LATENCY HYBRID COMPUTING

US12530222B1

( en )

*

2020-02-10

2026-01-20

Rigetti & Co, Llc

Workload orchestration in hybrid quantum/classical computing systems

WO2021195783A1

( en )

*

2020-04-03

2021-10-07

The University Of British Columbia

Method of simulating a quantum computation, system for simulating a quantum computation, method for issuing a computational key, system for issuing a computational key

JP7539173B2

( en )

*

2020-06-30

2024-08-23

国立研究開発法人産業技術総合研究所

Computer System and Control Device

CN112465146B

( en )

*

2020-11-19

2022-05-24

苏州浪潮智能科技有限公司

Quantum and classical hybrid cloud platform and task execution method

US11683165B2

( en )

*

2020-11-30

2023-06-20

At&T Intellectual Property I, L.P.

Quantum key distribution networking as a service

JP2024515983A

( en )

*

2021-04-27

2024-04-11

ザ・ユニバーシティ・オブ・シカゴ

System and method for optimizing quantum cloud computing in-queue

WO2022228695A1

( en )

*

2021-04-30

2022-11-03

Nokia Solutions And Networks Oy

Edge computing orchestration

CN114281315B

( en )

*

2021-12-27

2024-07-02

中科南京信息高铁研究院

Visual software development system and method applied to superconducting computer

US11818257B1

( en )

2022-04-27

2023-11-14

Cisco Technology, Inc.

Systems and methods for providing user authentication for quantum-entangled communications in a cloud environment

US11948046B2

( en )

2022-05-25

2024-04-02

Red Hat, Inc.

MVC inspired quantum-classical service

US20240250970A1

( en )

*

2023-01-25

2024-07-25

Palo Alto Networks, Inc.

Multi-process shared-memory message communication

US12531886B2

( en )

2023-10-31

2026-01-20

Palo Alto Networks, Inc.

Machine learning for prioritizing traffic in multi- purpose inline cloud analysis (MICA) to enhance malware detection

CN118740909B

( en )

*

2024-09-03

2025-01-21

山东云海国创云计算装备产业创新中心有限公司

Execution method, device, equipment, medium and program product for quantum service construction

Citations (94)

* Cited by examiner, † Cited by third party

Publication number

Priority date

Publication date

Assignee

Title

US20030121028A1

( en )

2001-12-22

2003-06-26

Michael Coury

Quantum computing integrated development environment

US6741585B1

( en )

2000-05-05

2004-05-25

Lucent Technologies Inc.

Interworking of addressing in an internetwork

US20050013280A1

( en )

2003-07-14

2005-01-20

Buddhikot Milind M.

Method and system for mobility across heterogeneous address spaces

US20050251806A1

( en )

2004-05-10

2005-11-10

Auslander Marc A

Enhancement of real-time operating system functionality using a hypervisor

EP1701259A2

( en )

2005-03-11

2006-09-13

Microsoft Corporation

Systems and methods for multi-level intercept processing in a virtual machine environment

US20060225165A1

( en )

2004-12-23

2006-10-05

Maassen Van Den Brink Alec

Analog processor comprising quantum devices

US20060224547A1

( en )

2005-03-24

2006-10-05

Ulyanov Sergey V

Efficient simulation system of quantum algorithm gates on classical computer based on fast algorithm

US20070174227A1

( en )

2005-08-03

2007-07-26

Johnson Mark W

Analog processor comprising quantum devices

US7277872B2

( en )

2000-09-26

2007-10-02

Robert Raussendorf

Method for quantum computing

US20070239366A1

( en )

2004-06-05

2007-10-11

Hilton Jeremy P

Hybrid classical-quantum computer architecture for molecular modeling

US20070294070A1

( en )

2004-12-09

2007-12-20

National University Corporation NARA Institute of Science and Technology

Program Development Support Apparatus for Computer System Including Quantum Computer, Program Development Support Program, and Simulation Apparatus

US7376547B2

( en )

2004-02-12

2008-05-20

Microsoft Corporation

Systems and methods that facilitate quantum computer simulation

US20080244553A1

( en )

2007-03-28

2008-10-02

Daryl Carvis Cromer

System and Method for Securely Updating Firmware Devices by Using a Hypervisor

US20080313430A1

( en )

2007-06-12

2008-12-18

Bunyk Paul I

Method and system for increasing quantum computer processing speed using digital co-processor

US7484091B2

( en )

2004-04-29

2009-01-27

International Business Machines Corporation

Method and system for providing a trusted platform module in a hypervisor environment

US20090070402A1

( en )

2007-09-11

2009-03-12

Geordie Rose

Systems, methods, and apparatus for a distributed network of quantum computers

US7529717B2

( en )

2003-03-18

2009-05-05

Magiq Technologies, Inc.

Universal quantum computing

US20100070970A1

( en )

2008-09-15

2010-03-18

Vmware, Inc.

Policy-Based Hypervisor Configuration Management

US7876145B2

( en )

2007-07-13

2011-01-25

International Business Machines Corporation

Control system architecture for qubits

US20110075667A1

( en )

2009-09-30

2011-03-31

Alcatel-Lucent Usa Inc.

Layer 2 seamless site extension of enterprises in cloud computing

US20110131443A1

( en )

2009-11-30

2011-06-02

Dor Laor

Mechanism for Automatic Adjustment of Virtual Machine Storage

US7996836B1

( en )

2006-12-29

2011-08-09

Symantec Corporation

Using a hypervisor to provide computer security

US8032899B2

( en )

2006-10-26

2011-10-04

International Business Machines Corporation

Providing policy-based operating system services in a hypervisor on a computing system

US8095745B1

( en )

*

2006-08-07

2012-01-10

Marvell International Ltd.

Non-sequential transfer of data from a memory

US8127292B1

( en )

2007-06-22

2012-02-28

Parallels Holdings, Ltd.

Virtualization system with hypervisor embedded in bios or using extensible firmware interface

US8190553B2

( en )

2007-12-20

2012-05-29

Routt Thomas J

Methods and systems for quantum search, computation and memory

US8201161B2

( en )

2008-01-07

2012-06-12

Lenovo (Singapore) Pte. Ltd.

System and method to update device driver or firmware using a hypervisor environment without system shutdown

US8239557B2

( en )

2008-06-25

2012-08-07

Red Hat, Inc.

Virtualization management using a centralized server

EP2557498A1

( en )

2011-01-30

2013-02-13

Huawei Technologies Co., Ltd.

Updating method and computer system for hypervisor components

US8433802B2

( en )

2010-01-26

2013-04-30

International Business Machines Corporation

System and method for fair and economical resource partitioning using virtual hypervisor

US20130167123A1

( en )

2008-12-18

2013-06-27

Adobe Systems Incorporated

Application debugging

US20130179330A1

( en )

*

2012-01-06

2013-07-11

Primerevenue, Inc.

Supply chain finance system

US8514868B2

( en )

2008-06-19

2013-08-20

Servicemesh, Inc.

Cloud computing gateway, cloud computing hypervisor, and methods for implementing same

US20140187427A1

( en )

2011-07-06

2014-07-03

D-Wave Systems Inc.

Quantum processor based systems and methods that minimize an objective function

US20140208413A1

( en )

2013-01-23

2014-07-24

Steve Grobman

System and method for an endpoint hardware assisted network firewall in a security environment

US8832164B2

( en )

2007-12-12

2014-09-09

Lockheed Martin Corporation

Computer systems using quantum allegories as oracles

US20140264288A1

( en )

2013-03-14

2014-09-18

Microsoft Corporation

Method and system that implement a v-gate quantum circuit

US20150160884A1

( en )

2013-12-09

2015-06-11

Vmware, Inc.

Elastic temporary filesystem

WO2015121619A2

( en )

2014-02-14

2015-08-20

The University Court Of The University Of Edinburgh

Client-server communication system

US20150339417A1

( en )

2014-05-23

2015-11-26

The Regents Of The University Of Michigan

Methods For General Stabilizer-Based Quantum Computing Simulation

US20160026573A1

( en )

2014-07-28

2016-01-28

International Business Machines Corporation

Using a decrementer interrupt to start long-running hardware operations before the end of a shared processor dispatch cycle

US20160077845A1

( en )

2014-09-11

2016-03-17

Amazon Technologies, Inc.

Variable timeslices for processing latency-dependent workloads

US9317331B1

( en )

2012-10-31

2016-04-19

The Mathworks, Inc.

Interactive scheduling of an application on a multi-core target processor from a co-simulation design environment

US9323552B1

( en )

2013-03-14

2016-04-26

Amazon Technologies, Inc.

Secure virtual machine memory allocation management via dedicated memory pools

US9361145B1

( en )

2014-06-27

2016-06-07

Amazon Technologies, Inc.

Virtual machine state replication using DMA write records

US20160170785A1

( en )

2014-12-11

2016-06-16

Amazon Technologies, Inc.

Managing virtual machine instances utilizing an offload device

US20160170781A1

( en )

2014-12-11

2016-06-16

Amazon Technologies, Inc.

Systems and methods for loading a virtual machine monitor during a boot process

US9400499B2

( en )

2013-01-25

2016-07-26

D-Wave Systems Inc.

Systems and methods for real-time quantum computer-based control of mobile systems

US9430280B1

( en )

2013-02-11

2016-08-30

Amazon Technologies, Inc.

Task timeouts based on input data characteristics

US9471880B2

( en )

2013-04-12

2016-10-18

D-Wave Systems Inc.

Systems and methods for interacting with a quantum computing system

US9485323B1

( en )

2013-09-23

2016-11-01

Amazon Technologies, Inc.

Managing pooled client-premise resources via provider-defined interfaces

US20160328253A1

( en )

2015-05-05

2016-11-10

Kyndi, Inc.

Quanton representation for emulating quantum-like computation on classical processors

US9530873B1

( en )

2013-01-28

2016-12-27

Sandia Corporation

Semiconductor adiabatic qubits

US9537953B1

( en )

2016-06-13

2017-01-03

1Qb Information Technologies Inc.

Methods and systems for quantum ready computations on the cloud

US20170017894A1

( en )

2014-08-22

2017-01-19

D-Wave Systems Inc.

Systems and methods for improving the performance of a quantum processor to reduce intrinsic/control errors

US20170177782A1

( en )

2014-02-12

2017-06-22

Microsoft Technology Licensing, Llc

Classical simulation constants and ordering for quantum chemistry simulation

US20170194930A1

( en )

2014-06-06

2017-07-06

Microsoft Technology Licensing, Llc

Quantum algorithms for arithmetic and function synthesis

US20170223094A1

( en )

2016-01-31

2017-08-03

QC Ware Corp.

Quantum Computing as a Service

US20170228483A1

( en )

2015-11-06

2017-08-10

Rigetti & Co., Inc.

Analyzing quantum information processing circuits

US20170286858A1

( en )

2016-03-31

2017-10-05

Board Of Regents, The University Of Texas System

System and method for emulation of a quantum computer

US20170300354A1

( en )

2009-07-27

2017-10-19

Nicira, Inc.

Automated network configuration of virtual machines in a virtual lab environment

US20170357539A1

( en )

2016-06-13

2017-12-14

1Qb Information Technologies Inc.

Methods and systems for quantum ready and quantum enabled computations

US20170364796A1

( en )

2014-12-05

2017-12-21

Microsoft Technology Licensing, Llc

Quantum deep learning

US20170366606A1

( en )

2014-05-13

2017-12-21

Velostrata Ltd.

Real Time Cloud Workload Streaming

US20180046933A1

( en )

2016-08-11

2018-02-15

Board Of Regents, The University Of Texas System

System and method for controlling a quantum computing emulation device

US20180107939A1

( en )

2016-10-19

2018-04-19

Microsoft Technology Licensing, Llc

Exact quantum circuits and circuit syntheses for qudit and multiple qubit circuits

US9979694B2

( en )

2010-09-30

2018-05-22

Amazon Technologies, Inc.

Managing communications between virtual computing nodes in a substrate network

US10043035B2

( en )

2013-11-01

2018-08-07

Anonos Inc.

Systems and methods for enhancing data protection by anonosizing structured and unstructured data and incorporating machine learning and artificial intelligence in classical and quantum computing environments

US20180232649A1

( en )

2015-08-10

2018-08-16

Microsoft Technology Licensing, Llc

Efficient online methods for quantum bayesian inference

US20180232653A1

( en )

2016-03-11

2018-08-16

Rigetti & Co., Inc.

Impedance-Matched Microwave Quantum Circuit Systems

US20180260125A1

( en )

2017-03-10

2018-09-13

Pure Storage, Inc.

Synchronously replicating datasets and other managed objects to cloud-based storage systems

US20180260731A1

( en )

2017-03-10

2018-09-13

Rigetti & Co., Inc.

Quantum Approximate Optimization

US10095537B1

( en )

2016-03-22

2018-10-09

Amazon Technologies, Inc.

Driver version identification and update system

US20180308000A1

( en )

2017-04-19

2018-10-25

Accenture Global Solutions Limited

Quantum computing machine learning module

US20180307988A1

( en )

2017-04-19

2018-10-25

Accenture Global Solutions Limited

Solving computational tasks using quantum computing

US20180365585A1

( en )

2017-06-19

2018-12-20

Rigetti & Co, Inc.

Distributed Quantum Computing System

US20180373540A1

( en )

2017-06-21

2018-12-27

International Business Machines Corporation

Cluster graphical processing unit (gpu) resource sharing efficiency by directed acyclic graph (dag) generation

US20190222748A1

( en )

*

2018-01-18

2019-07-18

Google Llc

Multi-camera navigation interface

US10482413B2

( en )

2015-12-18

2019-11-19

Amazon Technologies, Inc.

Data transfer tool for secure client-side data transfer to a shippable storage device

WO2019222748A1

( en )

2018-05-18

2019-11-21

Rigetti & Co, Inc.

Computing platform with heterogenous quantum processors

US10498611B1

( en )

2018-08-29

2019-12-03

Charter Communications Operating, Llc

System architecture and methods for controlling and managing networking devices and expediting new service delivery in a subscriber's home network using micro-domains

US20190370679A1

( en )

2016-11-10

2019-12-05

Rigetti & Co, Inc.

Generating Quantum Logic Control Sequences for Quantum Information Processing Hardware

US20190378047A1

( en )

*

2018-06-07

2019-12-12

International Business Machines Corporation

Quantum computations of classical specifications

US10592216B1

( en )

2017-11-15

2020-03-17

Amazon Technologies, Inc.

Development environment for programming quantum computing resources

US10614371B2

( en )

2017-09-29

2020-04-07

<span itemprop="assigneeOriginal"

Related documents

Record · ID 607100
Retrieved via Conceptio — every document is proof-bundled with source, license, and retrieval metadata.