System, computer implementation method, and computer program (time management for extended quantum circuit operation using hybrid classical / quantum systems)

The hybrid classical/quantum system enhances quantum program execution by managing counters and triggers to align instructions across nodes, addressing the challenge of executing multiple quantum jobs efficiently and accurately.

JP7856372B2Active Publication Date: 2026-05-11INTERNATIONAL BUSINESS MACHINE CORPORATION
View PDF 5 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
INTERNATIONAL BUSINESS MACHINE CORPORATION
Filing Date
2022-08-12
Publication Date
2026-05-11

AI Technical Summary

Technical Problem

The large-scale execution of quantum programs is complicated by the need to execute each quantum program quickly due to a large number of quantum jobs, leading to pressure for maximizing system utilization, minimizing compilation time, and reducing classical computing resource consumption.

Method used

A system and method for time management of quantum programs using a hybrid classical/quantum system, involving global counter management and local counter management to align execution of quantum program instructions across nodes, enabling precise timing without complex scheduling or high-granularity calls, and managing triggers to handle dependencies.

Benefits of technology

Improves execution speed and quality of quantum programs by reducing synchronization losses and quantum errors, while minimizing system complexity and resource consumption.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007856372000001
    Figure 0007856372000001
  • Figure 0007856372000002
    Figure 0007856372000002
  • Figure 0007856372000003
    Figure 0007856372000003
Patent Text Reader

Abstract

To solve a problem in which when further complicating quantum program execution on a large scale, a large quantity of quantum jobs may create pressure to execute respective quantum programs quickly.SOLUTION: Provided is a system for facilitating time management of a quantum program at a plurality of nodes of a system, such as a hybrid classical / quantum system, including a memory that stores computer executable components, and a processor that executes the computer executable components stored in the memory. The computer executable components include a time management component that performs communication with a node to trigger the node to execute one or more quantum program instructions relative to a counter of the node that is advanced by the communication. The time management component advances the counter at the node based on a combination of a time at another node and a determined actual propagation time for the communication.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] One or more embodiments described herein generally relate to quantum program control, and more specifically, to time management for extended quantum circuit operations using a hybrid classical / quantum system.

Summary of the Invention

Problems to be Solved by the Invention

[0002] Making the large-scale execution of quantum programs more complex can result in pressure to execute each quantum program quickly due to a large number of quantum jobs.

Means for Solving the Problems

[0003] The following presents an overview for providing a basic understanding of one or more embodiments described herein. This overview is not intended to identify key or important elements, nor to define any scope of a particular embodiment or any claims or combinations thereof. The sole purpose of the overview is to present concepts in a simplified form as a prelude to the more detailed description that follows. In one or more embodiments described herein, a device, system, computer-implemented method, apparatus, or computer program product or combination thereof that can facilitate time management of quantum programs at one or more nodes of a system is described.

[0004] According to one embodiment, the system may include a memory storing computer-executable components and a processor executing the computer-executable components stored in the memory. The computer-executable components may include a time management component that communicates with a node and triggers the node to execute one or more quantum program instructions on a counter of the node advanced by the communication.

[0005] In another embodiment, a computer implementation method may include a step in which a system operably coupled to a processor communicates with a node and triggers the node to execute one or more quantum program instructions on a counter of the node, which is advanced by the communication.

[0006] In yet another embodiment, a computer program product for facilitating the time management of a quantum program in one or more nodes of a system may comprise a computer-readable storage medium in which program instructions are embodied. The program instructions may be executable by the processor by the processor communicating with a node and triggering the node to execute one or more quantum program instructions on a counter of the node advanced by the communication. [Brief explanation of the drawing]

[0007] [Figure 1] A block diagram of an exemplary, non-limiting system that facilitates the time management of quantum programs at one or more nodes of a system according to one or more embodiments described herein is shown.

[0008] [Figure 2] Another block diagram of an exemplary, non-limiting system that facilitates the time management of quantum programs at one or more nodes of a system according to one or more embodiments described herein is shown.

[0009] [Figure 3] Figure 2 illustrates the execution of an execution instruction in a single node, facilitated by one or more embodiments described herein.

[0010] [Figure 4]Another diagram of the execution of an execution instruction in a single node, facilitated by the non-limiting system of Figure 2, according to one or more embodiments described herein, is shown.

[0011] [Figure 5] Another block diagram of a non-restrictive system that facilitates time management of quantum programs at one or more nodes of a system according to one or more embodiments described herein is shown.

[0012] [Figure 6] A flowchart shows an exemplary, non-limiting computer implementation method that can facilitate the time management of quantum programs at one or more nodes of a system according to one or more embodiments described herein.

[0013] [Figure 7] The flowchart of Figure 6 continues, illustrating an exemplary, non-limiting computer implementation method that facilitates the time management of quantum programs at one or more nodes of a system according to one or more embodiments described herein.

[0014] [Figure 8] Another continuation of the flowchart in Figure 6 shows an exemplary, non-limiting computer implementation method that can facilitate time management of quantum programs in one or more nodes of a system according to one or more embodiments described herein.

[0015] [Figure 9] A block diagram of an exemplary, non-limiting operating environment in which one or more embodiments described herein may be facilitated is shown.

[0016] [Figure 10] A block diagram of an exemplary, non-limiting cloud computing environment according to one or more embodiments described herein is shown.

[0017] [Figure 11] A block diagram of a plurality of exemplary non - limiting abstraction model layers according to one or more embodiments described herein is shown.

Mode for Carrying Out the Invention

[0018] The following detailed description is merely exemplary and not intended to limit any embodiments, the use or application of embodiments, or combinations thereof. Further, no explicit or implicit information or combinations thereof presented in the foregoing Background section or Summary of the Invention section or combinations thereof, or the section of the Mode for Carrying Out the Invention, or combinations thereof is intended to be binding.

[0019] Quantum computing generally involves the use of quantum mechanical phenomena to perform computing and information processing functions. Quantum computing can use quantum physics to encode and process information rather than transistor - based binary digital technology. That is, while classical computers can operate with bit values that are either 0 or 1, quantum computing devices can operate according to the laws of quantum physics and use qubits (also referred to as quantum bits) that can exhibit phenomena such as superposition or entanglement or combinations thereof.

[0020] According to the superposition principle of quantum physics, a qubit can be in a state where it partially represents both the value "1" and the value "0" simultaneously. The entanglement principle of quantum physics can enable qubits to be correlated. For example, the state of the first qubit may depend on the state of the second qubit, or vice versa, or be a combination thereof. Therefore, a quantum circuit can encode and process information in a quite different way from transistor-based binary digital technology by using qubits. In practice, quantum computing has the potential to solve problems that could not be solved or could only be solved relatively slowly on classical computers due to the computational complexity.

[0021] Quantum computing can operate on qubits using a dedicated control unit such as a quantum circuit. A quantum circuit is a variant that can execute operations on qubits. For example, a quantum circuit as part of a quantum program can be implemented as one or more quantum gates such as a series of quantum gates. A quantum gate can be implemented as one or more physical operations on a set of qubits, such as implementing a series of pulses. A pulse is a time-dependent tone (e.g., a wave or waveform) that can be applied to a qubit for changing the state of the qubit, analyzing the state of the qubit, or a combination thereof.

[0022] Quantum programming may involve the process of assembling a set of instructions, which may be called a quantum program, that can be executed on a quantum computer. A quantum program may be associated with a set of quantum circuits. When a quantum program is executed, for example, one or more measurements may be calculated by a quantum system or an associated classical system or a combination thereof. One or more measurements may include one or more resonant frequencies or oscillation frequencies, or a combination thereof, of one or more qubits in the quantum system. One or more resonant frequencies or oscillation frequencies, or a combination thereof, may represent one or more states or oscillations, or a combination thereof, of one or more qubits.

[0023] The control of a quantum program can utilize both classical and quantum resources, and therefore, one or more hybrid classical / quantum systems can be used. Classical resources (e.g., one or more control nodes, such as one or more control CPUs) can be used to control one or more acting nodes. One or more acting nodes, such as one or more quantum processors, may perform qubit operations, such as quantum measurements, or operate one or more quantum circuits, or a combination thereof, by implementing one or more quantum pulses.

[0024] In one or more embodiments, software or hardware simulation may be used to advance a quantum program by executing instructions to facilitate one or more quantum tasks relating to, or related to, or a combination thereof, one or more qubits. With respect to software simulation, an instruction set simulator may advance a quantum program by executing one or more instructions. The instruction set simulator does not model the underlying clock cycle for each instruction. Rather, the one or more instructions executed are: Until data becomes available to proceed,Alignment of different streams of quantum tasks or amount It is possible to pause the execution of child tasks or a combination of both. Instruction streams on different nodes can be executed independently, such as operating as separate threads. Clock cycle-dependent objects, such as time-of-day (TOD) counters or timers, are modeled by the instruction set simulator. Alternatively, abstraction or a combination thereof is not performed. This is because a large number of clock cycles can be difficult or impossible to maintain precisely. When used for executing quantum programs, this type of simulation may be insufficient in that the operation or alignment of the quantum task, or a combination thereof, may rely on the precise accuracy of clock cycles, and furthermore, such precise accuracy may be difficult or impossible to maintain by software simulation, or a combination thereof.

[0025] Alternatively, hardware simulation may be used to advance the quantum program by executing one or more cycles of a common clock for one or more nodes that execute one or more instructions. Precise modeling may be possible, for example, via TOD counting, by precisely maintaining a large number of clock cycles by the common clock. In each clock cycle, all nodes are generally called to process any pending inputs. This type of simulation can facilitate the operation or alignment, or combination thereof, of quantum tasks with such precise accuracy in clock cycles. Nevertheless, this precise modeling may result in slower or slower processing power, for example, due to the calls at each node in each clock cycle. Increase Alternatively, a combination of these may result in a loss of performance.

[0026] Further complicating the large-scale execution of quantum programs, a large number of quantum jobs can create pressure to execute each quantum program quickly. In other words, improvements in execution speed can directly or indirectly correlate, or a combination of, maximizing system utilization, minimizing compilation time for compiling quantum programs, minimizing the number of users who need to wait for compilation to complete, or minimizing undesirable consumption of classical computing resources, or a combination of these. too Pressure to execute may be created. As a result, high performance may be extracted from short-term error-prone systems, or as a result, the quality of compilation to physical-level pulses may be improved (e.g., in relation to the accuracy, precision, or efficiency of pulse execution, or a combination thereof), or a combination thereof.

[0027] Referring herein to one or more embodiments, such one or more embodiments may provide one or more systems, methods, or computer program products or combinations for improving (e.g., extending, optimizing, or reducing, or a combination thereof) the execution of quantum jobs by taking into account one or more deficiencies in existing instruction set simulation techniques or hardware simulation techniques or combinations thereof. Generally, one or more systems, methods, or computer program products or combinations thereof can use an emulator or simulator, such as an instruction set emulator, to execute one or more instructions for operating one or more quantum programs of one or more quantum jobs. Generally, one or more systems, methods, or computer program products or combinations thereof may be able to improve the execution time or instruction execution accuracy or a combination thereof for executing quantum jobs, or improve the quality of execution of such quantum jobs compared to existing techniques, or a combination thereof. In one or more embodiments described herein, one or more systems, methods, or computer program products or combinations thereof may advance a quantum program by executing one or more streams of one or more instructions to one or more different nodes. Such streams or nodes or combinations thereof may be made to operate as separate threads. Furthermore, one or more systems, methods, or computer program products or combinations thereof may provide accurate modeling of counters or timers, such as TOD counters, or combinations thereof, to enable the precise execution or alignment of one or more quantum tasks or combinations thereof. These techniques may improve the performance of existing instruction set simulation techniques or hardware simulation techniques or combinations thereof when simulating quantum programs that operate on a model of a quantum control system that includes a mixture of classical and quantum components, for example.

[0028] For example, one or more embodiments described herein may enable performance improvements by combining global counter management and local counter management of counters (e.g., local counters in one or more acting nodes of the system). performance These are dedicated to executing instructions for advancing each quantum program. and Furthermore, execution instructions executed on one or more acting nodes may be modeled by the scheduler without modeling the instructions or any part thereof or combination thereof, in order to align the execution of one or more acting nodes, or to handle one or more dependencies between one or more acting nodes or control nodes or combinations thereof. Alternatively, one or more embodiments described herein may manage the triggers of one or more acting nodes so that when dependencies are met, such alignment is possible, or instruction execution can be initiated, or a combination thereof. Similarly, this global management of alignment or initiation or a combination thereof when dependencies are met is Instead of being dedicated solely to execution instructions for advancing each quantum program, Execution on one or more acting nodes Possible This is possible. As a result, precise timing can be used for instruction execution without complex instruction scheduling, or without high-granularity calls to input processing (e.g., per clock cycle at every node), or a combination of the above.

[0029] Furthermore, classical resources (e.g., one or more control nodes) may be non-deterministic and may take a variable amount of time to analyze data, prepare instructions, or send instructions, or a combination thereof. Due to this variable amount of time, synchronization between control nodes, acting nodes, or combinations thereof may be lost. In other words, as a further consequence, synchronization As a result of the loss of, Synchronization-dependent multi-cubic action The implementation of may be hindered, or at least reduced, Interruption, prolonged initialization, or failure or a combination thereof It may be possible, additionally or alternatively, or in combination thereof, to reduce or prevent, or in combination thereof, the adverse effects of loss of synchronization on quantum program execution speed, quantum program execution quality, or the introduction of quantum errors or noise or a combination thereof, or a combination thereof, as desired. As shown, one or more embodiments described herein may enable such resynchronization or alignment or a combination thereof by managing the triggers of one or more acting nodes.

[0030] In one or more cases, one or more embodiments described herein may enable scaling of the execution scale of one or more quantum programs by considering an increase in execution time, an improvement in execution quality, or a combination thereof. Additionally or alternatively, or a combination thereof, by using the subject matter described herein, it may be possible to reduce the cost or complexity, or a combination thereof, of the system used to execute quantum programs in accordance with the subject matter described herein. This may be possible at least by considering the time management of one or more acting nodes of the system, by using a small amount of memory, time, or computing power, or a combination thereof, in one or more acting nodes.

[0031] Herein, one or more functions or processes or combinations thereof as generally described above will be described in more detail below with reference to the figures. In these figures, similar reference numerals are used to refer to similar elements throughout the description of one or more embodiments. As used herein, the term “entity” may refer to a machine, device, smart device, component, hardware, software, or human being or a combination thereof. In the following description, numerous specific details are included for illustrative purposes to provide a more complete understanding of one or more embodiments. However, it is clear that in one or more cases, one or more embodiments may be carried out without these specific details.

[0032] Furthermore, it will be understood that the embodiments shown in one or more figures described herein are merely illustrative, and therefore the architecture of the embodiments is not limited to any particular order, connection, or combination of the systems, devices, or components shown in those figures, nor any particular order, connection, or combination of the systems, devices, or components shown in those figures. For example, in one or more embodiments, an unrestrictive system 100 or unrestrictive system 200 or a combination thereof, or such system or combination, as shown in Figure 1 or Figure 2 or a combination thereof, may further include one or more computer or computing-based elements or combinations thereof described herein with reference to an operating environment such as the operating environment 900 shown in Figure 9. In one or more described embodiments, a computer or computing-based element or combination thereof may be used in relation to one or more implementations of systems, devices, components, or computer implementation operations or combinations thereof that are illustrated or described or combined in relation to Figure 1 or Figure 2 or other figures described herein or a combination thereof.

