ConceptioArchiveGoogle Patents
Google Patentsopen access

Quantum computing task translation supporting multiple quantum computing … — Amazon Technologies, Inc. (US12456079B2)

Amazon Technologies, Inc. · Google Patents
Google Patents · Patents · License: Open Access
Open Source ↗
amazontechnologies
patent, google patents, intellectual property, US12456079B2, Amazon Technologies, Inc., Derek Bolt, en, 2025

ABSTRACT

Abstract

A quantum computing service provides a quantum algorithm development kit that enables a customer to define a quantum task, a quantum algorithm, or a quantum circuit using an intermediate representation. The quantum computing service is then configured to automatically translate the quantum task, quantum algorithm, or quantum circuit into a specific representation specific to a particular quantum computing technology selected by the customer to be used to execute the customer's quantum task, quantum algorithm, or quantum circuit.

Description

BACKGROUND

This application is a continuation of U.S. patent application Ser. No. 16/698,698, filed Nov. 27, 2019, which is hereby incorporated by reference herein in its entirety.

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 fi

BACKGROUND

This application is a continuation of U.S. patent application Ser. No. 16/698,698, filed Nov. 27, 2019, which is hereby incorporated by reference herein in its entirety.

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 o

CLAIMS

Claims ( 20 )

What is claimed is:

1. A system comprising:

one or more computing devices configured to:

implement a quantum computing service; and

implement a quantum algorithm development kit of the quantum computing service comprising one or more of:

a problem-domain based interface comprising pre-configured quantum algorithms designed for performing particular functions associated with one or more respective problem domains;

a quantum algorithm based interface comprising pre-configured quantum logic elements configured to be arranged with one another to form a given quantum algorithm; and

a quantum circuit based interface comprising quantum operators and connectors,

wherein the one or more computing devices that implement the quantum computing service are further configured to:

receive, from a customer of the quantum computing service, a quantum computing object to be simulated or executed, wherein the quantum computing object is defined via one or more of the interfaces of the quantum algorithm development kit;

translate the quantum computing object into a selected quantum circuit format for respective simulation or execution using a particular quantum computing technology; and

provide a notification to the customer that the quantum computing object has been respectively simulated or executed.

2. The system of claim 1 , wherein:

to define the quantum computing object via the one or more of the interfaces of the quantum algorithm development kit, the quantum algorithm development kit is configured to receive:

a selection, from the customer, via the problem-domain based interface, of an applicable problem domain of the one or more respective problem domains for a problem to be solved by the customer; and

a second selection, from the customer, of one or more pre-configured quantum algorithms from the pre-configured quantum algorithms for the selected problem domain in order to define the quantum algorithm to be simulated or executed by the quantum computing service as the quantum computing object.

3. The system of claim 2 , wherein the one or more computing devices configured to implement the quantum algorithm development kit of the quantum computing service further comprises:

one or more domain specific tools comprising the one or more pre-configured quantum algorithms from the pre-configured quantum algorithms for the selected problem domain.

4. The system of claim 1 , wherein the one or more respective problem domains comprise one or more of:

a chemistry problem domain;

a physics problem domain;

a pharmaceutical problem domain;

a biotechnology problem domain;

a medical problem domain;

an information security problem domain;

a machine learning problem domain;

a process simulation problem domain;

a physical modelling problem domain; or

an optimization problem domain.

5. The system of claim 1 , wherein, to define the quantum computing object via the one or more of the interfaces of the quantum algorithm development kit, the quantum algorithm development kit is configured to receive:

a selection and/or arrangement, from the customer, via the quantum algorithm based interface, of the pre-configured quantum logic elements to define a particular quantum algorithm to be simulated or executed by the quantum computing service as the quantum computing object.

6. The system of claim 1 , wherein, to define the quantum computing object via the one or more of the interfaces of the quantum algorithm development kit, the quantum algorithm development kit is configured to receive:

one or more combinations, from the customer, via the quantum circuit based interface, of the quantum operators and connectors to define a particular quantum circuit to be simulated or executed by the quantum computing service as the quantum computing object.

7. The system of claim 1 , wherein:

to define the quantum computing object via the one or more of the interfaces of the quantum algorithm development kit, the quantum development kit is configured to receive:

a selection, from the customer, of a request to simulate the quantum computing object; and

the one or more computing devices that implement the quantum computing service are further configured to:

provide the translated quantum circuit to a simulator implemented on classical hardware.

8. The system of claim 1 , wherein the one or more computing devices configured to implement the quantum algorithm development kit of the quantum computing service further comprises:

a quantum compute simulator, wherein the quantum compute simulator is configured to simulate execution of the translated quantum circuit on a simulated quantum computer.

9. A method, comprising:

providing, via a quantum computing service, a quantum algorithm development kit comprising a plurality of interfaces for use by customers of the quantum computing service with a plurality of levels of expertise;

receiving, from a given customer, a selection of a given one of the plurality of interfaces corresponding to the given customer's level of expertise;

providing the given customer access to the selected interface;

receiving, from the given customer, via the selected interface, inputs using tools of the selected interface to define a quantum computing object;

translating, via the quantum computing service, the defined quantum computing object into a selected quantum circuit format for simulation or execution; and

providing a notification to the given customer that the translated quantum computing object has been respectively simulated or executed.

10. The method of claim 9 , wherein:

the selected interface comprises a problem-domain based interface comprising pre-configured quantum algorithms designed for performing particular functions associated with one or more respective problem domains; and

said receiving, from the given customer, inputs using tools of the selected interface to define the quantum computing object comprises:

providing, to the given customer, one or more pre-configured quantum algorithms for the selected problem-domain; and

receiving, from the given customer, an additional selection of respective ones of the one or more pre-configured quantum algorithms to be used to define a particular quantum algorithm to be simulated or executed as the quantum computing object.

11. The method of claim 9 , wherein:

the selected interface comprises a quantum algorithm based interface comprising pre-configured quantum logic elements configured to be arranged with one another to form a particular quantum algorithm; and

said receiving, from the given customer, inputs using tools of the selected interface to define the quantum computing object comprises:

providing, to the given customer, one or more pre-configured quantum logic elements; and

receiving, from the given customer, an additional selection of respective ones of the one or more pre-configured quantum logic elements to be used to define the particular quantum algorithm to be simulated or executed as the quantum computing object.

12. The method of claim 9 , wherein:

the selected interface comprises a quantum circuit based interface comprising quantum operators and connectors that can be arranged to define a particular quantum circuit; and

said receiving, from the given customer, inputs using tools of the selected interface to define the quantum computing object comprises:

receiving, from the given customer, inputs defining a particular quantum circuit comprising one or more of the quantum operators and one or more of the connectors to be used to define the quantum computing object to be simulated or executed.

13. The method of claim 9 , wherein:

the selected interface comprises a simulation selection tool; and

said receiving, from the given customer, inputs using tools of the selected interface to define the quantum computing object comprises:

receiving, from the given customer, a selection for simulating the defined quantum computing object using a simulator of the quantum computing service implemented on classical hardware.

14. The method of claim 9 , wherein:

the selected interface comprises a quantum circuit marketplace tool; and

said receiving, from the given customer, inputs using tools of the selected interface to define the quantum computing object comprises:

receiving, from the given customer, a selection of one or more components of a pre-defined quantum computing object, shared via a marketplace of the quantum algorithm development kit, to be used to define the quantum computing object to be simulated or executed.

15. The method of claim 9 , wherein:

the selected interface comprises a quantum hardware provider selection tool; and

said receiving, from the given customer, inputs using tools of the selected interface to define the quantum computing object comprises:

receiving, from the given customer, a selection of a given quantum computing technology of one or more quantum computing technologies that are supported via the quantum computing service, wherein the selected quantum computing technology is to be used to execute the quantum computing object; or

receiving, from the given customer, a selection of a given quantum hardware provider of one or more quantum hardware providers that are supported via the quantum computing service, wherein the selected quantum hardware provider is to be used to execute the quantum computing object.

16. The method of claim 15 , wherein the one or more quantum computing technologies supported via the quantum computing service comprise one or more of:

an ion trap based quantum computer technology; or

a superconducting based quantum computer technology.

17. One or more non-transitory computer-readable media storing program instructions that, when executed on or across one or more processors, cause the one or more processors to:

provide a quantum algorithm development kit comprising a plurality of interfaces for use by customers with a plurality of levels of expertise;

receive, from a given customer, a selection of a given one of the plurality of interfaces corresponding to the given customer's level of expertise;

provide the given customer access to the selected interface;

receive, from the given customer, via the selected interface, inputs using tools of the selected interface to define a quantum computing object;

translate the defined quantum computing object into a selected quantum circuit format for simulation or execution; and

provide a notification to the given customer that the translated quantum computing object has been respectively simulated or executed.

18. The one or more non-transitory computer-readable media of claim 17 , wherein:

the selected interface comprises a problem-domain based interface comprising pre-configured quantum algorithms designed for performing particular functions associated with one or more respective problem domains; and