[0033] First, referring generally to Figure 1, one or more embodiments described herein may include one or more systems, computer implementations, devices, or computer program products or combinations thereof that can facilitate the time management of a quantum program at one or more nodes of a system executing a quantum program. For example, Figure 1 shows a block diagram of an exemplary non-limiting system 100 that can facilitate the time management of an acting node 103 via, for example, an execution management system 102.

[0034] As shown, the non-restrictive system 100 may comprise a quantum system 101 and a classical system such as an execution control system 102. That is, in one or more embodiments, the non-restrictive system 100 may be a hybrid system. In one or more other embodiments, the quantum system 101 may be separate from the non-restrictive system 100 but may function in combination with the non-restrictive system 100.

[0035] The quantum system 101 shown (e.g., a quantum computer system, a superconducting quantum computer system, or similar, or a combination thereof) may be associated with a cloud computing system and, for example, accessible via a cloud computing system. The quantum system 101 can generate results that can be output to entities relating to the quantum program 109 by performing quantum operations or quantum functions or combinations thereof on input data using quantum algorithms or quantum circuits or combinations thereof, which include computing components or computing devices or combinations thereof. The quantum system 101 may include one or more components. Its output may include quantum measurement data. Although not shown, the quantum system 101 may include respective memory or quantum processors or combinations thereof.

[0036] As shown, the quantum system 101 may include an acting node 103 for executing a quantum program 109 by controlling one or more qubits of the quantum system 101. As used herein, a node (e.g., a control node or an acting node) may include one or more machines. One or more machines may include one or more of the following: computing devices, general-purpose computers, dedicated computers, quantum computing devices (e.g., quantum computers), tablet computing devices, handheld devices, server-class computing machines or databases or combinations thereof, laptop computers, notebook computers, desktop computers, mobile phones, smartphones, consumer electronics or appliances or combinations thereof, industrial or commercial devices or combinations thereof, digital assistants, multimedia internet-enabled telephones or other types of devices or combinations thereof.

[0037] In the embodiments shown, the non-limiting system 100 includes the quantum system 101. Alternatively, the quantum system 101 may be outside the non-limiting system 100 but accessible by the non-limiting system 100. Alternatively, the execution control system 102 may include one or more components capable of performing one or more operations performed by the quantum system 101.

[0038] The non-limiting system 100 may be associated with a cloud computing environment and may include, for example, an execution management system 102 that may be accessible via the cloud computing environment. The execution management system 102 may include one or more components, such as memory 104, a processor 106, a bus 124, or a time management component 112 or a combination thereof. In general, the execution management system 102, and therefore the non-limiting system 100, can facilitate the execution of the quantum program 109 through communication with the acting node 103 and the time management of the acting node 103.

[0039] The execution management system 102 can provide one or more processes or functions, or a combination thereof, to function as an instruction set emulator. For example, the time management component 112 can communicate with a node such as the acting node 103 to trigger the node to execute one or more quantum program instructions on the node's counter advanced by the communication. In other words, the time management component can trigger a node. Increment the counter on the node, or In addition to node triggers, Or a combination of those, One or more quantum program instructions can be executed. One or more communications used by the time management component 112 can be used to realize either a trigger or a counter advance, or a combination thereof. The communications can be facilitated via any suitable wired or wireless method, or a combination thereof, including any suitable hardware or software, or a combination thereof. In one example, the time management component 212 can transfer data to control the trigger of the acting node 103 in order to execute one or more quantum program instructions at that node. Through the data transfer, the time management component 212 can cause a jump in the counter of the acting node 103.

[0040] Accordingly, one or more processes executed by the execution management system 102 may enable improved execution by globally managing the transfer of data to the acting nodes 103 and triggering the start of one or more of the acting nodes 103, for example, when a dependency is met, or for the start of the execution of one or more quantum program instructions, or a combination thereof. For example, this global management of alignment or start or a combination thereof when a dependency is met is Instead of solely executing commands and advancing each quantum program, Execution on one or more acting nodes It can be made possible.Furthermore, instructions can be modeled by a non-restrictive system 100 scheduler without additional modeling of instructions, or parts thereof, or combinations thereof, that align execution on one or more acting nodes, or deal with one or more dependencies between one or more acting nodes, or a combination thereof.

[0041] It is also understood that the operation of the execution management system 102 is not limited to controlling a single acting node 103 at a time. Rather, the use of the execution management system 102 itself may be extended to cases where the execution management system 102 can control an acting node in parallel, at least partially, with another acting node.

[0042] Referring now to Figure 2, the figure shows a block diagram of an exemplary non-restrictive system 200 that facilitates the time management of a quantum program at one or more nodes of a system executing a quantum program. It will be understood that the description of non-restrictive system 200 or one or more components thereof or combinations thereof may apply to non-restrictive system 100 or one or more components thereof or combinations thereof, and vice versa, or combinations thereof.

[0043] As used herein, a node (e.g., a control node or an acting node) may include one or more machines. One or more machines may include one or more of the following: computing devices, general-purpose computers, dedicated computers, quantum computing devices (e.g., quantum computers), tablet computing devices, handheld devices, server-class computing machines or databases or combinations thereof, laptop computers, notebook computers, desktop computers, mobile phones, smartphones, consumer electronics or appliances or combinations thereof, industrial or commercial devices or combinations thereof, digital assistants, multimedia internet-enabled telephones or other types of devices or combinations thereof.

[0044] Referring here to one or more details of the non-restrictive system 200, as shown, the non-restrictive system 200 may comprise a quantum system 201 and a classical system such as an execution control system 202. In one or more embodiments, the non-restrictive system 200 may be a hybrid system. In such an example, the quantum system 201 may be separate from the non-restrictive system 200 but may function in combination with the non-restrictive system 200.

[0045] The quantum system 201 shown (e.g., a quantum computer system, a superconducting quantum computer system, or similar, or a combination thereof) can generate results that can be output to entities by performing quantum operations or quantum functions or combinations thereof on input data using quantum algorithms or quantum circuits or combinations thereof, which include computing components or computing devices or combinations thereof.

[0046] A quantum circuit may comprise circuits for qubits (qubits), such as multibit qubits, physical circuit-level components, high-level components, or functions, or a combination thereof. A quantum circuit may be accompanied by physical pulses that can be structured (e.g., arranged or designed, or a combination thereof) to perform a desired quantum function or quantum computation, or a combination thereof, on data (e.g., input data, or intermediate data derived from input data, or a combination thereof) to produce one or more quantum results or quantum measurements, or a combination thereof, as outputs. The quantum results or quantum measurements, or a combination thereof, may respond to a quantum job request and associated input data, and may be at least partially based on the input data, the quantum function or quantum computation, or a combination thereof.

[0047] The quantum system 201 may include one or more acting nodes, such as acting nodes 203A and 203B for controlling one or more qubits 211 to execute the quantum program 209. An acting node may be a quantum resource capable of performing one or more quantum tasks, such as pulse generation, waveform generation, quantum measurement, or other functions or combinations thereof, associated with, or accompanied by, one or more qubits. These acting nodes may be distributed locally with respect to each other, non-uniformly, or a combination thereof, or any appropriate number of acting nodes may be connected to each other in a communicative manner via any appropriate method, or a combination thereof. In one or more other embodiments, it will be understood that one or more acting nodes may be quantum resources, or may include one or more quantum components, or a combination thereof. Additionally or alternatively, or in combination thereof, one or more acting nodes may provide one or more of the following functions of a control node or one or more control nodes, or one or more control nodes may provide one or more of the above functions of an acting node, or a combination thereof.

[0048] In one or more embodiments, the quantum system 201 may comprise one or more quantum components, such as a quantum computing component or a quantum processor or a combination thereof. For example, acting node 203A may include a quantum computing component 207A or a quantum processor 205A or a combination thereof, and acting node 203B may include a quantum computing component 207B or a quantum processor 205B or a combination thereof. In one or more embodiments, the quantum system 201 may comprise a quantum computing component or a quantum processor or a combination thereof separate from its one or more acting nodes.

[0049] A quantum computing component can perform one or more quantum operations, quantum computations, or quantum measurements, or a combination thereof, to operate one or more quantum circuits on one or more qubits 211. For example, a quantum computing component 207A or 207B, or a combination thereof, can operate one or more quantum effectors, such as a qubit oscillator, harmonic oscillator, pulse generator, or similar, or a combination thereof, to generate one or more pulses or signals, or a combination thereof, to facilitate or manipulate, or a combination thereof, the state of one or more qubits 211 present in the quantum system 201. Additionally or alternatively, or a combination thereof, a quantum computing component 207A or 207B, or a combination thereof, can perform one or more quantum measurements.

[0050] A quantum processor can be a suitable processor, for example, by enabling control over the generation of qubits. A quantum processor can generate one or more instructions to control one or more operations of one or more quantum computing components (e.g., quantum computing components 207A or 207B or a combination thereof).

[0051] Referring here to the classical portion of the unrestricted system 200, the execution management system 202, though not shown, may be included in the classical system of control nodes. Alternatively, the execution management system 202 itself may be a control node. A control node may be a classical resource capable of providing scheduling, instructions, data analysis, measurement analysis, quantum parameter optimization, or similar, or a combination thereof. Control nodes may be distributed locally, non-unilaterally, or a combination thereof, or any two or more control nodes may be connected to each other in a communicative manner via any suitable method, or a combination thereof. In one or more other embodiments, it will be understood that one or more control nodes may be quantum resources, or may include one or more quantum components, or a combination thereof.

[0052] Additionally, or alternatively, or in combination thereof, one or more other node types other than acting nodes and control nodes may be possible. For example, pass-through nodes may be used to assist with physical distribution or connection or a combination thereof, interface nodes may be used between quantum systems, or qubit group controllers may be used to manage a set of incomplete qubits, for example, as a single error-protected qubit, or a combination thereof.

[0053] Furthermore, as will be understood below, one or more operations performed by the execution management system 202 are described below, for the sake of clarity, with respect only to one or more acting nodes 203A and 203B of the quantum system 201. However, one or more operations performed by the execution management system 202, such as those performed by the scheduling component 210, the time management component 212, or the execution component 216 or a combination thereof, are applicable or executable or a combination thereof with respect to one or more additional acting nodes or other acting nodes or combinations thereof, one or more control nodes or one or more other node types or combinations thereof. In other words, the execution management system 202 may function to control time management at various nodes or all nodes or combinations thereof of a hybrid classical / quantum system for, for example, the execution of a quantum program.

[0054] The execution management system 202 as shown may comprise any suitable type of component, machine, device, equipment, apparatus or apparatus or combination thereof having a processor, or may be capable of communicating effectively or operably with or in combination with a wired network or a wireless network or combination thereof, or a combination thereof. All such embodiments are envisioned. For example, the execution management system 202 may include server devices, computing devices, general-purpose computers, dedicated computers, quantum computing devices (e.g., quantum computers), tablet computing devices, handheld devices, server-class computing machines or databases or combination thereof, laptop computers, notebook computers, desktop computers, mobile phones, smartphones, consumer electronics or appliances or combination thereof, industrial or commercial devices or combination thereof, digital assistants, multimedia internet-enabled telephones, multimedia players or other types of devices or combination thereof, or computing devices or combination thereof.

[0055] In one or more embodiments, the execution management system 202 may comprise a processor 206 (e.g., a computer processing unit, a microprocessor, a classical processor, a quantum processor, or a combination thereof). In one or more embodiments, components associated with the execution management system 202, described herein with or without reference to one or more figures of one or more embodiments, may comprise one or more computer-readable or machine-readable, or combination thereof machine-writable or machine-executable components or instructions or combination thereof. These can be executed by the processor 206 to facilitate the execution of one or more processes defined by such components or instructions or combination thereof. In one or more embodiments, the processor 206 may comprise a job determination component 208, a scheduling component 210, a time management component 212, an execution component 216, an analysis component 218, or an output component 220 or a combination thereof.

[0056] In one or more embodiments, the execution management system 202 may include a computer-readable memory 204 which can be operably connected to a processor 206. The memory 204 can store computer-executable instructions. When executed by the processor 206, the computer-executable instructions can cause the processor 206 or other components of the execution management system 202 (e.g., a job decision component 208, a scheduling component 210, a time management component 212, an execution component 216, an analysis component 218, or an output component 220, or a combination thereof) to perform one or more actions. In one or more embodiments, the memory 204 can store computer-executable components (e.g., a job decision component 208, a scheduling component 210, a time management component 212, an execution component 216, an analysis component 218, or an output component 220, or a combination thereof).

[0057] The execution control systems 202 or their components, or combinations thereof, described herein may be coupled to each other, or to them, or in combination thereof, via the bus 224 electrically, communicatively, operably, optically, or in other manner, or in combination thereof, in order to perform functions of a non-limiting system 200, the execution control systems 202 or one or more components thereof, or combinations thereof. The bus 224 may comprise one or more of the following: a memory bus, a memory controller, a peripheral bus, an external bus, a local bus, a quantum bus, or another type of bus or combination thereof, which may be using one or more bus architectures. One or more of these examples of the bus 224 may be used to implement one or more embodiments described herein.

[0058] In one or more embodiments, the execution management system 202 may be coupled (for example, via a network) to one or more external systems, sources, or devices or combinations thereof (e.g., classical computing devices or quantum computing devices or combinations thereof, communication devices or similar devices, or combinations thereof) (e.g., in a communicative, electrically, operably, optically, or similarly, or a combination thereof). In one or more embodiments, one or more components of the non-limiting system 200 may reside in the cloud, or locally (e.g., at a desired location) in a local computing environment, or a combination thereof.

[0059] In addition to the processor 206 or memory 204 or a combination thereof described above, the execution management system 202 may include components or instructions or combinations thereof that are readable, writable, or executable, or a combination thereof, on one or more computers or machines or a combination thereof. Such components or instructions or combinations thereof, when executed by the processor 206, may facilitate the execution of one or more operations defined by such components or instructions or combinations thereof. Furthermore, in one or more embodiments, the execution management system 202 may include a job determination component 208, a scheduling component 210, a time management component 212, an execution component 216, an analysis component 218, or an output component 220 or a combination thereof.

[0060] The job determination component 208 can provide, for example, receive, acquire, or otherwise obtain job requests, such as quantum job requests, from requesting entities, using one or more embodiments of an operating environment, such as the operating environment 900 shown in Figure 9. As a non-limiting example, a quantum job request may be downloaded directly or indirectly from the quantum computing component 203 or the execution management system 202 or a combination thereof, received from memory / storage 952 via the WAN 956, or downloaded via the WAN 956 from a node such as the cloud computing node 1010 (Figure 10) of the cloud computing environment 1050, or a combination thereof.

[0061] The non-restrictive system 200 uses the execution management system 202 and the quantum system 201 to process quantum job requests. In It is possible to execute one or more quantum programs, such as quantum program 209, which are required to be implemented. In one or more cases, a quantum job request may include one or more execution instructions related to one or more specific quantum circuits for use.

[0062] In one or more embodiments, the execution management system 202 can further function as an instruction set emulator by providing one or more processes or functions or combinations thereof. For example, the execution management system 202 may include a scheduling component 210, a time management component 212, or an execution component 216 or a combination thereof. It will be understood that in one or more other embodiments, either separately or additionally, one or more functions, processes, or components or combinations thereof described herein may be used or constructed or combined to operate outside the simulated environment.

[0063] The scheduling component 210 may include a scheduler, a compiler, or a combination thereof, or both, or a combination thereof. The scheduling component 210 may include one or more execution modes in one or more acting nodes 203A and 203B, as described in detail below (e.g., one or more data transfers, instruction executions, one or more execution instructions) 、 Starting point, waiting point, dependency Aligned execution of, or something similar It may function to compile (for example, scheduling or identifying or a combination thereof) one or more compiled start points, wait points or dependencies or combinations thereof through scheduling of one or more data transfers by the scheduling component 210. Data transfers may occur through the transfer of one or more communications / messages containing the data for one or more data transfers.

[0064] Compilation may include verification or simulation of a quantum program, such as quantum program 209, or a combination thereof. Compiling one or more of these execution modes may enable the time management component 212 to maintain tracking of the progress of quantum program 209 while it is running. In practice, as will be detailed below after further descriptions of one or more execution modes, compiling such execution modes may enable the time management component 212 to simulate one or more time cycles, time delays, or similar, or a combination thereof, thereby enabling the quantum program 209 to be executed with precise clock cycle management, and at high speed, high efficiency, or a combination thereof, without, for example, calling all nodes in each clock cycle.

[0065] It will be understood that one or more execution modes may be compiled before the start of the quantum program 209. Additionally, or alternatively, or in combination thereof, one or more such execution modes may be compiled during the execution of the quantum program 209, for example, at runtime.

[0066] Referring here to the compilation of one or more different execution modes, the scheduling component 210 may compile one or more strings of one or more consecutive execution instructions by verifying or analyzing or combining each of the quantum programs 209. One or more execution instructions or strings thereof, or combinations thereof, may be compiled for execution without synchronization with another node. This unsynchronized execution may include execution without alignment with another node (e.g., an acting node or control node or a combination thereof), without an initial start, or without dependencies on one or more other nodes (e.g., an acting node or control node or a combination thereof), or a combination thereof.

[0067] The scheduling component 210 further: In order to receive an execution instruction or receive data, or a combination thereof, that enables the initialization of one or more execution instructions, One or more dependencies on other nodes, or One or more starting points or a combination thereof This can be compiled. As used herein, a dependency can refer to a measurement, execution instruction, or other data transfer, or a combination thereof, received from another node (e.g., an acting node or a control node or a combination thereof) to enable a node, such as an acting node, to initiate the execution of one or more execution instructions. In other words, the execution of one or more instructions depending on a dependency cannot, in one or more cases, be performed without fulfilling the dependency.

[0068] In a further example, Figure 3 shows a diagram 300 relating to the execution of one or more execution instructions 302 of the quantum program 209 at the acting node 203A. Diagram 300 is divided into three different approaches I, II, and III for the quantum program 209.

[0069] Approach I shows the case where both threads A and B operate sequentially on a common processor. Execution instructions 302A to 302C are: another With the node (for example, an acting node or a control node or a combination thereof) Does not exist Alignment, Does not exist early start or To one or more other nodes (e.g., an acting node, a control node, or a combination thereof) Does not exist dependence Or a combination thereof, for sequential execution, Executable instructions that can be compiled by the scheduling component 210 The character Represents a column.

[0070] Approach II describes a case where both threads A and B run on a common processor, but switching between threads A and B, or task swapping, or a combination thereof, is enabled. Start points 304A and 304B can be identified by the scheduling component 210. That is, the start of execution instructions 302A-302C (at 304A) in Approach II may be provided via communication such as data transfers, including start instructions or wake instructions, or combinations thereof, which will be described in more detail below.

[0071] Dependency 306A can be identified by the scheduling component. This further identifies the starting point 304B associated with achieving dependency 306A, for example, through another communication involving the reception of data transfer (DT) 308A. Although data transfer 308A is shown as being received from the same acting node 203A, it will be understood that data transfer 308A may depend on one or more other data transfers outside of acting node 203A, which are not specifically shown.

[0072] Furthermore, at one or more points after execution, one or more wait points, such as wait points 310A and 310B, may be identified by the scheduling component 210. Here, the execution of one or more execution instructions is completed, but additional execution instructions are scheduled later, depending on dependencies (e.g., at 304), or including a separate start point (e.g., at 304A), or a combination thereof.

[0073] Approach III demonstrates a case where threads A and B are run on different processors and run simultaneously, providing a high-performance case. For example, in Approach III... It does not exist Task swap or switch Starting point 304D is, Unlike Approach II, During the execution of instruction 302A in Approach III, Instruction 302 in Approach III This is achieved in full runtime when B and 302C are not present. As shown from left to right in approaches I, II, and III, for example along the time axis, threads A and B can be made to operate with higher performance in approach III compared to approaches I and II.

[0074] In Figure 3, it will be understood that not all start points, dependencies, wake points, or execution instructions or combinations thereof are signed. Rather, certain start points, dependencies, wake points, or execution instructions or combinations thereof are signed for the purpose of the explanation provided above. Nevertheless, the scheduling component 210 can identify one or more (e.g., all) start points, dependencies, wake points, or execution instructions or combinations thereof in relation to one or more acting nodes for the execution of the quantum program 209. For example, in Figure 3, the third instruction in thread A (the third block of 302A) generates data that arrives before the third instruction in thread B (the third block of 302D). That is, thread B, A Because it has a dependency on DT308A, it waits until the data becomes available. As each of the three approaches demonstrates, this dependency exists and is satisfied regardless of the order of thread execution. It should be .

[0075] Referring further to Figure 3, it will be understood that the scheduling component 210 can partition identified execution instructions executed at an acting node into one or more threads to enable, for example, easier or more efficient execution at the acting node, or easier or more efficient monitoring by the time management component 212, or a combination thereof. This will be further elaborated. For example, Figure 3 shows an execution instruction 302 at acting node 203A partitioned into threads A and B by the scheduling component 210. In one example, in a simulation environment, each acting node may be a thread. When operating on one or more machines with multithreading support, tangible acceleration of each simulation can be achieved by executing threads in parallel (for example, as shown in Approach III). When all dependencies are efficiently identified and handled by the simulator, for example, the scheduling component 210, On or between machines Timing variations (e.g., memory collisions, message bottlenecks, cache misses or similar, or a combination thereof) Departure Even if it were possible, the result would be the same. While further acquisition is underway, the order of thread execution may differ between machines or between executions on the same machine. .

[0076] It will be understood that, in relation to various scheduling modes, such as one or more start points, dependencies, wake points, or execution instructions or combinations thereof, which can be at least partially identified by the scheduling component 210 before the execution of the quantum program 209, one or more nodes of the non-limiting system 200, such as acting nodes 203A and 203B, may be constructed to perform one or more functions corresponding to them (e.g., various scheduling modes). For example, one or more acting nodes may operate in a particular execution state, such as an active state or a standby state. An active state may refer to a state in which one or more execution instructions are being executed, or are being made to operate, or a combination thereof. A standby state of a node may include at least a partial sleep state, such as idling or swapping out a thread to allow another execution. A trigger, which may be provided by the time management component 212, may wake this node from the standby state to the active state. This will be explained below.

[0077] In one or more embodiments, one or more additional execution states (e.g., types of states) may be used by one or more nodes. For example, a node may use an initial state before starting a quantum program. Initialization of one or more execution instructions in a node in the initial state may be provided via the aforementioned triggers, by another component of the non-limiting system 200, or a combination thereof. For example, counters in each node may be started simultaneously, for example, via the quantum processor 205 or the quantum computing component 207, or a combination thereof.

[0078] A node can enter a stopped state. In a stopped state, no further execution instructions are scheduled to be executed for that node, but other nodes may still have one or more execution instructions to execute. While in a stopped state, a node may continue to receive data transfers that may or may not be considered problematic (for example, individual messages to a stopped node may be errors, but receiving a copy of a system-wide broadcast message may not). For example, if an error or architectural violation is detected, faced, or a combination thereof, a node may enter an error state from any other state. For example, if one or more nodes are instructed to stop the current or future execution of one or more execution instructions or a combination thereof, a node may enter an aborted state from any other state. The instruction to enter an aborted state may be provided by a trigger provided by the time management component 212. This is described below. For example, if all nodes are stopped, None of the messages are still scheduled to be delivered. In that case, the system may enter a termination state to end the simulation.

[0079] To summarize one or more aspects of the above description, various execution modes, such as one or more data transfers, start points, dependencies, wake points, or execution instructions, or combinations thereof, can be identified by the scheduling component 210. One or more nodes, such as one or more acting nodes or one or more control nodes, or combinations thereof, can be configured to operate in one or more specific execution states (e.g., active state, wake state, initial state, stopped state, error state, aborted state, or terminated state, or combinations thereof) that can correspond to various scheduling modes.

[0080] Referring again to Figure 2 and one or more functions of the time management component 212, the advancement of time / counts in the local counter of a node (e.g., acting node 203A or 203B or a combination thereof) and switching between one or more different execution states will be described in more detail.

[0081] First, the switching between one or more of the various execution states may be managed by the time management component 212, or by one or more nodes, or by local management.

[0082] For example, the switch from an active state to a standby state may be controlled by local nodes that possess these states. 、 A local node can recognize when it can instruct the execution of instructions with dependencies.

[0083] Alternatively, the switch from a standby state to an active state may be controlled by a time management component, for example, through the distribution of dependent data indicating that a node in a standby state is standby. Similarly, the recognition that one or more dependencies are satisfied, or one or more starting points have been reached, or a combination thereof, may also be managed by the time management component 212 instead of through local management in one or more nodes (e.g., acting nodes 203A and 203B). Thus, without complex instruction scheduling, or without high-granularity calls to input processing (e.g., per clock cycle in all nodes), or a combination thereof, the computing power and memory of one or more nodes may be focused on executing instructions, or precise timing may be used for instruction execution, or a combination thereof.

[0084] To further illustrate the time management performed by the time management component 212, one or more examples of communication by the time management component 212 are provided here. For example, the time management component 212 can send individual data transfers to one or more of the acting nodes 203A and 203B to individually trigger one or more of these nodes to execute one or more individual instructions, such as one or more execution instructions scheduled by the scheduling component 210. In other words, one or more acting nodes 203A and 203B can be triggered from a standby state to their respective active states via the time management component 212.

[0085] In practice, one or more acting nodes 203A or 203B, or a combination thereof, once triggered, may operate under local control to control instruction execution until a standby state is activated. The standby state may be activated by the completion of one or more execution instructions, such as at a standby point (e.g., standby point 310A in Figure 3), or through a face-to-face interaction with a dependency (e.g., dependency 306A in Figure 3), or a combination thereof. Subsequently, the time management component 212 can control the activation of the switch from the standby state to the active state of acting nodes 203A or 203B, or a combination thereof, in order to begin the execution of one or more execution instructions on those nodes.

[0086] Similarly, the time management component 212 can trigger a switch to a stopped state, an aborted state, or any other appropriate running state, or any combination thereof, as defined herein or otherwise deemed appropriate, via one or more communications, such as one or more data transfers, data pings, or other triggers or combinations thereof.

[0087] Next, the advancement of the counter at each node (for example, acting node 203A or 203B or a combination thereof) may be managed by the time management component 212 (for example, global management), or It may be managed by local management on one or more nodes by one or more nodes.

[0088] First, the instructions being executed do not depend on messages, data, or a combination thereof. Each local counter Nodes (for example, acting node 203A or 203B, or a combination thereof) but It will become clear that this can be done independently. For example, an active node can increment its local TOD counter by updating the local TOD counter of each local counter on that node, based on the number of cycles consumed by each executed instruction. However, in a standby state, this node cannot update its local TOD counter because it has no knowledge of how long it will take for the data it is waiting for to arrive.

[0089] Alternatively, or additionally, or in combination, a time management component such as a time manager, e.g., time management component 212, can generally control the time management of the execution of the quantum program 209 on one or more nodes, such as acting nodes 203A or 203B or a combination thereof. Generally, the time management component 212 communicates with one or more nodes (e.g., acting nodes 203A or 203B or a combination thereof) to enable these nodes to communicate. 、 Each node can be triggered to execute one or more quantum program instructions (e.g., execution instructions) for a counter (e.g., local counter). In other words, one or more communications by the time management component 212, including one or more data transfers (e.g., those compiled via the scheduling component 210), aTriggering one or more nodes, such as triggering nodes 203A and 203B, and / or , For example, to run quantum program 209 Increment the local counter on one or more nodes. of It can be controlled. Based on access by the time management component 212, local counters on one or more nodes can be advanced by one or more identical or different communications, or a combination thereof, from the time management component 212.

[0090] In other words, one or more communications via the time management component 212 can facilitate synchronization of one or more individual counters in one or more nodes (e.g., TOD counters in acting nodes 203A and 203B), or synchronization of those counters, or a combination thereof. The individual counters may be included in the time management component 212, the execution management system 202, or a combination thereof, or the time management component 212, the execution management system 202, or a combination thereof may be accessible by any suitable communication method, or a combination thereof. The individual counters may be triggered, for example, at the start of execution of the quantum program 209, by the time management component 212, the execution management system 202, or the quantum system 201, or a combination thereof, to start with any suitable starting count, such as 0.