to receive, from the given customer, inputs using tools of the selected interface to define the quantum computing object, the program instructions further cause the one or more processors to:

provide, to the given customer, one or more pre-configured quantum algorithms for the selected problem-domain; and

receive, from the given customer, an additional selection of respective ones of the one or more pre-configured quantum algorithms to be used to define a particular quantum algorithm to be simulated or executed as the quantum computing object.

19. The one or more non-transitory computer-readable media of claim 17 , wherein:

the selected interface comprises a quantum algorithm based interface comprising pre-configured quantum logic elements configured to be arranged with one another to form a particular quantum algorithm; and

to receive, from the given customer, inputs using tools of the selected interface to define the quantum computing object, the program instructions further cause the one or more processors to:

provide, to the given customer, one or more pre-configured quantum logic elements; and

receive, from the given customer, an additional selection of respective ones of the one or more pre-configured quantum logic elements to be used to define the particular quantum algorithm to be simulated or executed as the quantum computing object.

20. The one or more non-transitory computer-readable media of claim 17 , wherein:

the selected interface comprises a quantum circuit based interface comprising quantum operators and connectors that can be arranged to define a particular quantum circuit; and

to receive, from the given customer, inputs using tools of the selected interface to define the quantum computing object, the program instructions further cause the one or more processors to:

receive, from the given customer, inputs defining a particular quantum circuit comprising one or more of the quantum operators and one or more of the connectors to be used to define the quantum computing object to be simulated or executed.

US18/179,771

2019-11-27

2023-03-07

Quantum computing task translation supporting multiple quantum computing technologies

Active

2040-10-02

US12456079B2

( en )

Priority Applications (2)

Application Number

Priority Date

Filing Date

Title

US18/179,771

US12456079B2

( en )

2019-11-27

2023-03-07

Quantum computing task translation supporting multiple quantum computing technologies

US19/341,999

US20260024029A1

( en )

2019-11-27

2025-09-26

Quantum computing task translation supporting multiple quantum computing technologies

Applications Claiming Priority (2)

Application Number

Priority Date

Filing Date

Title

US16/698,698

US11605033B2

( en )

2019-11-27

2019-11-27

Quantum computing task translation supporting multiple quantum computing technologies

US18/179,771

US12456079B2

( en )

2019-11-27

2023-03-07

Quantum computing task translation supporting multiple quantum computing technologies

Related Parent Applications (1)

Application Number

Title

Priority Date

Filing Date

US16/698,698

Continuation

US11605033B2

( en )

2019-11-27

2019-11-27

Quantum computing task translation supporting multiple quantum computing technologies

Related Child Applications (1)

Application Number

Title

Priority Date

Filing Date

US19/341,999

Continuation

US20260024029A1

( en )

2019-11-27

2025-09-26

Quantum computing task translation supporting multiple quantum computing technologies

Publications (2)

Publication Number

Publication Date

US20230325730A1

US20230325730A1 ( en )

2023-10-12

US12456079B2

true

US12456079B2 ( en )

2025-10-28

Family

ID=75974955

Family Applications (3)

Application Number

Title

Priority Date

Filing Date

US16/698,698

Active

2041-06-12

US11605033B2

( en )

2019-11-27

2019-11-27

Quantum computing task translation supporting multiple quantum computing technologies

US18/179,771

Active

2040-10-02

US12456079B2

( en )

2019-11-27

2023-03-07

Quantum computing task translation supporting multiple quantum computing technologies

US19/341,999

Pending

US20260024029A1

( en )

2019-11-27

2025-09-26

Quantum computing task translation supporting multiple quantum computing technologies

Family Applications Before (1)

Application Number

Title

Priority Date

Filing Date

US16/698,698

Active

2041-06-12

US11605033B2

( en )

2019-11-27

2019-11-27

Quantum computing task translation supporting multiple quantum computing technologies

Family Applications After (1)

Application Number

Title

Priority Date

Filing Date

US19/341,999

Pending

US20260024029A1

( en )

2019-11-27

2025-09-26

Quantum computing task translation supporting multiple quantum computing technologies

Country Status (1)

Country

Link

US

( 3 )

US11605033B2

( en )

Cited By (2)

* Cited by examiner, † Cited by third party

Publication number

Priority date

Publication date

Assignee

Title

US20230084607A1

( en )

*

2021-09-16

2023-03-16

Bull Sas

Computing system for executing quantum programs on analog and digital quantum computers

US20260005841A1

( en )

*

2024-07-01

2026-01-01

Bank Of America Corporation