[0091] Generally, time management components, such as time management component 212 which monitors the issuance of data from all nodes, ( The TOD counter of the (standby) node, sending believers (For example, the sender node) of At the time of publication TOD and the combination of message delivery propagation delay are used by the sender to twist prediction Proceed to the message delivery time. The message delivery propagation delay is based on the physical properties of the simulated system.The time management component 212 can deliver messages based, for example, on the state of all nodes, or on any message priority rules that can be applied based on the modeled system, or a combination thereof. A detailed explanation of this functionality is provided here.

[0092] For example, via one or more data transfers, data pings, or other triggers, or a combination thereof, the time management component 212 can reset counters at a node, for example, if it triggers a node first. This "reset" can initialize local counters at the node. The node then executes instructions that it does not have dependencies on. time , the counter can be updated by itself. When a dependency occurs in the instruction stream and a node is waiting for data to arrive from another node (e.g., a sending node) via its respective message delivery rules (e.g., priority based on message type or priority of sending nodes in case of message collisions), the data transfer containing the dependent data is The A standby node may be triggered by another node (for example, by passing a quantum measurement). In other words, the time management component 212 is The It can receive or intercept dependent data from another node. Then, the time management component 212 can deliver messages (i.e., from another node to the standby node), Wait The counter on the receiving node (i.e., the receiving node in this case) indicates when the message has reached the hardware. (For example, via the same message, or communication containing that message, or a combination thereof) You can advance to the time when it would occur (for example, if it hasn't been simulated yet).

[0093] The time management component 212 may advance the node's local counter based on a combination of the time of another node and the actual propagation time determined for the message. In the aforementioned case, the time management component 212 may advance the local counter of another node The time of another node for a message containing dependent data fromBased on the combination of the determined actual propagation time, the local counter of the receiving node may be advanced. In other words, the new time advanced in the local counter of the receiving node by the time management component 212 may be a combination of the counter value of the sending node when the message is issued and the message propagation time based on physical system characteristics. The physical system characteristics may be those of an actual system or a hypothetical system. The physical system characteristics may be unique (for example, cable lengths may differ between physical components) and may be determined by the time management component 212 or the scheduling component 210 or a combination thereof during execution instruction compilation or runtime or a combination thereof.

[0094] It will be understood that, in addition, alternatively, or in combination, separate communications may be used by the time management component 212 for local counter control and instruction execution control.

[0095] By including propagation delay, the simulated and actual implementations of a receiving node (i.e., a standby node) can resume execution simultaneously with all other nodes in the system (e.g., after a standby state). If the simulated and actual nodes do not function identically, the cycle-accurate output waveforms generated across all nodes (e.g., used or observed by qubits, or a combination thereof) may differ undesirably between the simulated and actual implementations. This can lead to an undesirable reduction in the efficiency and / or functionality of the simulation.

[0096] In one or more embodiments, when the standby state is activated, the acting node 、 Includes cycle count or TOD count or a combination thereof. 、 For the time management component 212 sending Faith It will be doneMessages may be sent, loaded, or a combination thereof. In this way, the time management component 212 may verify or further track the progress of cycles in one or more acting nodes, or a combination thereof.

[0097] Control via the time management component 212 allows one or more nodes to enter a standby state. to Enter ru This could be possible. In such a case, the underlying machine (including, for example, each processor) that runs the node's threads would enter a sleep mode that consumes less computing power. to Enter tt : The node's thread may be swapped out so that another thread waiting for computing resources can begin execution. A side effect of using the time management component 212 in this manner may be a loss of synchronization between counters across different nodes. In practice, a node may have different execution time counters that are ahead of or behind one or more other nodes when viewing the system as a whole at any given moment in the simulation. However, the correct message delivery rules used by the time management component 212, which may be specific to each physical system, may produce the same result with respect to cycle-accurate waveforms generated by all nodes, regardless of the order in which they are taken by different threads during one or more simulation executions.

[0098] Next, looking at Figure 4, and further at Figure 2, a diagram 400 of instruction execution in a non-limiting system 200 is shown. This diagram 400 provides further examples of a time management component 212 that uses various data transfers 402 for the start point, wait point, or dependency, or a combination thereof, of an execution instruction (EI) executed at the control node, acting node 203A, and acting node 203B. Further explanation of Figure 4 is provided here in relation to the control of the time management component 212 of one or more counters at one or more nodes of the non-limiting system 200, for example, at acting nodes 203A and 203B.

[0099] For example, the time management component 212 can reset local counters on acting nodes 203A, 203B, or a combination thereof. In one example, data transfer 403 to acting node 203A may reset the local counter on acting node 203A to count 435. Similarly, one or more nodes, for example acting nodes 203A and 203B, may be in a standby state, a stopped state, or a combination thereof. to Enter ru In this case, the count in each local counter can be transmitted.

[0100] Referring to Figure 5, and further to Figure 2, communication by the time management component 212 can be at least partially facilitated by one or more mailboxes 530 that can be generated by the execution component 216.

[0101] The time management component 212 can use one or more mailboxes 530 on one or more nodes, such as acting node 203A or 203B or a combination thereof. The mailbox designation of one or more mailboxes 530 can be dynamically changed. The mailbox designation may relate to the execution state of the node, such as active, standby, initial, stopped, error, or aborted, or a combination thereof. In other words, in one or more embodiments, various execution states of the node can be communicated indirectly with the time management component 212 via one or more mailboxes 530. The mailbox designation can generally enable the time management component 212 to monitor the execution of the quantum program (e.g., quantum program 209) on the node while the quantum program is running. In practice, one or more designations can be used for the time management component 212 on one or more nodes, such as acting node 203A or acting node 203B or a combination thereof. The One or more actions or processes, or combinations thereof. Regarding Notifications can be provided to the time management component 212. This will be explained in more detail here.

[0102] As shown in Figure 5, one or more acting nodes 203A and 203B (for example, each of them) may include one or more acting node components, such as an expander (EX), a waveform player (WP), a digital-to-analog converter (DAC) device, an analog-to-digital converter (ADC) device, or a kernel / discriminator (KD), or a combination thereof. In one or more embodiments, one or more functions of one or more acting node components may be performed by one or more other acting node components. In one or more embodiments, one or more acting node components may be combined, omitted, or a combination thereof.

[0103] Acting node 203A has at least one qubit, such as qubit 211A. to It may function to work. Similarly, the acting node 203B also has at least one qubit, such as qubit 211B. to It may function to work. Additionally, although only two qubits are shown, in one or more other embodiments, for example, additional acting nodes may have seven or more qubits, ten or more qubits, or 100 or more qubits, or a combination thereof, etc. to Made by for It will be understood that this may be included.

[0104] While the Acting Node 203A referred to herein is also applicable to Acting Node 203B, one or more embodiments of Acting Node 203A will be described in detail. Acting Node 203A may include an expander (EX) 521A, a waveform player (WP) 522A, a digital-to-analog converter (DAC) device 523A, an analog-to-digital converter (ADC) device 524A, and a kernel / discriminator (KD) 525A, and a qubit (0) 211A to Made by forThe expander 521A can convert compressed information about quantum gates into a sequence of one or more quantum gates. At least a portion of this sequence can be compiled into a database outside or inside the unrestricted system 200, or a combination thereof. The waveform player 522A can convert a sequence of two or more quantum gates into code points for use by the DAC device 523A. For example, the waveform player 522A may refer to a library of code points representing one or more quantum gates to construct a sequence of code points. The library of code points may be stored in a database outside or inside the expanded unrestricted system 200, or a combination thereof. The DAC device 523A can convert a sequence of code points into one or more analog signals, such as analog control signals or analog measurement signals, or a combination thereof. During the time window for measuring the state of a qubit (e.g., qubit(0) 211A), the ADC device 524A can sample one or more of the analog signals to generate one or more digital codes representing voltages.

[0105] The kernel / discriminator 525A can convert one or more samples of a measurement into binary representations of qubit states. In one or more other embodiments, the kernel / discriminator 525A can convert one or more samples of a measurement into one or more binary states. in this case, For example, binary strings may be used, passed, or combined to represent one or more of these states (e.g., four distinct quantum states defined as 00, 01, 10, and 11). 。The kernel / discriminator 525A can output the qubit value of qubit(0) 211A. Furthermore, although not specifically shown in Figure 5, in one or more embodiments, the quantum measurements output from the kernel / discriminator may be supplied to each expander, different expanders, or broadcast to two or more nodes within each system, or a combination thereof.

[0106] For example, during the compilation of execution instructions, one or more mailboxes 530 may be generated by the execution component 216, the time management component 212, or a combination thereof. In one or more embodiments, one or more mailboxes 530 may be generated at least partially during runtime by the execution component 216, the time management component 212, the kernel / discriminator component 525, or a combination thereof. At least one mailbox 530 may be used for each acting node, such as mailbox 530A associated with acting node 203A and mailbox 530B associated with acting node 203B. The execution component 216 can realize the mailboxes 530 by identifying or using one or more hardware or software configurations or combinations thereof, from or outside of the non-limiting system 200, or a combination thereof. In one or more embodiments, the software configuration may include or be part of a cloud network. The hardware configuration may include one or more physical hardware components, such as routers, servers, cables, routing boxes, or custom hardware interfaces, or similar, or a combination thereof.

[0107] As shown, the mailbox 530 may use various specifications in relation to the execution state of each node. The specifications in the mailbox 530 may be dynamically switched, for example, by the time management component 212, or the nodes that have each mailbox 530, or a combination thereof. By monitoring the specifications by the time management component 212, the time management component 212 may indicate, direct, suggest, or perform one or more compiled or uncompiled execution modes or combinations thereof, such as data transfer.

[0108] In one or more embodiments, the mailbox designations used may include empty designations, loaded designations, delivered designations, and read designations. An empty designation may indicate that mailbox 530 is not in use and therefore can be loaded with a new data transfer, such as a message. A loaded designation may indicate that mailbox 530 contains a message. The time management component 212 may change a loaded designation to a delivered designation to trigger a node to switch from a standby state to an active state, for example, when a data transfer to be loaded is used. A delivered designation may indicate that mailbox 530 is visible to the recipient node. For example, when the recipient node begins to extract content, the recipient node (e.g., the node with mailbox 530) may change a delivered designation to a read designation. This change may indicate to the time management component 212 that the recipient node is functioning correctly. A read designation may indicate that the recipient node can act on the content of the data transfer (e.g., immediately), or create a copy of the data transfer for later processing, or a combination of both. The recipient node may change the mailbox designation back to an empty designation after acting on the data transfer, creating a copy thereof, or a combination of both.

[0109] In one or more embodiments, the mailbox 530 may be point-to-point, thereby enabling a single sender and a single receiver. For example, the mailbox 530 may be uniquely identified by the sender node ID and channel, the receiver node ID and channel, or a multicast group (MCG), or a combination thereof. Using a point-to-point mailbox may allow for customization of delivery times for each data transfer.

[0110] Furthermore, it will be understood that one or more non-limiting embodiments of System 200 may use the general mechanism of mailboxes in one or more different ways, or even replace one or more mailboxes with different mechanisms. However, in the embodiment described in relation to Figure 5, mailbox designation makes it possible to clearly define and control ownership / control of mailboxes. That is, in an empty state, the sending node can control write access to each mailbox. This may allow the sending node to immediately fill each mailbox with data as soon as new information for sharing with other nodes becomes available.

[0111] In the resulting loaded state of each mailbox, ownership / control may be transferred to the time management component 212. Given the state of the receiving node (e.g., waiting or active) and message delivery rules (e.g., prioritizing based on message type in case of message collisions, or prioritizing sending nodes), the time management component 212 may be responsible for presenting the mailbox to the receiving node at the correct time.

[0112] In the delivery status, ownership / control of each mailbox may belong to the receiving node. The delivery status may indicate that the mailbox content is ready for processing by the receiving node, but processing has not yet begun.

[0113] In the subsequent read state, the receiving node may have already opened each mailbox and begun processing its contents. Ownership of the mailboxes may remain with the receiving node. In one or more embodiments, the read state may be considered an optional state, but it may be useful for debugging to enable a distinction between the deliverable state and the read state. If the receiving node has processed the contents of each mailbox, the receiving node may repeat this cycle by setting the mailbox designation back to the empty state.

[0114] By allowing only one sender and one receiver per mailbox, different, unique propagation times can exist between nodes. This allows for simulation by the execution management system 202 of the physical system (for example, cable lengths may differ between physical components). In this exemplary embodiment, one broadcast operation is divided into multiple mailboxes (one for each receiver), but in different embodiments, it will be understood that a mailbox structure can be implemented in which a broadcast message contains one sender and multiple receivers, each with different path delays.

[0115] Additionally, mailbox 530 may include different types of mailboxes or combinations thereof that can be used in one or more fields, sub-registers, or one or more nodes. Each of the one or more fields, sub-registers, or different types of mailboxes or combinations thereof may use the various mailbox specifications described above. In one or more embodiments, one or more fields, sub-registers, or mailboxes Ma or that combination Type This may include broadcasts, qubit values, time comparisons, or masked received qubits, or a combination thereof. Broadcast fields, sub-registers, or mailboxes. Ma or that combination Type This can be used for sending or receiving the same message within multiple mailboxes 530, or a combination thereof. (Cubit value field, sub-register or mailbox) Ma or that combination Type This may be used for transmitting or receiving quantum measurements, or a combination thereof. Time comparison field, sub-register or mailbox Ma or that combination Type This can be used by the node to send or receive data transfers to or from itself, or a combination thereof, controlled by the time management component 212. Time comparison may be a mechanism used for synchronization. This mechanism allows the node to suspend instruction execution until a specific future TOD is reached. Receive qubits, sub-registers, or mailboxes under the mask field. 、 or a combination thereof Type This can be used to wait for one or more quantum measurements to be performed before continuing instruction execution. This is done by the classical part of the quantum algorithm (e.g., the control node). current Until the current sub-part is completed trial trial About Future instructions It can be used to postpone the decision.

[0116] Analysis component 218 is, figure By using one or more embodiments of the operating environment, such as the operating environment 900 shown in 9, From quantum system 201, regarding one or more qubits 211 being acted uponOne or more experimental results, such as quantum results, can be provided (e.g., received, acquired, or otherwise acquired, or a combination thereof). As an unrestricted example, one or more experimental results may be downloaded directly or indirectly from the quantum computing component 203 or the execution management system 202 or a combination thereof, received from the memory / storage 952 via the WAN 956, or downloaded via the WAN 956 from a node such as the cloud computing node 1010 (Figure 10) of the cloud computing environment 1050, or a combination thereof.

[0117] Furthermore, the execution management system 202 may include an output component 220. One or more measurement results may be output from an unrestricted system 200 via the output component 220. One or more measurement results may include one or more quantum results output from the quantum system 201, which may be at least partially based on such quantum results, or in response to a quantum job request from a requesting entity, or a combination thereof. For example, the measurement results may include one or more measurements relating to one or more states of one or more qubits 211 of the quantum system 201.

[0118] In summary, one or more embodiments described herein may enable improved performance of a quantum system (e.g., a simulated quantum system) by at least partially globally managing counters that are locally managed at one or more acting nodes of the quantum system. Local counters may be advanced independently by each node or execution management system or a combination thereof of one or more embodiments. Execution at one or more acting nodes may be dedicated to the execution of instructions for advancing each quantum program. Furthermore, instructions may be modeled by scheduling components without modeling instructions and / or parts of instructions in order to align execution at one or more acting nodes, or to handle one or more dependencies between one or more acting nodes or control nodes or a combination thereof, or a combination thereof. Alternatively, one or more embodiments described herein may enable alignment by managing triggers for one or more acting nodes. Also, one or more embodiments described herein may trigger the start of one or more acting nodes when dependencies are met by managing the transfer of data between control nodes or acting nodes or a combination thereof. Similarly, this global management of alignment or start or a combination thereof when dependencies are met is So To advance each quantum program fruit line Command only for Instead, it enables execution on one or more acting nodes. It is possible. Similarly, global alignment management allows the associated scheduler to perform a less complex model of logic or instructions or combination thereof for the execution of each quantum program.

[0119] In one or more cases, one or more embodiments described herein may enable scaling of the execution scale of one or more quantum programs, taking into account increased execution time, improved execution quality, or a combination thereof. Additionally or alternatively, or a combination thereof, by using the subject matter described herein, it may be possible to reduce the cost or complexity, or a combination thereof, of the system used to execute quantum programs in accordance with the subject matter described herein. This is possible at least in one or more other nodes of the system (such as one or more control nodes), and / or across one or more other nodes Considering global time management, in one or more acting nodes of a quantum system Small Quantity of memory, time and / or calculation ability of This may result from use.

[0120] Referring here to Figures 6–8, these figures together illustrate flowcharts of an exemplary non-limiting computer implementation method 600 that facilitates time management of a quantum program at one or more nodes of a system, according to one or more embodiments described herein with respect to a non-limiting system 200. Although the computer implementation method 600 is described in relation to a non-limiting system 200, it will be understood that it may also be applicable to a non-limiting system 100. Repeated descriptions of similar elements or processes or combinations used in each embodiment are omitted for brevity.

[0121] Looking first at 602 in Figure 6, the computer implementation method 600 may include a step in which a system operably coupled to a processor (e.g., processor 206, quantum processor or similar processor or combination thereof) acquires a job request (e.g., a quantum job request) (e.g., via an unrestricted system 200, execution management system 202 or job determination component 208 or combination thereof).

[0122] In 604, the computer implementation method 600 may include a step in which the system determines a quantum program (e.g., a quantum program 209) for at least partially implementing a job request (e.g., a quantum job request) (e.g., via an unrestricted system 200, an execution management system 202, or a job determination component 208 or a combination thereof).

[0123] In 606, the computer implementation method 600 may include a step in which the system compiles a set of execution instructions (e.g., including one or more execution instructions) for running a quantum program (e.g., quantum program 209) on a quantum system (such as a quantum system 201, for example, on one or more qubits 211) (e.g., via an unrestricted system 200, an execution control system 202, or a scheduling component 210 or a combination thereof).

[0124] In 608, the computer implementation method 600 may include a step in which the system partitions execution instructions for one or more nodes (e.g., acting node 203A or acting node 203B or a combination thereof) into one or more individual threads (e.g., threads A and B shown in Figure 3) on one or more nodes (e.g., acting node 203A or acting node 203B or a combination thereof) (e.g., via a non-limiting system 200, execution management system 202, time management component 212 or scheduling component 210 or a combination thereof).

[0125] In 610, the computer implementation method 600 may include a step in which the system identifies one or more scheduling modes of a set of execution instructions (e.g., start point, wait point, or dependency or a combination thereof) (e.g., via a non-limiting system 200, execution management system 202, time management component 212, or scheduling component 210 or a combination thereof).

[0126] In 612, the computer implementation method 600 may include a step in which the system compiles one or more additional execution instructions (for example, via a non-limiting system 200, execution management system 202, time management component 212, or scheduling component 210, or a combination thereof) to switch one or more nodes (for example, acting node 203A or acting node 203B or a combination thereof) to execution states (for example, initial state, stopped state, error state, abort state, active state, waiting state, or terminated state or a combination thereof) corresponding to one or more identified scheduling modes.

[0127] In 614, the computer implementation method 600 may include a step in which the system outputs a set of execution instructions (for example, via a non-limiting system 200, an execution management system 202, or a scheduling component 210, or a combination thereof).

[0128] Referring here to Figure 7, this figure shows an extension of the computer implementation method 600 of Figure 6, specifically an embodiment that can be carried out in the continuation triangle 616 of Figure 6.

[0129] In 702, the computer implementation method 600 may continue from the continuation triangle 616 and may include a step in which the system prepares one or more nodes (e.g., acting node 203A or acting node 203B or a combination thereof) for the execution of a quantum program (e.g., via a non-limiting system 200, execution management system 202, time management component 212 or execution component 216 or a combination thereof). One or more processes included in this preparation step are shown in Figure 8 using the continuation triangle 703.

[0130] In 704, the computer implementation method 600 is such that the system starts at a node (e.g., an acting node 203A or 203B) at a starting count (e.g., 0). ite The system may include a step of setting local counters accessible via a time manager (e.g., a time management component 212) (e.g., via an unrestricted system 200, an execution management system 202, or a combination of the time management component 212).

[0131] In 706, the computer implementation method 600 may include a step in which the system initiates the execution of a quantum program (e.g., quantum program 209) (e.g., via a non-restrictive system 200, execution management system 202, time management component 212, scheduling component 210, quantum system 201, quantum processors 205A, 205B or quantum computing components 207A, 207B or a combination thereof).

[0132] In 708, the computer implementation method 600 may include a step in which the system indicates one or more dynamic mailbox designations (e.g., an empty designation, a loaded designation, a delivered designation, or a read designation for mailbox 530, or a combination thereof) (e.g., via a non-limiting system 200, an execution management system 202, a time management component 212, or an execution component 216, or a combination thereof).

[0133] In 710, the computer implementation method 600 may include a step in which the system monitors one or more mailboxes (e.g., mailbox 530) (e.g., via a non-limiting system 200, execution management system 202, or time management component 212, or a combination thereof).

[0134] In 712, the computer implementation method 600 may include a step in which the system communicates with one or more nodes (e.g., one or more acting nodes 203A or 203B or a combination thereof) (e.g., via a non-limiting system 200, execution management system 202, or time management component 212 or a combination thereof). One or more processes included in this step are shown in Figure 8 using a continuation triangle 713.

[0135] In 714, the computer implementation method 600 may include a step in which the system provides one or more measurements (e.g., quantum measurements of one or more qubits 211) (e.g., via an unrestricted system 200, an analytical component 218, a quantum system 201, a quantum processor 205A, 205B or a quantum computing component 207A, 207B or a combination thereof).

[0136] Referring here to Figure 8, this figure shows an extension of the computer implementation method 600 of Figure 7, specifically an embodiment that can be carried out in the continuation triangle 716 of Figure 7.

[0137] In 802, the computer implementation method 600 may include a step in which the system analyzes one or more measurements (e.g., quantum measurements of one or more qubits 211) (e.g., via an unrestricted system 200, an analysis component 218, a quantum system 201, a quantum processor 205A, 205B or a quantum computing component 207A, 207B or a combination thereof).

[0138] In 804, the computer implementation method 600 may include a step in which the system outputs one or more measurement results (e.g., one or more measurement results 226) (e.g., via an unspecified system 200, an execution management system 202, or an output component 220, or a combination thereof).

[0139] Furthermore, in Figure 8, this figure shows one or more processes following the continuation triangle 703 that may be performed in the preparation stage 702 of Figure 7. It will be understood that connecting arrows are not used to connect the process blocks 812, 814 and 816. This is to further illustrate that any one or all of these processes may be performed in relation to the preparation stage 702.

[0140] In 812, the computer implementation method 600 may include a step in which the system defines one or more possible execution states (e.g., initial state, stopped state, error state, aborted state, active state, waiting state, or terminated state or a combination thereof) of one or more nodes (e.g., acting node 203A or acting node 203B or a combination thereof) (e.g., via a non-limiting system 200, execution management system 202, or scheduling component 210 or a combination thereof).

[0141] In 814, the computer implementation method 600 may include a step in which the system sets one or more counters in one or more nodes (e.g., acting node 203A or acting node 203B or a combination thereof) to a start count (e.g., 0) (e.g., via an unrestricted system 200, execution management system 202 or scheduling component 210 or a combination thereof).

[0142] In 816, the computer implementation method 600 may include a step in which the system generates one or more mailboxes (e.g., mailbox 530) in one or more nodes (e.g., acting node 203A or acting node 203B or a combination thereof) (e.g., via a non-limiting system 200, execution management system 202, scheduling component 210, time management component 212 or execution component 216 or a combination thereof).

[0143] Furthermore, in Figure 8, this figure also shows one or more processes that may be performed after the continuation triangle 713 in step 712 of Figure 7. It will be understood that connecting arrows are not used to connect process blocks 822, 834 and 836. This is to further illustrate that any one or all of these steps may be performed in relation to step 712.

[0144] In 822, the computer implementation method 600 may include a step in which the system transfers one or more data (e.g., one or more measurements, instructions or other data or combinations thereof) between one or more nodes (e.g., one or more acting nodes 203A or 203B or a combination thereof) and a time management component (e.g., a time management component 212) (e.g., via a non-limiting system 200, execution management system 202, or time management component 212 or a combination thereof). For example, one or more data transfers may be performed, for example, by provisioning one or more measurements, instructions or other data or combinations thereof in order to satisfy or fulfill one or more dependencies or to perform a combination thereof.

[0145] In 824, the computer implementation method 600 may include a step in which the system triggers one or more execution states (e.g., initial state, stopped state, error state, abort state, active state, waiting state, or terminated state or a combination thereof) of one or more nodes (e.g., acting node 203A or acting node 203B or a combination thereof) (e.g., via a non-limiting system 200 or execution management system 202 or a combination thereof). This triggering step may be provided at least in part to deal with one or more scheduling modes (e.g., start point, waiting point, or dependency or a combination thereof).

[0146] In 826, the computer implementation method 600 may include a step in which the system advances one or more counters in one or more nodes (e.g., one or more acting nodes 203A or 203B or a combination thereof) (e.g., via a non-limiting system 200, execution management system 202, or time management component 212 or a combination thereof). This advancement step may be fulfilled via one or more data transfers, or via one or more other communications, data pulses or similar, or a combination thereof. For example, the time management component (e.g., time management component 212) another The time of the node (for example, the sending node that sends the data transfer) Regarding the communication in question A counter at a node may be advanced based on a combination of the determined actual propagation time. The determined actual propagation time may be based on one or more physical system characteristics, which may be those of an actual system or a hypothetical system. The physical system characteristics may be unique (for example, cable lengths may differ between physical components) and may be determined by the time management component 212 or the scheduling component 210 or a combination thereof during execution instruction compilation or runtime or a combination thereof. The propagation time may include a simulated time from the transmitting node to the receiving node based on the actual propagation time from the transmitting node, which is intercepted by the time management component, analyzed by the time management component, and then forwarded to the receiving node. Alternatively, or additionally, or a combination thereof, a node may advance its counter for the execution of one or more communication-independent quantum program instructions.

[0147] For the sake of brevity, the computer implementation methods provided herein are presented or described as a series of actions or combinations thereof. It should be understood and recognized that the innovations of the subject matter are not limited by the actions, the order of actions, or combinations thereof presented. For example, actions may be performed one or more times, simultaneously, or in combination with other actions not presented or described herein. Furthermore, not all presented actions can be used to implement the computer implementation methods of the subject matter described. In addition, those skilled in the art will understand and recognize that computer implementation methods may alternatively be represented as a series of interrelated states via state diagrams or events. Furthermore, it should be further recognized that the computer implementation methods described below and throughout this specification may be stored in a product to facilitate the transfer and transmission of such computer implementation methods to a computer. Where used herein, the term "product" is intended to encompass computer programs accessible from any computer-readable device or storage medium.

[0148] With reference here to the combination of Figures 2 to 8, and further to non-limiting systems 200 and execution management systems 202, one or more embodiments described herein may provide a novel approach brought about by previously unintegrated time management of instruction execution at one or more nodes of the system.

[0149] A practical application of the execution management system 202 or the less restrictive system 200 or a combination thereof is that it may be implemented in one or more domains to enable scaled program execution, such as the execution of quantum programs. Other non-quantum embodiments may also benefit from these techniques, such as modeling a system with multiple nearly independently executing nodes whose outputs are aligned to a scale stricter than the instruction level (e.g., multiple cell phones that transmit and receive analog waveforms, each executing application instructions in coordinated behavior at different points in the application). In yet another example, one or more embodiments described herein may control the execution of one or more execution instructions to perform one or more operations on one or more real-world qubits using real-world classical or quantum devices or a combination thereof.

[0150] Furthermore, the execution management system 202 or a less restrictive system 200 or a combination thereof can facilitate one or more technical improvements to a computer or computer system or a combination thereof that operates the execution management system 202, or includes the execution management system 202, or a combination thereof. For example, the execution management system 202 or a less restrictive system 200 or a combination thereof can provide time management control, and therefore instruction execution control, at a higher granularity than that managed locally on one or more nodes. Thus, execution on one or more acting nodes can be improved. This improvement includes faster execution, execution with less complexity, or a combination thereof. Less complex execution can be facilitated, at least by control by a time management component 212 that facilitates triggering on one or more nodes, compared to the current approach that utilizes complex, higher-granular scheduling or provisioning or a combination thereof of one or more triggers included in one or more instructions provided to one or more nodes.

[0151] As a further example, one or more systems, methods, or computer program products or combinations thereof described herein can advance a quantum program by executing one or more streams of one or more instructions to one or more different nodes which may be operated as separate threads, while also providing an accurate modeling of TODs or timers or combinations thereof to enable the accurate execution or alignment or combination of quantum tasks. By compiling one or more execution modes via the scheduling component 210, the time management component 212 may be able to simulate one or more time cycles, time delays or similar, or combinations thereof, so that each quantum program can be executed with respect to accurate clock cycle management and at high speed or high efficiency or combination thereof, without calling all nodes in each clock cycle, for example. One or more effects or technical improvements or combinations thereof provided as a result of such simulations may include one or more nodes being able to enter a standby state, for example in a sleep mode that uses less computing power, a counter on a node being able to shut down while the node is in a standby state, or one or more nodes being lost synchronization or combination thereof in relation to one or more other nodes, or in relation to the time management component 212, or combination thereof.

[0152] The execution management system 202 or the non-limiting system 200 or a combination thereof can provide additional or alternative technical improvements or combinations thereof to one or more systems using the execution management system 202. One such technical improvement may include running quantum programs faster or more efficiently, or a combination thereof, using less memory, time, or computing power or a combination thereof at the hardware level or software level or a combination thereof than existing management or control approaches or combination thereof. These technical improvements may be partially realized by the use of global control and time management facilitated by the time management component 212, the execution management system 202 or the non-limiting system 200 or a combination thereof.

[0153] Additionally, or alternatively, or in combination thereof, another such technical improvement may be the use or utilization of reduced memory, time, or computing power, or a combination thereof, compared to existing node management approaches, in relation to the execution of quantum programs. In practice, the benefit of one or more operations performed by the execution management system 202 may be an extended (e.g., improved or optimized, or a combination thereof) execution of the quantum program.

[0154] Accordingly, the subject matter described may result in improved execution speed of one or more quantum jobs, resulting from the use of less memory, less time, or less computing power, or a combination thereof, by using the time management component 212, scheduling component 210, execution component 216, or execution management system 202 or a combination thereof. For example, in relation to a hybrid classical / quantum unrestricted system 200, if there may be a high demand for the execution of a large number of quantum programs using the quantum system 201, the use of the unrestricted system 200 (including, for example, the time management component 212, scheduling component 210, execution component 216, or execution management system 202 or a combination thereof) may facilitate the scaled execution of quantum programs. In practice, the use of the execution management system 202 itself may be extensible, for example, if the execution management system 202 can execute at least one quantum program management or node management or a combination thereof at least partially in parallel with another quantum program management or node management or a combination thereof.

[0155] While one or more of the above advantages have been described with reference to Figures 2 to 8 and the non-limiting system 200, it will be understood that one or more of the above advantages may also be applicable to the non-limiting system 100 described in relation to Figure 1.

[0156] With respect to Figures 1 to 8, the following description applies to one or more non-limiting systems 100 or 200 or combinations thereof, or to extensions or modifications thereof or combinations thereof, or to one or more embodiments described above. A system or device or combination thereof, with respect to the interaction between one or more components, is described herein (or further described herein, or a combination thereof). It should be understood that such a system or device or combination thereof may include one or more of those specified components or subcomponents, specified components or subcomponents or combinations thereof, additional components or combinations thereof. Subcomponents may be implemented not within a parent component, but as components communicatively coupled to other components. One or more components or subcomponents or combinations thereof may be combined into a single component that provides aggregated functionality. For the sake of brevity, a component may interact with one or more other components that are not specifically described herein but are known to those skilled in the art.

[0157] It should be understood that one or more embodiments described herein may be tied, either indirectly or closely, or in combination with computer technology, but cannot be implemented outside of a hybrid classical / quantum computing environment. For example, one or more processes performed by one or more embodiments described herein can provide the execution of quantum programs more efficiently and even more pragmatically than current systems or technologies or combinations thereof. Systems, computer implementations, or computer program products or combinations thereof that facilitate the execution of these processes are highly useful in the field of quantum computing, but cannot be implemented equally pragmatically in a reasonable manner outside of a computing environment.

[0158] Furthermore, it should be understood that one or more embodiments described herein may, using hardware, software, or a combination thereof, solve problems that are inherently highly technical and cannot be performed as a set of mental activities by humans, rather than abstractly (for example, relating to digital-to-analog conversion or binary retrieval of multiple data, or a combination thereof). For example, a human being, or even thousands of humans, cannot efficiently, accurately, effectively, or computationally perform digital-to-analog conversion, binary retrieval of multiple data, or a combination thereof, in the time that one or more embodiments described herein may facilitate. And neither the human mind nor a human being with a pen and paper will electronically compute digital-to-analog conversion, binary retrieval of multiple data, or a combination thereof, as performed by one or more embodiments described herein.

[0159] In one or more embodiments, one or more of the processes described herein may be performed by one or more dedicated computers (e.g., dedicated processing units, dedicated classical computers, dedicated quantum computers, dedicated hybrid classical / quantum systems, other types of dedicated computers, or a combination thereof) to perform defined tasks relating to one or more of the technologies described above. One or more embodiments, components thereof, or combinations thereof described herein may be used to solve new problems arising through the development of the technologies mentioned above, quantum computing systems, cloud computing systems, computer architectures, or the use of other technologies or combinations thereof.

[0160] One or more embodiments described herein may be fully operational for performing one or more other functions (e.g., fully powered on, fully performed, another function, or a combination thereof), while also performing one or more operations described herein.

[0161] Next, with reference to Figures 9 to 11, Figures 9 to 11 are described in detail to provide additional context for one or more embodiments described in Figures 1 to 8 herein.

[0162] Figure 9 and the following description are intended to provide a brief and general description of a suitable operating environment 900 in which one or more embodiments described herein may be implemented, as shown in Figures 1 to 8. For example, one or more components, other aspects of the embodiments described herein, or combinations thereof may be implemented in or in connection with the operating environment 900, for example, so as to be accessible therethrough. Furthermore, although one or more embodiments have been described above in the general context of computer executable instructions that can be run on one or more computers, those skilled in the art will recognize that one or more embodiments may also be implemented in combination with other program modules, as a combination of hardware and software, or as such.

[0163] Generally, a program module includes routines, programs, components, data structures, or similar, or combinations thereof, that implement or combine specific abstract data types to perform a particular task. Furthermore, those skilled in the art will understand that the methods of the invention can be implemented using single-processor or multi-processor computer systems, minicomputers, mainframe computers, Internet of Things (IoT) devices, distributed computing systems, and other computer system configurations, including personal computers, handheld computing devices, microprocessor-based or programmable consumer electronics, or similar, or combinations thereof (each of which may be operably coupled to one or more associated devices).

[0164] Computing devices typically include a variety of media, which may include computer-readable storage media, machine-readable storage media, communication media, or combinations thereof. These two terms are used herein to distinguish them as follows: Computer-readable storage media, or machine-readable storage media, may be any available storage media accessible by a computer, and may include both volatile and non-volatile media, removable and non-removable media. For example, but not limited to, computer-readable storage media, machine-readable storage media, or combinations thereof may be implemented in relation to any method or technique for storing information, such as computer-readable, machine-readable, or combinations thereof instructions, program modules, structured data, unstructured data, or combinations thereof.

[0165] Computer-readable storage media may include, but are not limited to, random access memory (RAM), read-only memory (ROM), electro-erasable programmable read-only memory (EEPROM), flash memory, or other memory technologies, compact disk read-only memory (CD-ROM), digital versatile disc (DVD), Blu-ray disc (BD), other optical disc storage, or combinations thereof, magnetic cassettes, magnetic tapes, magnetic disk storage, other magnetic storage devices, or combinations thereof, solid-state drives, or other solid-state storage devices, or other tangible or non-temporary, or combinations thereof, media, or combinations thereof that can be used to store desired information. In this regard, the terms “tangible” or “non-temporary” as used herein in relation to storage, memory, or computer-readable media are understood to exclude, as modifiers, temporary signals themselves that propagate only, and do not waive any rights to all standard storage, memory, computer-readable media, or combinations thereof that are not temporary signals themselves that propagate only.

[0166] Computer-readable storage media can be accessed by one or more local or remote computing devices, for example, through access requests, queries, other data retrieval protocols, or a combination thereof, for various operations on the information stored by the media.

[0167] Communication media typically include any information distribution or transport medium that embodies computer-readable instructions, data structures, program modules, or other structured or unstructured data in a modulated data signal, such as a carrier wave or other transport mechanism. The term “modulated data signal” or signal refers to a signal that has been modified in such a way that it has one or more of its characteristic sets, or that it encodes information in one or more signals. For example, but not limited to, communication media may include wired media, such as wired networks, direct wired connections, wireless media (such as sound, radio frequencies, infrared, other wireless media, or a combination thereof), or a combination thereof.

[0168] Referring again to Figure 9, an exemplary operating environment 900 for implementing one or more embodiments of the embodiments described herein may include a computer 902, which includes a processing unit 906, system memory 904, system bus 908, or a combination thereof. It will be understood that one or more embodiments of the system memory 904 or the processing unit 906 may be applied to memory 104 or 204 or a combination thereof or processor 106 or 206 or a combination thereof of a non-limiting system 100 or 200 or a combination thereof. It will also be understood that the system memory 904 may be implemented in combination with memory 104 or 204 or a combination thereof, or as an alternative to them, or in a combination thereof. Similarly, it will be understood that the processing unit 906 may be implemented in combination with processor 106 or 206 or a combination thereof, or as an alternative to them, or in a combination thereof.

[0169] Memory 904 may store one or more computer-readable, machine-readable, or combination thereof, writable, executable, or combination thereof components, instructions, or combination thereof, which, when executed by processing unit 906 (e.g., classical processor, quantum processor, and similar processor, or combination thereof), facilitate the execution of operations defined by executable components, instructions, or combination thereof. For example, memory 904 may store computer or machine-readable, writable, or executable or combination thereof components, instructions, or combination thereof, which, when executed by processing unit 906, facilitate the execution of one or more functions described herein in relation to a non-limiting system 100 or 200 or combination thereof, or execution control system 102 or 200 or combination thereof 202, with or without reference to one or more figures of one or more embodiments.

[0170] Memory 904 may use one or more memory architectures and may include volatile memory (e.g., random access memory (RAM), static RAM (SRAM), dynamic RAM (DRAM), or the same, or a combination thereof), non-volatile memory (e.g., read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), or the same, or a combination thereof), or a combination thereof.

[0171] The processing unit 906 may include one or more types of processors, electronic circuits (e.g., classical processors, quantum processors, similar processors, or combinations thereof) or combinations thereof that can implement one or more computer-readable, machine-readable, or combination thereof, writable, executable, or combination thereof components, instructions, or combinations thereof that can be stored in the memory 904. For example, the processing unit 906 may perform one or more operations that can be specified by computer-readable, machine-readable, or combination thereof, writable, executable, or combination thereof components, instructions, or combinations thereof, including but not limited to logic, control, input / output (I / O), arithmetic, or combination thereof. In one or more embodiments, the processing unit 906 may be one or more commercially available processors. In one or more embodiments, the processing unit 906 may include one or more central processing units, multicore processors, microprocessors, dual microprocessors, microcontrollers, systems on a chip (SOC), array processors, vector processors, quantum processors, other types of processors, or combinations thereof. An example of the processing unit 906 may be used to implement one or more embodiments described herein.

[0172] The system bus 908 may connect system components, including but not limited to system memory 904, to the processing unit 906. The system bus 908 may include one or more types of bus structures that can further interconnect (with or without a memory controller) to a memory bus, peripheral bus, local bus, or a combination thereof, using one or more of various commercially available bus architectures. The system memory 904 may include ROM 910, RAM 912, or a combination thereof. The basic input / output system (BIOS) may be stored in non-volatile memory such as ROM, erasable programmable read-only memory (EPROM), EEPROM, or a combination thereof. The BIOS includes basic routines that help transfer information between elements within the computer 902, such as during startup. RAM 912 may include high-speed RAM, such as static RAM for caching data.

[0173] Computer 902 may include an internal hard disk drive (HDD) 914 (e.g., EIDE, SATA), one or more external storage devices 916 (e.g., magnetic floppy disk drive (FDD), memory stick, or flash drive reader, memory card reader, or similar, or a combination thereof), a drive 920 (e.g., a solid-state drive or optical disk drive) that can read from or write to disks 922 such as CD-ROM disks, DVDs, BDs, or similar, or a combination thereof, or a combination thereof. If a solid-state drive is involved, either additionally or alternatively, or in a combination thereof, disks 922 may not be included unless they are separate. Although the internal HDD 914 is shown as being located within computer 902, the internal HDD 914 may also be configured for external use in a suitable chassis (not shown). Additionally, although not shown in operating environment 900, a solid-state drive (SSD) may be used in addition to or instead of the HDD 914. The HDD 914, external storage device 916, and drive 920 may be connected to the system bus 908, external storage interface 926, and drive interface 928, respectively, via the HDD interface 924. The HDD interface 924 for external drive implementation may include at least one or both of the Universal Serial Bus (USB) and the Institute of Electrical and Electronics Engineers (IEEE) 1394 interface technology. Other external drive connection technologies are within the scope of the embodiments described herein.

[0174] Drives and their associated computer-readable storage media provide non-volatile storage such as data, data structures, and computer-executable instructions. For computer 902, drives and storage media are suitable for storing any data in a suitable digital format. While the above descriptions of computer-readable storage media refer to each type of storage device, those skilled in the art will understand that other types of computer-readable storage media, currently existing or to be developed in the future, may also be used in the exemplary operating environment, and that any such storage media may contain computer-executable instructions for performing the methods described herein, or a combination thereof.

[0175] Numerous program modules may be stored in a drive and RAM 912 containing an operating system 930, one or more applications 932, other program modules 934, program data 936, or a combination thereof. All or part of the operating system, applications, modules, data, or combination thereof may also be cached in RAM 912. The systems, methods, or combinations thereof described herein may be implemented using one or more commercially available operating systems, combinations of operating systems, or combinations thereof.

[0176] Computer 902 may optionally include emulation techniques. For example, a hypervisor (not shown) or other intermediates may emulate a hardware environment for operating system 930, and the emulated hardware may optionally differ from the hardware shown in Figure 9. In relevant embodiments, operating system 930 may include one virtual machine (VM) from a plurality of VMs hosted on computer 902. Furthermore, operating system 930 may provide a Java® runtime environment or a runtime environment such as the .NET framework for application 932. The runtime environment is a consistent execution environment that can enable application 932 to run on any operating system that includes the runtime environment. Similarly, operating system 930 may support containers, and application 932 may be in the form of a container. A container is a lightweight, standalone, executable package of software that includes, for example, code, runtime, system tools, system libraries, configuration for the application, or a combination thereof.

[0177] Furthermore, the computer 902 may support security modules such as a Trusted Processing Module (TPM). For example, a TPM allows a boot component to hash the next boot component in time and wait for a match of the result against a secure value before loading the next boot component. This process can occur at any layer of the computer 902's code execution stack, for example, at the application execution level, the operating system (OS) kernel level, or a combination thereof, thereby enabling security at any level of code execution.

[0178] An entity may input, transmit, or perform combinations thereof commands, information, or combinations thereof to the computer 902 through one or more wired / wireless input devices, such as a keyboard 938, a touchscreen 940, a mouse 942, or a combination thereof. Other input devices (not shown) may include microphones, infrared (IR) remote controls, radio frequency (RF) remote controls, other remote controls, or combinations thereof, joysticks, virtual reality controllers, virtual reality headsets, or combinations thereof, gamepads, stylus pens, image input devices such as cameras, gesture sensor input devices, visual motion sensor input devices, emotion or facial expression detection devices, biometric input devices such as fingerprint scanners, iris scanners, or combinations thereof, or similar, or combinations thereof. These, and other input devices, may be connected to the processing unit 906 via an input device interface 944 which may be coupled to the system bus 908, but may also be connected to other interfaces such as parallel ports, IEEE 1394 serial ports, game ports, USB ports, IR interfaces, BLUETOOTH® interfaces, or similar, or combinations thereof.

[0179] The monitor 946, or other types of display devices, may be connected to the system bus 908 via an interface such as a video adapter 948, either alternatively, additionally, or in combination thereof. In addition to the monitor 946, the computer typically includes other peripheral output devices (not shown), such as speakers, printers, or similar devices, or a combination thereof.

[0180] Computer 902 may operate in a network environment using a logical connection via wired communication, wireless communication, or a combination thereof to one or more remote computers, such as remote computer 950. The remote computer 950 may be a workstation, server computer, router, personal computer, portable computer, microprocessor-based entertainment equipment, peer device, other common network node, or a combination thereof, and typically includes many or all of the elements described in relation to computer 902. However, for the sake of brevity, only the memory storage device 952 is shown. Additionally or alternatively, or in combination thereof, computer 902 may be coupled (e.g., communicatively, electrically, operationally, optically, or similarly, or a combination thereof) to one or more external systems, sources, devices, or combinations thereof (e.g., classical computing devices, quantum computing devices, or combinations thereof, communication devices, and similar devices, or combinations thereof) via data cables (e.g., High-Definition Multimedia Interface (HDMI®), Standards (RS) 232, Ethernet® cable, or similar, or a combination thereof)

[0181] In one or more embodiments, the network may include, but is not limited to, one or more wired networks, wireless networks, or a combination thereof, including, but not limited to, a cellular network, a wide area network (WAN) (e.g., the Internet), or a local area network (LAN). For example, one or more embodiments described herein, but not limited to, Wireless Fidelity (Wi-Fi®), Global Systems for Mobile Communications (GSM®), Universal Mobile Communications System (UMTS), Worldwide Interoperability for Microwave Access (WiMAX®), Enhanced General-Purpose Packet Radio Services (Enhanced GPRS), Third Generation Partnership Project (3GPP®) Long-Term Evolution (LTE), Third Generation Partnership Project 2 (3GPP2) Ultra Mobile Broadband (UMB), High-Speed ​​Packet Access (HSPA), Zigbee It may communicate with one or more external system sources, devices, or combinations thereof, such as computing devices (and vice versa), using virtually any desired wired or wireless technology, including BLUETOOTH® and other 802.XX wireless technologies or legacy telecommunications technologies or combinations thereof, BLUETOOTH®, Session Initiation Protocol (SIP), ZIGBEE®, RF4CE protocol, Wireless HART protocol, 6LoWPAN (IPv6 on Low Power Wireless Area Network), Z-Wave®, ANT, ultra-wideband (UWB) standard protocols, other proprietary or non-proprietary communication protocols or combinations thereof.In related examples, one or more embodiments described herein may include hardware (e.g., a central processing unit (CPU), transceiver, decoder, quantum hardware, quantum processor, or the like, or a combination thereof), software (e.g., a set of threads, a set of processes, running software, a quantum pulse schedule, a quantum circuit, a quantum gate, or the like, or a combination thereof), and hardware or software or a combination thereof that facilitates the communication of information between one or more embodiments described herein and external systems, sources, devices, or a combination thereof (e.g., a computing device, a communication device, or the like, or a combination thereof).

[0182] The logical connections shown include wired / wireless connections to local area networks (LANs) 954, larger networks such as wide area networks (WANs) 956, or a combination thereof. LAN and WAN networking environments can be common in offices and businesses and facilitate enterprise-scale computer networks such as intranets, all of which can be connected to global communication networks, such as the Internet.

[0183] When used in a LAN networking environment, computer 902 may be connected to local network 954 via a wired, wireless, or a combination thereof communication network interface or adapter 958. Adapter 958 can facilitate wired, wireless, or a combination thereof communication to LAN 954. LAN 954 may also include a wireless access point (AP) placed on it to communicate with adapter 958 in wireless mode.

[0184] When used in a WAN networking environment, computer 902 may include a modem 960 and may be connected to a communication server on WAN 956 via other means for establishing communication via WAN 956, for example, the Internet, or a combination thereof. The modem 960, which may be internal, external, or a combination thereof, and wired, wireless, or a combination thereof, may be connected to the system bus 908 via the input device interface 944. In a network environment, program modules shown in relation to computer 902 or a part thereof may be stored in the remote memory storage device 952. The network connections shown are illustrative only, and it will be understood that one or more other means for establishing communication links between computers may be used.

[0185] When used in either a LAN or WAN networking environment, computer 902 may, in addition to the external storage device 916 described above, or in combination thereof, access a cloud storage system or other network-based storage system, such as a network virtual machine that provides one or more aspects of information storage, processing, or a combination thereof. Generally, the connection between computer 902 and the cloud storage system may be established via LAN 954 or WAN 956, respectively, for example, by an adapter 958 or modem 960. When computer 902 is connected to the relevant cloud storage system, the external storage interface 926 may manage the storage provided by the cloud storage system, like other types of external storage, with the assistance of the adapter 958, modem 960, or a combination thereof. For example, the external storage interface 926 may be configured to provide access to the cloud storage source as if the source were physically connected to computer 902.

[0186] Computer 902 may be capable of communicating with any wireless device, entity, or combination thereof that is configured to operate in wireless communication, such as any equipment or location associated with a printer, scanner, desktop computer, portable computer, or combination thereof, portable data assistant, communications satellite, telephone, or wireless discoverable tag (e.g., kiosk, newsstand, store shelf, or similar, or combination thereof), or combination thereof. This may include Wireless Fidelity (Wi-Fi) and Bluetooth® wireless technologies. Thus, the communication may be a predefined structure, similar to conventional networks, or it may simply be ad-hoc communication between at least two devices.

[0187] The embodiments described herein may be implemented in a distributed computing environment (e.g., a cloud computing environment) in which specific tasks are performed by remote processing devices linked through a communication network, such as those described below with respect to Figure 10. In a distributed computing environment, program modules may reside in local, remote, or a combination thereof memory storage devices.

[0188] For example, one or more embodiments, one or more components thereof, or combinations thereof described herein may perform one or more operations by one or more embodiments described herein using one or more computing resources of the cloud computing environment 1050 described with reference to one or more function abstraction layers (e.g., quantum software, or the like, or combination thereof) described below with reference to Figure 10, or below with reference to Figure 11. For example, one or more of the cloud computing environment 1050, function abstraction layers 1160, 1170, 1180, 1190, or combinations thereof, or combinations thereof may include one or more classical computing devices (e.g., classical computers, classical processors, virtual machines, servers, or the like, or combinations thereof), quantum hardware, quantum software (e.g., quantum computing devices, quantum computers, quantum processors, quantum circuit simulation software, superconducting circuits, or the like, or combinations thereof), or combinations thereof, which may be used by one or more embodiments, components thereof, or combinations thereof described herein to perform one or more operations by one or more embodiments described herein. For example, one or more embodiments, components, or combinations thereof described herein may use one or more classical computing resources, quantum computing resources, or combinations thereof to perform one or more classical mathematical functions, quantum mathematical functions, or combinations thereof, calculations, equations, or combinations thereof, computing, processing scripts, or combinations thereof, algorithms, models (e.g., artificial intelligence (AI) models, machine learning (ML) models, similar models, or combinations thereof), other operations by one or more embodiments described herein, or combinations thereof.

[0189] While one or more embodiments described herein include a detailed description of cloud computing, it should be understood that implementations of the teachings described herein are not limited to cloud computing environments. Rather, one or more embodiments described herein can be implemented in conjunction with any other type of computing environment currently known or to be developed in the future.

[0190] Cloud computing is a service delivery model that enables convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, network bandwidth, servers, processing, memory, storage, applications, virtual machines, and services) that can be rapidly provisioned and deployed with minimal management effort or interaction with service providers. This cloud model may include at least five characteristics, at least three service models, and at least four deployment models.

[0191] The features are as follows:

[0192] On-demand self-service: Cloud consumers can unilaterally provision computing power, such as server time and network storage, automatically as needed, without requiring human interaction with the service provider.

[0193] Broad network access: The diverse capabilities are available over the network and accessible through standard mechanisms, facilitating use by heterogeneous thin-client or thick-client platforms (e.g., mobile phones, laptops, and PDAs).

[0194] Resource Pool: A provider's computing resources are pooled and served to multiple consumers using a multi-tenant model, with different physical and virtual resources dynamically allocated and reallocated as needed. Generally, consumers have no control or knowledge of the exact location of the resources provided, but there is a sense of location independence in that they may be able to specify location at a higher level of abstraction (e.g., country, state, or data center, or a combination thereof).

[0195] Rapid elasticity: Capabilities can be provisioned rapidly and elastically for rapid scale-out, and quickly released for rapid scale-in, automatically in one or more cases. To consumers, the capacity available for provisioning may seem unlimited and can be purchased in any quantity at any time.

[0196] Measured Services: Cloud systems automatically control and optimize resource usage by leveraging measurement capabilities at one or more levels of abstraction appropriate to the type of service (e.g., storage, processing, bandwidth, or active user accounts, or a combination thereof). Resource usage may be monitored, controlled, and reported, or a combination thereof, providing transparency to both the providers and consumers of the services used.