Quantum-based distributed ledger

Families Citing this family (17)

* 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

US11605033B2

( en )

2019-11-27

2023-03-14

Amazon Technologies, Inc.

Quantum computing task translation supporting multiple quantum computing technologies

US12530222B1

( en )

*

2020-02-10

2026-01-20

Rigetti & Co, Llc

Workload orchestration in hybrid quantum/classical computing systems

US11671429B1

( en )

*

2020-02-26

2023-06-06

Equinix, Inc.

Authorization automation in procurement of interconnections within a data center

JP7539173B2

( en )

*

2020-06-30

2024-08-23

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

Computer System and Control Device

US20230252501A1

( en )

*

2021-04-16

2023-08-10

Strong Force Vcn Portfolio 2019, Llc

Control-Tower-Based Digital Product Network System

JP2024515983A

( en )

*

2021-04-27

2024-04-11

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

System and method for optimizing quantum cloud computing in-queue

EP4152219A1

( en )

*

2021-09-16

2023-03-22

Bull SAS

Computing system for executing hybrid quantum/classical programs

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

US12217090B2

( en )

2021-11-12

2025-02-04

Amazon Technologies, Inc.

On-demand co-processing resources for quantum computing

US11907092B2

( en )

2021-11-12

2024-02-20

Amazon Technologies, Inc.

Quantum computing monitoring system

KR20240110588A

( en )

*

2021-12-06

2024-07-15

엘지전자 주식회사

Device and method

US12327165B2

( en )

*

2021-12-11

2025-06-10

International Business Machines Corporation

Visual presentation of quantum-classical interface in a user experience

US20240112062A1

( en )

*

2022-09-30

2024-04-04

Amazon Technologies, Inc.

Quantum circuit service

US20240330738A1

( en )

*

2023-03-30

2024-10-03

Amazon Technologies, Inc.

Quantum compilation service

US12530730B2

( en )

2023-07-10

2026-01-20

Bank Of America Corporation

Quantum computing and blockchain enabled learning management system

CN117933754B

( en )

*

2024-01-30

2024-08-09

华北电力大学

Comprehensive energy microgrid evaluation generation system and method based on variable component sub-algorithm

Citations (137)

* 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

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

US20060225165A1

( en )

2004-12-23

2006-10-05

Maassen Van Den Brink Alec

Analog processor comprising quantum devices

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

US9774489B1

( en )

2010-09-29

2017-09-26

Amazon Technologies, Inc.

Allocating computing resources according to reserved capacity

US9774401B1

( en )

2013-07-15

2017-09-26

Paul Borrill

Entangled links, transactions and trees for distributed computing systems

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

US20170366606A1

( en )

2014-05-13

2017-12-21

Velostrata Ltd.

Real Time Cloud Workload Streaming

US20170364796A1

( en )

2014-12-05

2017-12-21

Microsoft Technology Licensing, Llc

Quantum deep learning

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

US10031791B1

( en )

2015-11-20

2018-07-24

Quantum Benchmark, Inc.

Systems and methods for quantum computation using random compiling

US20180218281A1

( en )

2017-01-30

2018-08-02

D-Wave Systems Inc.

Quantum annealing debugging systems and methods

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

US20180232653A1

( en )

*

2016-03-11

2018-08-16

Rigetti & Co., Inc.

Impedance-Matched Microwave Quantum Circuit Systems

US20180232649A1

( en )

2015-08-10

2018-08-16

Microsoft Technology Licensing, Llc

Efficient online methods for quantum bayesian inference

US20180260731A1

( en )

2017-03-10

2018-09-13

Rigetti & Co., Inc.

Quantum Approximate Optimization

US20180260125A1

( en )

2017-03-10

2018-09-13

Pure Storage, Inc.

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

US10095537B1

( en )

2016-03-22

2018-10-09

Amazon Technologies, Inc.

Driver version identification and update system

US20180307988A1

( en )

2017-04-19

2018-10-25

Accenture Global Solutions Limited

Solving computational tasks using quantum computing

US20180308000A1

( en )

2017-04-19

2018-10-25

Accenture Global Solutions Limited

Quantum computing machine learning module

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

US20190042974A1

( en )

2018-10-04

2019-02-07

Sahar DARAEIZADEH

Quantum state imaging for memory optimization

US20190042677A1

( en )

2018-05-05

2019-02-07

Anne MATSUURA

Apparatus and method for quantum computing performance simulation

US20190095561A1

( en )

2017-09-22

2019-03-28

International Business Machines Corporation

Simulating quantum circuits </td

Related documents

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