[0197] The service model is as follows:

[0198] Software as a Service (SaaS): The capability offered to consumers is the use of a provider's applications running on cloud infrastructure. These applications are accessible from various client devices through thin client interfaces such as web browsers (e.g., web-based email). Consumers do not manage or control the underlying cloud infrastructure, including networks, servers, operating systems, storage, or individual application capabilities or combinations thereof, with the exception of limited, user-specific application configuration settings.

[0199] Platform as a Service (PaaS): The capability offered to consumers is the ability to deploy applications they have created or acquired, written using programming languages ​​and tools supported by the provider, onto a cloud infrastructure. Consumers do not manage or control the underlying cloud infrastructure, including networks, servers, operating systems, or storage, or any combination thereof, but they have control over the deployed applications and, in some cases, the applications hosting the environment configuration.

[0200] Infrastructure as a Service (IaaS): The ability offered to consumers is the provisioning of processing, storage, networking, and other fundamental computing resources, or combinations thereof, that enable consumers to deploy and run any software, including operating systems and applications. Consumers do not manage or control the underlying cloud infrastructure, but they have limited control over the operating system, storage, deployed applications, and, in some cases, selected networking components (e.g., host firewalls), or combinations thereof.

[0201] The deployment model is as follows:

[0202] Private Cloud: Cloud infrastructure is operated exclusively for a specific organization. It may be managed by the organization or a third party and may reside on-premises or off-premises.

[0203] Community Cloud: A cloud infrastructure is shared by several organizations to support a specific community that shares common interests (e.g., mission, security requirements, policies, compliance considerations, or a combination thereof). It may be managed by the organization or a third party and may reside on-premises or off-premises.

[0204] Public cloud: Cloud infrastructure is made available to the general public or large industry groups and is owned by organizations that sell cloud services.

[0205] Hybrid Cloud: Cloud infrastructure is a composite of two or more clouds (private, community, or public) that remain separate entities but are bound together by standardization or proprietary technologies (e.g., cloud bursting for load balancing between clouds) that enable data and application portability.

[0206] Cloud computing environments are services that prioritize statelessness, low coupling, modularity, semantic interoperability, or a combination of these. At the core of cloud computing lies an infrastructure that includes a network of interconnected nodes.

[0207] Furthermore, an unspecified system 100 or 200 or a combination thereof, or an exemplary operating environment 900, or a combination thereof, may be associated with, included in, or a combination thereof with data analysis systems, data processing systems, graph analysis systems, graph processing systems, big data systems, social network systems, speech recognition systems, image recognition systems, graphical model systems, bioinformatics systems, data compression systems, artificial intelligence systems, authentication systems, pattern recognition systems, medical systems, health monitoring systems, network systems, computer network systems, communication systems, router systems, server systems, high-availability server systems (e.g., long-distance communication server systems), web server systems, file server systems, data server systems, disk array systems, powered insertion board systems, cloud-based systems, or similar systems, or a combination thereof. Accordingly, an unspecified system 100 or 200 or a combination thereof, or an exemplary operating environment 900, or a combination thereof, may be used with hardware or software or a combination thereof to solve problems that are inherently highly technical, not abstract, or a combination thereof, and that cannot be performed as a set of mental activities by humans.

[0208] Referring here to the details of one or more embodiments shown in Figure 10, an exemplary cloud computing environment 1050 is shown. As shown, the cloud computing environment 1050 includes one or more cloud computing nodes 1010 to which local computing devices used by cloud consumers can communicate, such as a personal digital assistant (PDA) or mobile phone 1054A, a desktop computer 1054B, a laptop computer 1054C, an automotive computer system 1054N, or a combination thereof. Not shown in Figure 10, the cloud computing nodes 1010 may further include a quantum platform (e.g., a quantum computer, quantum hardware, quantum software, or similar, or a combination thereof) to which local computing devices used by cloud consumers can communicate. The cloud computing nodes 1010 can communicate with each other. The nodes may be physically or virtually grouped (not shown) in one or more networks, such as a private cloud, community cloud, public cloud, or hybrid cloud, or a combination thereof, as described above. This enables the cloud computing environment 1050 to provide infrastructure as a service, platform as a service, or software as a service, or a combination thereof, without requiring cloud consumers to maintain resources on their local computing devices. The types of computing devices 1054A-N shown in Figure 10 are for illustrative purposes only, and it should be understood that the cloud computing node 1010 and the cloud computing environment 1050 can communicate with any type of computerized device via any type of network, network addressable connection, or a combination thereof (e.g., using a web browser).

[0209] Referring here to the details of one or more embodiments shown in Figure 11, a set of function abstraction layers 1100 is shown, such as those provided by the cloud computing environment 1050 (Figure 10). One or more embodiments described herein may relate to (for example, access through) one or more function abstraction layers described below with reference to Figure 11 (e.g., hardware and software layer 1160, virtualization layer 1170, management layer 1180, workload layer 1190, or a combination thereof). It should be understood in advance that the components, layers, functions, or combinations thereof shown in Figure 11 are for illustrative purposes only, and the embodiments described herein are not limited thereto. As shown, the following layers, corresponding functions, or combinations thereof are provided:

[0210] The hardware and software layer 1160 may include hardware and software components. Examples of hardware components include a mainframe 1161, a RISC (Reduced Instruction Set Computer) architecture-based server 1162, a server 1163, a blade server 1164, a storage device 1165, a network or networking component 1166, or a combination thereof. In one or more embodiments, the software components may include network application server software 1167, quantum platform routing software 1168, quantum software (not shown in Figure 11), or a combination thereof.

[0211] The virtualization layer 1170 may provide an abstraction layer. From the abstraction layer, examples of virtual entities may be provided, namely, a virtual server 1171, virtual storage 1172, a virtual network 1173 including a virtual private network, a virtual application, an operating system 1174, or a combination thereof, a virtual client 1175, or a combination thereof.

[0212] In one example, the management layer 1180 may provide the functions described below. Resource provisioning 1181 may provide dynamic procurement of computing resources and other resources that can be used to perform tasks within the cloud computing environment. Measurement and pricing 1182 may provide cost tracking as resources are used within the cloud computing environment, billing for the consumption of these resources, invoicing, or a combination thereof. In one example, these resources may include one or more application software licenses. Security may provide identity verification for cloud consumers, tasks, or a combination thereof, and protection for data, other resources, or a combination thereof. User (or entity) portal 1183 may provide access to the cloud computing environment for consumers and system administrators. Service level management 1184 may provide allocation, management, or a combination thereof of cloud computing resources to ensure that required service levels are met. Service level agreement (SLA) planning and achievement 1185 may provide proactive coordination and procurement of cloud computing resources where future requirements are anticipated in accordance with SLAs.

[0213] The workload layer 1190 may provide examples of the functionality that can be utilized in a cloud computing environment. Non-exclusive examples of workloads and functions that may be provided from this layer include mapping and navigation 1191, software development and lifecycle management 1192, virtual classroom education delivery 1193, data analysis processing 1194, transaction processing 1195, application transformation software 1196, or a combination thereof.

[0214] The embodiments described herein may relate to one or more systems, methods, apparatus, computer program products, or combinations thereof at any possible level of technical detail of integration. A computer program product may include a computer-readable storage medium (or more media) having computer-readable program instructions for causing a processor to execute one or more embodiments of the embodiments described herein. The computer-readable storage medium may be a tangible device capable of holding and storing instructions for use by an instruction execution device. The computer-readable storage medium may not be limited to, for example, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination thereof. A non-exhaustive list of more specific examples of computer-readable storage media may also include portable computer diskettes, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), static random access memory (SRAM), portable compact disk read-only memory (CD-ROM), digital multipurpose disks (DVDs), memory sticks, floppy disks, mechanically encoded devices such as punch cards or grooved structures on which instructions are recorded, or any suitable combination thereof. Computer-readable storage media as used herein shall not be interpreted as transient signals themselves, such as electromagnetic waves propagating through waveguides or other transmission media (e.g., optical pulses passing through optical fiber cables) or combinations thereof, or electrical signals or combinations thereof transmitted through wiring.

[0215] The computer-readable program instructions described herein are those that can be downloaded from a computer-readable storage medium to each computing / processing device, or to an external computer or external storage device, or a combination thereof, via a network such as the Internet, a local area network, a wide area network, or a wireless network or a combination thereof. The network may include copper transmission cables, optical transmission fibers, wireless transmission, routers, firewalls, switches, gateway computers, or edge servers or a combination thereof. The network adapter card or network interface of each computing / processing device receives the computer-readable program instructions from the network and transfers those computer-readable program instructions to a computer-readable storage medium within each computing / processing device for storage. Computer-readable program instructions for performing the operations of one or more embodiments described herein may be assembler instructions, instruction set architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, state setting data, configuration data for integrated circuits, source code or object code or a combination thereof, or a combination thereof, written in any combination of one or more programming languages, including object-oriented programming languages ​​such as Smalltalk®, C++, or similar, the “C” programming language, similar programming languages, or combinations thereof, or procedural programming languages. Computer-readable program instructions may be executed as a whole on a computer, partially on a computer, as a standalone software package, partially on a computer, partially on a remote computer, or a combination thereof, or as a whole on a remote computer, a server, or a combination thereof.In the latter scenario, the remote computer may be connected to the computer through any type of network, including a local area network (LAN), a wide area network (WAN), or a combination thereof (for example, via the Internet using an Internet service provider), or a combination thereof, to an external computer. In one or more embodiments, electronic circuits, including, for example, a programmable logic circuit, a field-programmable gate array (FPGA), a programmable logic array (PLA), or a combination thereof, may execute computer-readable program instructions by personalizing the electronic circuit using state information of computer-readable program instructions in order to perform an aspect of one or more embodiments described herein.

[0216] Aspects of one or more embodiments described herein are described with reference to flowcharts, block diagrams, or combinations thereof of methods, apparatus (systems), and computer program products according to one or more embodiments described herein. It will be understood that each block in a flowchart, block diagram, or combination thereof, and combinations of blocks in a flowchart, block diagram, or combination thereof, can be implemented by computer-readable program instructions. These computer-readable program instructions may be provided to a processor or combination of a general-purpose computer, a dedicated computer, or other programmable data processing device to generate a machine. Thus, instructions executed via a computer or other programmable data processing device processor may provide a means for implementing the functions / actions specified in the blocks or combinations of blocks in a flowchart or block diagram or combination thereof. These computer-readable program instructions may also be stored in a computer-readable storage medium that can instruct a computer, programmable data processing device, or other device or combination thereof to function in a particular manner. Thus, a computer-readable storage medium storing instructions may contain a product containing instructions that can implement the modes of functions / actions specified in the blocks or combinations of blocks in a flowchart or block diagram or combination thereof. Computer-readable program instructions can also be loaded onto a computer, other programmable data processing device, other device, or a combination thereof, thereby causing a series of actions to be executed on the computer, other programmable device, other device, or a combination thereof, generating computer implementation processing, which in turn allows instructions executed on the computer, other programmable device, other device, or a combination thereof to implement functions / actions specified in blocks or multiple blocks of a flowchart or block diagram or a combination thereof.

[0217] The flowcharts and block diagrams in the figures illustrate the architecture, functionality, operation, or combination thereof of a system, a computer-implementable method according to one or more embodiments described herein, a computer program product, or a combination thereof. In this regard, each block in a flowchart or block diagram may represent a module, segment, a part of instructions, or a combination thereof, containing one or more executable instructions for implementing a specified logical function. In one or more alternative implementations, the functions described in a block may be performed in an order different from the order shown in the figure. For example, two consecutively shown blocks may be executed substantially simultaneously, depending on the functionality involved, or the blocks may be executed in reverse order, or a combination thereof. It should also be noted that each block, combination of blocks in a block diagram, flowchart, or combination thereof, or combination thereof, may be implemented by a dedicated hardware-based system that can perform a specified function, action, or combination thereof, and can perform one or more combinations of instructions of dedicated hardware, a computer, or a combination thereof.

[0218] While the subject matter has been described above in the general context of computer executable instructions for computer program products running on a computer, multiple computers, or a combination thereof, those skilled in the art will recognize that one or more embodiments described herein may also be implemented in combination with one or more other program modules. Generally, a program module includes routines, programs, components, data structures, or the like, or combinations thereof, that implement or combine a particular abstract data type, or perform a particular task. Furthermore, those skilled in the art will understand that the computer implementation methods of the present invention may be implemented in single-processor, multi-processor computer systems or combinations thereof, minicomputing devices, mainframe computers, and other computer system configurations including computers, handheld computing devices (e.g., PDAs, telephones), microprocessor-based or programmable consumer or industrial electronic devices, or combinations thereof, or the like, or combinations thereof. The embodiments shown may also be implemented in distributed computing environments where tasks are performed by remote processing devices linked through a communication network. However, embodiments of one or more embodiments described herein may be implemented on a standalone computer, though not all of them. In a distributed computing environment, program modules can reside on both local and remote memory storage devices.

[0219] As used herein, the terms “component,” “system,” “platform,” “interface,” or similar terms, or combinations thereof, may refer to, include, or be combinations thereof a computer-related entity or an entity relating to an operating machine having one or more inherent functionalities. Entities described herein may be hardware, a combination of hardware and software, software, or running software. For example, a component may be, but is not limited to, a process executed on a processor, a processor, an object, an executable file, a thread of execution, a program, or a computer or a combination thereof. Exemplarily, both an application running on a server and the server may be components. One or more components may exist in a process of execution, a thread, or a combination thereof, and a component may be localized on one computer, distributed across two or more computers, or a combination thereof. In another example, each component may be executed from various computer-readable media containing various data structures. Components may communicate via local, remote, or a combination thereof, processing, such as according to signals containing one or more data packets (for example, data from one component interacting with another component over a network such as the Internet with a local system, a distributed system, or other systems or a combination thereof via signals). As another example, a component may be a device having inherent functionality provided by mechanical parts operated by electrical or electronic circuits operated by software, firmware applications or a combination thereof executed by a processor. In such a case, the processor may be inside, outside, or a combination thereof of the device and may execute at least a portion of the software, firmware applications or a combination thereof.As yet another example, a component may be a device that provides inherent functionality through electronic components without mechanical parts, and such electronic components may include a processor, other means, or a combination thereof for running software, firmware, or a combination thereof that provides at least partially the functionality of the electronic components. In one embodiment, a component may emulate an electronic component via, for example, a virtual machine in a cloud computing system.

[0220] In addition, the term “or” is intended to mean an inclusive “or,” not an exclusive “or.” That is, unless otherwise specified or it is not clear from the context, “X uses A or B” is intended to mean either of the natural inclusive substitutions. That is, “X uses A,” “X uses B,” or “X uses both A and B” is satisfied under any of the aforementioned examples. Furthermore, the articles “a” and “an” used herein and in the accompanying drawings should generally be interpreted as meaning “one or more,” unless otherwise specified or it is not clear from the context that they refer to the singular. Where used herein, the terms “example” or “exemplary” or any combination thereof are used to mean an example, instance, or illustration. To avoid doubt, the subject matter described herein is not limited to such examples. In addition, any embodiment or design described herein as “example,” “exemplary,” or a combination thereof, shall not necessarily be construed as preferable or superior to other embodiments or designs, nor shall it be intended to exclude equivalent exemplary structures and techniques known to those skilled in the art.

[0221] As used herein, the term “processor” may refer to substantially any computing processing unit, device, or combination thereof, including, but not limited to, single-core processors, single processors with software multithreading capability, multi-core processors, multi-core processors with software multithreading capability, multi-core processors with hardware multithreading technology, parallel platforms, parallel platforms with distributed shared memory, or combinations thereof. Additionally, a processor may refer to integrated circuits, application-specific integrated circuits (ASICs), digital signal processors (DSPs), field-programmable gate arrays (FPGAs), programmable logic controllers (PLCs), complex-programmable logic devices (CPLDs), discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. Furthermore, processors may utilize nanoscale architectures, such as molecular and quantum dot-based transistors, switches, gates, or combinations thereof, for optimizing space utilization, enhancing the performance of associated equipment, or a combination thereof. Processors may be implemented as combinations of computing processing units.

[0222] In this specification, terms such as “storage,” “datastore,” “data storage,” “data storage,” “database,” and substantially any other information storage component relating to the operation and functionality of a component are used to refer to “memory” or “memory component” entities embodied in a component containing memory. It should be recognized that the memory or memory component or combination thereof described herein may be either volatile memory or non-volatile memory, or may include both volatile and non-volatile memory. Exemplary, rather than limited, non-volatile memory may include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable ROM (EEPROM), flash memory, non-volatile random-access memory (RAM) (e.g., ferroelectric RAM (FeRAM)) or combination thereof. Volatile memory may include RAM that can operate as, for example, external cache memory. As examples, not limitations, RAM can be available in many forms, including synchronous RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDR SDRAM), extended SDRAM (ESDRAM), Synchlink DRAM (SLDRAM), direct Rambus RAM (DRRAM), direct Rambus dynamic RAM (DRDRAM), Rambus dynamic RAM (RDRAM), or combinations thereof. Additionally, the memory components described herein in relation to systems or computer implementations or combinations thereof are intended to include, but are not limited to, any other suitable types of memory or combinations thereof.

[0223] The foregoing only includes examples of systems and computer implementations. Naturally, for the purpose of describing one or more embodiments, it is impossible to describe every conceivable combination of components, computer implementations, or combinations thereof; however, those skilled in the art will recognize that many more combinations, substitutions, or combinations thereof of one or more embodiments are possible. Furthermore, to the extent that terms such as “includes,” “has,” and “equipment” are used in the detailed description, claims, appendices, and drawings, such terms are intended to be inclusive in the same manner as the term “equipment” is interpreted when used as a transitional term in a claim.

[0224] The descriptions of one or more embodiments are presented for illustrative purposes only and are not exhaustive, nor are they intended to limit us to the embodiments described herein. Many modifications and variations will be apparent to those skilled in the art without departing from the scope and spirit of the embodiments described herein. The terms used herein have been selected to best describe the principles of the embodiments, their practical applications, technical improvements to the technology available on the market, or a combination thereof, or to enable those skilled in the art to understand the embodiments described herein, or a combination thereof.

Claims

1. Memory for storing computer executable components, A processor that executes the computer executable components stored in the memory. Equipped with, The aforementioned computer executable component is A time management component that communicates with a node and triggers the node to execute one or more quantum program instructions on the node's counters, which are advanced by the communication. Includes, The time management component advances the counter of the node based on a combination of the time of another node and the actual propagation time determined for the communication.

2. The time management component triggers the node to execute one or more quantum program instructions via the transfer of data to the node. The system according to claim 1.

3. The node increments the counter itself for the execution of one or more quantum program instructions that do not depend on the communication. The system according to claim 1 or 2.

4. The time management component uses one or more mailboxes on the node, and the one or more mailboxes dynamically change one or more designations of the one or more mailboxes related to the current execution state of the node. The system according to claim 1 or 2.

5. A memory for storing computer executable components, A processor that executes the computer executable components stored in the memory. Equipped with, The aforementioned computer executable component is Includes a time management component that communicates with a node and triggers the node to execute one or more quantum program instructions on the node's counters, which are advanced by the communication, The time management component is a system that uses one or more mailboxes on the node, and the one or more mailboxes dynamically change one or more designations of the one or more mailboxes related to the current execution state of the node.

6. The node, once triggered, locally controls instruction execution until the standby state is activated, and the time management component controls the switching of the standby state to the active state via the node's trigger. The system according to claim 1 or 2.

7. The computer executable component further comprises a scheduling component that identifies one or more instruction execution initiations or dependencies that will be encountered at the node before the execution of the one or more quantum program instructions. The system according to claim 1 or 2.

8. The scheduling component further schedules a wait instruction that triggers a wait state for the node and suspends the counter in the node when the node faces at least one of the one or more identified instruction execution start or dependency during the execution of the one or more quantum program instructions. The system according to claim 7.

9. A system operablely coupled to a processor communicates with a node and triggers the node to execute one or more quantum program instructions on a counter of the node, which is advanced by the communication; The system advances the counter of the node based on a combination of the time of another node and the actual propagation time determined for the communication. A computer implementation method comprising the following:

10. The system triggers the node to execute one or more quantum program instructions via the transfer of data to the node. The computer implementation method according to claim 9, further comprising:

11. The node of the system advances the counter itself in response to the execution of one or more quantum program instructions that do not depend on the communication. The computer implementation method according to claim 9 or 10, further comprising:

12. The step in which the system uses one or more mailboxes on the node, wherein the one or more mailboxes dynamically change one or more designations of the one or more mailboxes related to the current execution state of the node. The computer implementation method according to claim 9 or 10, further comprising:

13. A system operably coupled to a processor communicates with a node and triggers the node to execute one or more quantum program instructions on a counter of the node advanced by the communication, A computer implementation method comprising the steps of: the system using one or more mailboxes in the node, wherein the system dynamically changes one or more designations of the one or more mailboxes in relation to the current execution state of the node.

14. The system includes the step of enabling local control of instruction execution in the node once the node is triggered, until the standby state is activated. The system controls the switching of the standby state to the active state via a trigger on the node. The computer implementation method according to claim 9 or 10, further comprising:

15. A computer program that facilitates time management of a quantum program in one or more nodes of a system, wherein the processor A procedure for communicating with a node and triggering the node to execute one or more quantum program instructions on the node's counters, which are advanced by the communication, A procedure for advancing the counter of the node based on a combination of the time of another node and the actual propagation time determined for the communication: A computer program designed to execute something.

16. The aforementioned processor, A procedure for triggering a node to execute one or more quantum program instructions via the transfer of data to the node. To make it run further, The computer program according to claim 15.

17. The aforementioned processor, The node, via the processor, performs a procedure to advance the counter itself for the execution of one or more communication-independent quantum program instructions. To make it run further, The computer program according to claim 15 or 16.

18. The aforementioned processor, A procedure for using one or more mailboxes on the node, wherein the procedure dynamically changes one or more designations of the one or more mailboxes related to the current execution state of the node. To make it run further, The computer program according to claim 15 or 16.

19. A computer program for facilitating time management of a quantum program in one or more nodes of a system, wherein the processor A procedure for communicating with a node and triggering the node to execute one or more quantum program instructions on the node's counters, which are advanced by the communication, A computer program that performs a procedure for using one or more mailboxes in the node, wherein the one or more mailboxes perform a procedure for dynamically changing one or more designations of the one or more mailboxes in relation to the current execution state of the node.

20. The aforementioned processor, Once the node is triggered, the procedure enables local control of instruction execution in the node until the standby state is activated, A procedure for controlling the switching from the standby state to the active state via the trigger of the node: To execute The computer program according to claim 15 or 16.