Resource scheduling method of quantum computing measurement and control system and quantum computer
By using a resource manager to identify resource conflicts in quantum computing tasks and managing them with a cache queue, the problem of low task execution efficiency in quantum computing measurement and control systems is solved, enabling parallel execution of multiple tasks and improving system efficiency.
Patent Information
- Application Number
- CN202311123012.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-08-31
- Publication Date
- 2025-11-18
- Estimated Expiration
- 2043-08-31
AI Technical Summary
In existing quantum computing measurement and control systems, the execution efficiency of quantum computing tasks is relatively low, especially when multiple tasks are executed in parallel, which can easily lead to resource conflicts.
The resource manager determines whether there is a resource conflict between the quantum computing task to be executed and other tasks that are being executed. If there is a conflict, the task is placed in the cache queue. If there is no conflict, it is assigned to the task thread. The occupancy status of the qubits is updated after the task is completed.
It effectively solves the resource conflict problem when multiple tasks are pending at the same time, realizes the parallel execution of multiple quantum computing tasks, and improves the execution efficiency of the quantum computing measurement and control system.
Smart Images

Figure CN119539103B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of quantum computing, in particular to a resource scheduling method of a quantum computing measurement and control system and a quantum computer. BACKGROUND
[0002] A quantum computer is a physical device that performs high-speed mathematical and logical operations, stores and processes quantum information in accordance with the laws of quantum mechanics. The characteristics of a quantum computer mainly include fast running speed, strong information processing capacity, and wide application range. Compared with a general computer, the more information is processed, the more advantageous it is to implement operations on a quantum computer, and the more accurate the operations can be ensured.
[0003] A quantum chip is equivalent to a CPU for a traditional computer, and the quantum chip is the core component of a quantum computer. With the continuous research and advancement of quantum computing related technologies, the number of quantum bits on a quantum chip is increasing year by year. It can be predicted that larger scale quantum chips will appear in the future, and the number of quantum bits in the quantum chip will be larger, and larger scale quantum chips will be loaded in the quantum computer.
[0004] For some quantum computers on the market, a combination of a host computer, a quantum computing measurement and control system, and a quantum chip is generally used to implement some quantum computing tasks. The host computer receives a user's quantum computing task, processes the quantum computing task, and forms a quantum circuit, and then maps the quantum circuit to the topology of the corresponding quantum chip. The quantum circuit includes quantum gates required for this quantum computing task, measurement operations of the final quantum computing result, and the timing of each operation. When the quantum computing measurement and control system receives the information contained in the quantum circuit, it converts the information into corresponding instructions to make the corresponding hardware devices operate and complete the quantum computing task. The quantum computing measurement and control system includes a software system and a hardware system. The software system of the quantum computing measurement and control system is used to compile and process the user tasks (including but not limited to test tasks, calibration tasks, and measurement and control experiments) transmitted by the host computer, and convert the corresponding user tasks into a language that can be recognized by the hardware system, so that the hardware system generates corresponding control signals to achieve the purpose of operating and controlling the quantum chip. The existing quantum computing measurement and control system executes quantum computing tasks in the order of the received quantum computing tasks, which is inefficient when multiple quantum computing tasks are executed according to this scheme.
[0005] Therefore, how to improve the execution efficiency of quantum computing tasks has become a problem to be solved in the field.
[0006] It should be noted that the information disclosed in the part of the background of the present application is only intended to deepen the understanding of the general background of the present application, and should not be regarded as acknowledging or implying in any form that the information constitutes prior art known to those skilled in the art. SUMMARY
[0007] The purpose of the present application is to provide a resource scheduling method of a quantum computing measurement and control system and a quantum computer, which is used to solve the problem of low execution efficiency of quantum computing tasks in the prior art.
[0008] In order to solve the above technical problems, the present application provides a resource scheduling method of a quantum computing measurement and control system, comprising:
[0009] When a quantum computing task to be executed is received, a resource manager is used to determine whether there is a resource conflict between the quantum computing task to be executed and other quantum computing tasks being executed in a task thread, wherein the resource manager is used to reflect the occupation state of each quantum bit in a quantum chip, and the occupation state of the quantum bit includes an occupied state and an idle state.
[0010] When there is a resource conflict between the quantum computing task to be executed and other quantum computing tasks being executed in the task thread, the quantum computing task to be executed is put into a cache queue.
[0011] When there is no resource conflict between the quantum computing task to be executed and other quantum computing tasks being executed in the task thread, the quantum computing task to be executed is assigned to the task thread, and the occupation state of the quantum bit required by the quantum computing task to be executed is updated to the occupied state.
[0012] After the execution of the quantum computing task to be executed is completed, the occupation state of the quantum bit required by the quantum computing task to be executed is updated to the idle state.
[0013] Optionally, the method further comprises:
[0014] After the execution of the quantum computing task to be executed is completed, a first quantum computing task is preferentially obtained from the cache queue, the first quantum computing task is taken as the quantum computing task to be executed, and the step of using the resource manager to determine whether there is a resource conflict between the quantum computing task to be executed and other quantum computing tasks being executed in the task thread is returned.
[0015] Optionally, the method further comprises:
[0016] If the quantum computing task does not exist in the cache queue, after the to-be-executed quantum computing task is executed, a second quantum computing task is obtained from the task queue, and the second quantum computing task is taken as the to-be-executed quantum computing task, wherein the task queue is a queue of a plurality of quantum computing tasks waiting for execution, and the second quantum computing task is one task in the task queue.
[0017] Optionally, the number of tasks that can be accommodated in the cache queue is a fixed value.
[0018] Optionally, the number of tasks that can be accommodated in the cache queue is 5.
[0019] Optionally, the number of tasks that can be accommodated in the cache queue is adjusted according to the blocking time of the current task queue, wherein the task queue is a queue of a plurality of quantum computing tasks waiting for execution.
[0020] Optionally, the number of tasks that can be accommodated in the cache queue is positively correlated with the blocking time of the current task queue.
[0021] Based on the same inventive concept, the application further provides a resource scheduling device of a quantum computing measurement and control system, comprising:
[0022] The first module is configured to determine, when a to-be-executed quantum computing task is received, whether the to-be-executed quantum computing task and other quantum computing tasks being executed in a task thread have resource conflicts by using a resource manager, wherein the resource manager is used to reflect the occupation state of each quantum bit in a quantum chip, and the occupation state of the quantum bit includes an occupied state and an idle state.
[0023] The second module is configured to put the to-be-executed quantum computing task into a cache queue when the to-be-executed quantum computing task and other quantum computing tasks being executed in the task thread have resource conflicts.
[0024] The third module is configured to assign the to-be-executed quantum computing task to the task thread and update the quantum bit required by the to-be-executed quantum computing task to the occupied state when the to-be-executed quantum computing task and other quantum computing tasks being executed in the task thread do not have resource conflicts.
[0025] The fourth module is configured to update the quantum bit required by the to-be-executed quantum computing task to the idle state after the to-be-executed quantum computing task is executed.
[0026] Based on the same inventive concept, the application further provides a quantum computing measurement and control system, which is scheduled by using the resource scheduling method of the quantum computing measurement and control system according to any one of the above feature descriptions.
[0027] Based on the same inventive concept, the application further provides a quantum computer comprising the quantum computing measurement and control system described in the above feature description.
[0028] Based on the same inventive concept, the application further provides a readable storage medium having a computer program stored thereon, the computer program being executable by a processor to implement the resource scheduling method of the quantum computing measurement and control system according to any one of the above feature descriptions.
[0029] Compared with the prior art, the application has the following beneficial effects:
[0030] The application provides a resource scheduling method of a quantum computing measurement and control system. When a quantum computing task to be executed is received, a resource manager is used to determine whether there is a resource conflict between the quantum computing task to be executed and other quantum computing tasks being executed in a task thread. When there is a resource conflict between the quantum computing task to be executed and other quantum computing tasks being executed in the task thread, the quantum computing task to be executed is put into a cache queue. When there is no resource conflict between the quantum computing task to be executed and other quantum computing tasks being executed in the task thread, the quantum computing task to be executed is allocated to the task thread, and the occupation state of a quantum bit required by the quantum computing task to be executed is updated to a state of being occupied. After the quantum computing task to be executed is executed, the occupation state of the quantum bit required by the quantum computing task to be executed is updated to an idle state. The resource scheduling method of the quantum computing measurement and control system provided in the application determines whether there is a resource conflict between the quantum computing task to be executed and other quantum computing tasks being executed in the task thread through the resource manager, puts the tasks in conflict into the cache queue when there is a conflict, and allocates the quantum computing task to be executed to the task thread when there is no conflict. Through this scheme, the resource conflict problem that may occur when multiple tasks are to be solved at the same time is effectively solved, the parallel execution of multiple quantum computing tasks is realized, and the execution efficiency of the quantum computing tasks in the quantum computing measurement and control system is effectively improved.
[0031] The resource scheduling device, the quantum computing measurement and control system, the quantum computer and the readable storage medium provided in the application belong to the same inventive concept as the resource scheduling method of the quantum computing measurement and control system, and therefore have the same beneficial effects, which will not be described here. BRIEF DESCRIPTION OF DRAWINGS
[0032] Figure 1 A flowchart of the resource scheduling method of the quantum computing measurement and control system provided in the embodiments of the application is shown in the figure.
[0033] Figure 2A resource scheduling scheme diagram when a quantum computing measurement and control system receives a first quantum computing task task0 in a task queue;
[0034] Figure 3 A resource scheduling scheme diagram when a quantum computing measurement and control system receives a second quantum computing task task1 in a task queue;
[0035] Figure 4 A resource scheduling scheme diagram when a quantum computing measurement and control system receives a third quantum computing task task2 in a task queue;
[0036] Figure 5 A resource scheduling scheme diagram when a quantum computing measurement and control system receives a fourth quantum computing task task3 in a task queue;
[0037] Figure 6 A resource scheduling scheme diagram when a quantum computing measurement and control system receives a fourth quantum computing task task3 in a task queue;
[0038] Figure 7 A structure schematic diagram of a resource scheduling device of a quantum computing measurement and control system according to an embodiment of the present application. DETAILED DESCRIPTION
[0039] The specific embodiments of the present application will be described in detail below with reference to the accompanying drawings. The advantages and features of the present application will be more apparent from the following description and claims. It should be noted that the drawings are very simplified and use non-precise proportions, only to facilitate, clarify the purpose of assisting the description of the embodiments of the present application.
[0040] In the description of the present application, it should be understood that the terms "center", "upper", "lower", "left", "right" and the like indicate the orientation or positional relationship based on the orientation or positional relationship shown in the drawings, and are only for the purpose of facilitating the description of the present application and simplifying the description, and do not indicate or imply that the devices or elements referred to must have a particular orientation, be constructed and operated in a particular orientation, and therefore cannot be understood as a limitation of the present application.
[0041] In addition, the terms "first", "second" are only for the purpose of description, and cannot be understood as indicating or implying relative importance or implicitly indicating the number of technical features indicated. Therefore, the features defined with "first", "second" can explicitly or implicitly include one or more of the features. In the description of the present application, the meaning of "a plurality of" is at least two, for example, two, three, etc., unless otherwise specifically limited.
[0042] Please refer to Figure 1 The present application provides a resource scheduling method of a quantum computing measurement and control system, comprising:
[0043] S100: When a quantum computing task to be executed is received, it is determined whether there is a resource conflict between the quantum computing task to be executed and other quantum computing tasks being executed in a task thread by using a resource manager, wherein the resource manager is used to reflect an occupation state of each quantum bit in a quantum chip, and the occupation state of the quantum bit includes an occupied state and an idle state;
[0044] S200: When there is a resource conflict between the quantum computing task to be executed and other quantum computing tasks being executed in the task thread, the quantum computing task to be executed is put into a cache queue;
[0045] S300: When there is no resource conflict between the quantum computing task to be executed and other quantum computing tasks being executed in the task thread, the quantum computing task to be executed is assigned to the task thread, and an occupation state of a quantum bit required by the quantum computing task to be executed is updated to the occupied state;
[0046] S400: After the quantum computing task to be executed is executed, the occupation state of the quantum bit required by the quantum computing task to be executed is updated to the idle state.
[0047] The difference from the prior art is that the present application provides a resource scheduling method of a quantum computing measurement and control system. When a quantum computing task to be executed is received, a resource manager is used to determine whether there is a resource conflict between the quantum computing task to be executed and other quantum computing tasks being executed in a task thread. When there is a resource conflict between the quantum computing task to be executed and other quantum computing tasks being executed in the task thread, the quantum computing task to be executed is put into a cache queue. When there is no resource conflict between the quantum computing task to be executed and other quantum computing tasks being executed in the task thread, the quantum computing task to be executed is assigned to the task thread, and the occupation state of a quantum bit required by the quantum computing task to be executed is updated to an occupied state. After the quantum computing task to be executed is executed, the occupation state of the quantum bit required by the quantum computing task to be executed is updated to an idle state. The resource scheduling method of the quantum computing measurement and control system provided in the present application determines whether there is a resource conflict between the quantum computing task to be executed and other quantum computing tasks being executed in the task thread through the resource manager, puts the task in conflict into the cache queue when there is a conflict, and assigns the quantum computing task to be executed to the task thread when there is no conflict. This scheme effectively solves the resource conflict problem that may occur when multiple tasks are to be solved at the same time, realizes parallel execution of multiple quantum computing tasks, and effectively improves the execution efficiency of quantum computing tasks in the quantum computing measurement and control system. Through the above scheme, the quantum computing measurement and control system can solve resource conflicts and as much as possible realize parallel execution of multiple threads. When there is a resource conflict between quantum computing tasks, only the task that has no conflict with the currently available quantum bit resources can be assigned to the thread in the idle state for execution, which can maximize the efficiency of concurrent execution and ensure that quantum computing tasks without resource conflicts can be executed in parallel.
[0048] As can be understood by those skilled in the art, the occupation state of the quantum bit mentioned herein is mainly used to distinguish the use of the quantum bit. For example, in actual application, we can use specific characters to represent the "occupied state" and the "idle state", for example, we can use 1 to represent the "occupied state" and 0 to represent the "idle state", so as to Figure 2 For example, as shown in the quantum chip, it is assumed that the quantum bit Q0 is currently executing a quantum computing task, so the quantum bit Q0 is 1 in the first state list, and the quantum bit Q4 is not executing a quantum computing task, so the quantum bit Q4 is 0 in the first state list. In addition to the scheme given in the above example, other schemes can be used to distinguish the use of the quantum bit in other embodiments, which will not be described here.
[0049] Specifically, in the present embodiment, the resource scheduling method of the quantum computing measurement and control system further comprises:
[0050] After the to-be-executed quantum computing task is executed, the first quantum computing task is preferentially obtained from the cache queue, the first quantum computing task is taken as the to-be-executed quantum computing task, and it is returned to execute the step of judging whether the to-be-executed quantum computing task and other quantum computing tasks being executed in the task thread exist resource conflicts by using the resource manager.
[0051] The cache queue in the scheme can enable more quantum computing tasks to be executed concurrently. If there is no cache queue, it is assumed that a first task is being executed in a thread, and a second task and a third task are waiting for allocation of the thread in a task queue. If there is no cache queue, once the second task and the first task exist resource conflicts, we can select two schemes. The first scheme is to wait for the first task to be executed before the second task is put into the thread to be executed. This scheme has the lowest efficiency. The second scheme is to put the second task into the task queue to make it continue to queue. We put the third task into the thread to be executed in the task queue. Although this scheme is more efficient than the first scheme, since the second task is put into the task queue, the task queue needs to be repeatedly traversed, which causes waste of computing resources of the quantum computing measurement and control system. The cache queue of the present application can effectively solve the above problems. The cache queue is used to temporarily store quantum computing tasks that exist resource conflicts. This scheme does not need to wait nor repeatedly traverse the task queue, effectively improves the utilization rate of resources, and improves the execution efficiency of quantum computing tasks.
[0052] Specifically, in the embodiment, the resource scheduling method of the quantum computing measurement and control system further includes:
[0053] If there is no quantum computing task in the cache queue, after the to-be-executed quantum computing task is executed, a second quantum computing task is obtained from a task queue, the second quantum computing task is taken as the to-be-executed quantum computing task, the task queue is a queue of a plurality of to-be-executed quantum computing tasks, and the second quantum computing task is one task in the task queue.
[0054] In the embodiment, the number of tasks that can be accommodated in the cache queue can be set to a threshold upper limit. If not set, the following risks may occur. First, if the cache queue can grow indefinitely, it will occupy more and more memory resources. If the memory resources are insufficient to accommodate the growing cache queue, a memory overflow error will occur, causing the system to crash or become unavailable. Second, if the cache queue has no upper limit and there are too many tasks in the cache queue, it may cause some quantum computing tasks to need a long time to wait to be executed. Finally, in the case where the cache queue has no upper limit, some tasks may occupy resources for a long time, while other tasks cannot be executed, which will lead to unfair resource allocation and may cause some tasks to be completed in time, affecting the overall performance and efficiency of the system. In the embodiment, the number of tasks that can be accommodated in the cache queue is a fixed value. Specifically, the number of tasks that can be accommodated in the cache queue can be set to 5. Those skilled in the art can understand that in other embodiments, the number of tasks that can be accommodated in the cache queue can also be set to other values, which are not described here.
[0055] It should be noted that when the tasks in the cache queue are all full and are "mutual exclusion" tasks (i.e., there is a resource conflict between each other), the tasks in the task queue still conflict with the tasks in the cache queue, and at this time the tasks will be blocked. Assuming that the upper limit of the number of tasks that can be accommodated in the cache queue is 5, at this time all the tasks that need to use quantum bit Q0 are stored, and there are still 5 tasks in the task queue that need to use Q0. At this time, the resource manager checks the conflict and cannot put the Q0 task into the cache queue, so the entire system will be blocked and wait. Assuming that at this time it is found that there are tasks in the task queue that need to use quantum bits Q7, Q1, Q2, and Q3, which can be normally executed, if blocked at this time, the resource utilization of the system will be reduced. To solve this special case, the application also proposes a strategy to dynamically adjust the length of the tasks that can be accommodated in the cache queue. We set a time threshold for the blocked tasks, and when the task is detected to be blocked and exceeds the time threshold, we dynamically expand the length of the cache queue. Thus, the 5 Q0 tasks in the task queue will be put into the cache queue, and the subsequent Q7, Q1, Q2, and Q3 tasks can also be executed smoothly.
[0056] Specifically, in the embodiment, the number of tasks that can be accommodated in the cache queue is adjusted according to the blocking time of the current task queue, wherein the task queue is a queue of a plurality of quantum computing tasks waiting to be executed.
[0057] Specifically, in the embodiment, the number of tasks that can be accommodated in the cache queue is positively correlated with the blocking time of the current task queue.
[0058] Specifically, in the embodiment, the resource manager further comprises a second state list for reflecting the occupation state of each thread in the task thread, the occupation state of the thread comprising an occupied state and an idle state. When there is no resource conflict between the to-be-executed quantum computing task and other quantum computing tasks being executed in the task thread, the to-be-executed quantum computing task is allocated to a thread in the idle state, and the occupation state of the thread occupied by the to-be-executed quantum computing task is updated to the occupied state. After the to-be-executed quantum computing task is executed, the occupation state of the thread occupied by the to-be-executed quantum computing task is updated to the idle state. Similar to the occupation state of the qubit, those skilled in the art can understand that the occupation state of the thread mentioned herein is mainly used to distinguish the use of the thread, for example, in actual application, we can use specific characters to represent the "occupied state" and the "idle state", for example, we can use 1 to represent the "occupied state" and 0 to represent the "idle state", so as to Figure 2 For example, assuming that the thread Thread0 is currently executing a quantum computing task, then the thread Thread0 in the second state list is 1, and the thread Thread1 is not executing a quantum computing task, so the thread Thread1 in the second state list is 0. In addition to the scheme given in the above example, in other embodiments, other schemes can be used to distinguish the use of the thread, which will not be described one by one here.
[0059] The scheme of the present application will be briefly described below with reference to an example. Assuming that the structure of the quantum chip in the quantum computer is as shown in Figures 2-6 , the quantum chip comprises 24 qubits, and the task thread of the quantum computing measurement and control system supports 5 threads to run simultaneously.
[0060] Please refer to Figure 2 , the quantum computing measurement and control system receives the first quantum computing task task0 in the task queue. We assume that the qubits required by task0 are Q0, Q1, Q2, Q3, Q6, Q7, Q8 and Q9. According to the result displayed by the resource manager, the eight qubits are all in the idle state, so they can be directly used. The states of the qubits Q0, Q1, Q2, Q3, Q6, Q7, Q8 and Q9 are adjusted from the "idle state" to the "occupied state", and there is a free thread, so the state of the thread Thread0 is adjusted from the "idle state" to the "occupied state". Please refer to Figure 3In the execution process of the first quantum computing task task0, the quantum computing measurement and control system receives the second quantum computing task task1 in the task queue, task1 needs quantum bits Q15, Q16, Q17, Q21, Q22, Q23, and the resource manager displays that the six quantum bits do not have resource conflicts with task0, and there is a free thread at present, so the state of thread Thread1 is adjusted from the 'free state' to the 'occupied state'. Please refer to Figure 4 The resource manager finds that the next quantum computing task task2 in the task queue has resource conflicts with task0, task2 needs quantum bits Q6, Q7, Q12, Q13, Q18, Q19, at this time, task0 has not been executed, so it cannot be allocated to the task thread, at this time, task2 is placed in the cache queue. Please refer to Figure 5 Continue to traverse other quantum computing tasks in the task queue, the next quantum computing task task3 in the task queue needs quantum bits Q4, Q5, task3 does not have resource conflicts with task0 and task1, the state of quantum bits Q4, Q5 is adjusted from the 'free state' to the 'occupied state', and there is a free thread at present, so the state of thread Thread2 is adjusted from the 'free state' to the 'occupied state'. Please refer to Figure 6 Suppose that at this time, task0 in thread Thread0 has been executed, then the state of quantum bits Q0, Q1, Q2, Q3, Q6, Q7, Q8, Q9 will be adjusted from the 'occupied state' to the 'free state', the execution thread will notify the resource manager, the resource manager suspends the traversal of the task queue, and starts to traverse the cache queue, at this time, task2 does not have resource conflicts, and task2 can be placed from the cache queue to thread Thread3 for continuous execution.
[0061] Based on the same inventive concept, please refer to Figure 7 The application further provides a resource scheduling device of a quantum computing measurement and control system, which comprises:
[0062] A first module 100 is configured to determine whether a to-be-executed quantum computing task has resource conflicts with other quantum computing tasks being executed in a task thread by using a resource manager when the to-be-executed quantum computing task is received, wherein the resource manager is used to reflect the occupation state of each quantum bit in a quantum chip, and the occupation state of the quantum bit comprises an occupied state and a free state.
[0063] A second module 200 is configured to place the to-be-executed quantum computing task into a cache queue when the to-be-executed quantum computing task has resource conflicts with other quantum computing tasks being executed in the task thread.
[0064] The third module 300 is configured to allocate the to-be-executed quantum computing task to the task thread when there is no resource conflict between the to-be-executed quantum computing task and other quantum computing tasks being executed in the task thread, and update quantum bits required by the to-be-executed quantum computing task to an occupied state.
[0065] The fourth module 400 is configured to update quantum bits required by the to-be-executed quantum computing task to an idle state after the to-be-executed quantum computing task is executed.
[0066] It can be understood that the first module 100, the second module 200, the third module 300, and the fourth module 400 can be combined in one device, or any one of the modules can be split into multiple sub-modules, or at least part of the functions of one or more of the first module 100, the second module 200, the third module 300, and the fourth module 400 can be combined with at least part of the functions of other modules, and implemented in one function module. According to an embodiment of the present application, at least one of the first module 100, the second module 200, the third module 300, and the fourth module 400 can be at least partially implemented as a hardware circuit, such as a field programmable gate array (FPGA), a programmable logic array (PLA), a system on chip, a system on substrate, a system on package, an application specific integrated circuit (ASIC), or any other reasonable way of integrating or packaging a circuit, etc. hardware or firmware, or a suitable combination of software, hardware, and firmware. Alternatively, at least one of the first module 100, the second module 200, the third module 300, and the fourth module 400 can be at least partially implemented as a computer program module that can perform the functions of the corresponding module when the program is run by a computer.
[0067] Based on the same inventive concept, the present application further proposes a quantum computing measurement and control system, which uses the resource scheduling method of the quantum computing measurement and control system according to any one of the above feature descriptions for resource scheduling.
[0068] Based on the same inventive concept, the present application further proposes a quantum computer comprising the quantum computing measurement and control system according to the above feature descriptions.
[0069] Based on the same inventive concept, the present application further proposes a readable storage medium having a computer program stored thereon, wherein the computer program is executed by a processor to implement the resource scheduling method of the quantum computing measurement and control system according to any one of the above feature descriptions.
[0070] The readable storage medium can be a tangible device that can retain and store instructions for use by an instruction execution device. The readable storage medium can be, for example but is not limited to, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. More specific examples (a non-exhaustive list) of the readable storage medium include the following: a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), a static random access memory (SRAM), a portable compact disc read-only memory (CD-ROM), a digital versatile disk (DVD), a memory stick, a floppy disk, a mechanically encoded device such as punch-cards or punched tape, a holographic storage medium, or any suitable combination of the foregoing. A computer program product, such as the computer program 1120, can be downloaded to the respective computing / processing device from a readable storage medium or to an external computer or external storage device via a network, for example, the Internet, a local area network, a wide area network, and / or a wireless network. The network can comprise copper transmission cables, optical transmission fibers, wireless transmission, routers, firewalls, switches, gateway computers, and / or edge servers. A network adapter card or network interface in each computing / processing device receives computer program product from the network and forwards the computer program product for storage in a readable storage medium in the respective computing / processing device. The computer program 1120 for carrying out operations of the present application can be written in any combination of one or more programming languages, including an object oriented programming language such as Smalltalk, C++ or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The computer program 1120 can execute entirely on the user's computing / processing device, partly on the user's computing / processing device, as a stand-alone software package, partly on the user's computing / processing device and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer can be connected to the user's computing / processing device through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection can be made to an external computer (for example, through the Internet using an Internet Service Provider). In some embodiments, electronic circuitry including, for example, programmable logic circuitry, field-programmable gate array (FPGA), or programmable logic array (PLA) can execute the computer readable program instructions by utilizing state information of the computer readable program instructions to personalize the electronic circuitry, in order to perform aspects of the present application.
[0071] The computer program can also be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable apparatus or other device to produce a computer implemented process such that the computer program running on the computer or other programmable apparatus provide processes for implementing the functions / acts specified in the flowchart and / or block diagram block or blocks.
[0072] The computer program can also be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable apparatus or other device to produce a computer implemented process such that the computer program running on the computer or other programmable apparatus provide processes for implementing the functions / acts specified in the flowchart and / or block diagram block or blocks.
[0073] In the description of the specification, the description of the terms "one embodiment", "some embodiments", "example", "specific example" or the like means that the specific features, structures, materials or characteristics described in connection with the embodiment or example are included in at least one embodiment or example of the present application. In the specification, the illustrative description of the above terms does not necessarily refer to the same embodiment or example. Moreover, the specific features, structures, materials or characteristics described can be combined in any appropriate manner in one or more embodiments. In addition, those skilled in the art can combine and integrate different embodiments or examples described in the specification.
[0074] The above are only preferred embodiments of the present application, and do not have any limiting effect on the present application. Any person skilled in the art can make any form of equivalent replacement or modification, etc. to the technical solutions and technical contents disclosed in the present application without departing from the scope of the technical solutions of the present application, which still belongs to the protection scope of the present application.
Claims
1. A resource scheduling method for a quantum computing measurement and control system, characterized in that, include: When a quantum computing task to be executed is received, a resource manager is used to determine whether there is a resource conflict between the quantum computing task to be executed and other quantum computing tasks being executed in the task thread. The resource manager is used to reflect the occupancy status of each quantum bit in the quantum chip, and the occupancy status of the quantum bit includes the occupied state and the idle state. When there is a resource conflict between the quantum computing task to be executed and other quantum computing tasks being executed in the task thread, the quantum computing task to be executed is placed in the cache queue. When there is no resource conflict between the quantum computing task to be executed and other quantum computing tasks being executed in the task thread, the quantum computing task to be executed is allocated to the task thread, and the occupancy status of the qubits required by the quantum computing task to be executed is updated to the occupied status. After the quantum computing task to be executed is completed, the occupancy status of the qubits required by the quantum computing task to be executed is updated to the idle state; After the quantum computing task to be executed is completed, the first quantum computing task is first obtained from the cache queue, the first quantum computing task is used as the quantum computing task to be executed, and the process returns to the step of using the resource manager to determine whether there is a resource conflict between the quantum computing task to be executed and other quantum computing tasks being executed in the task thread. If there is no quantum computing task in the cache queue, then after the execution of the quantum computing task to be executed is completed, a second quantum computing task is obtained from the task queue and used as the quantum computing task to be executed. The task queue is a queue of several quantum computing tasks waiting to be executed, and the second quantum computing task is a task in the task queue.
2. The method as described in claim 1, characterized in that, The number of tasks that can be accommodated in the cache queue is a fixed value.
3. The method as described in claim 1, characterized in that, The cache queue can hold 5 tasks.
4. The method as described in claim 1, characterized in that, The number of tasks that can be accommodated in the cache queue is adjusted according to the current blocking time of the task queue, wherein the task queue is a queue of several quantum computing tasks waiting to be executed.
5. The method as described in claim 4, characterized in that, The number of tasks that the cache queue can hold is positively correlated with the blocking time of the current task queue.
6. A resource scheduling device for a quantum computing measurement and control system, characterized in that, include: The first module is used to determine, when a quantum computing task to be executed is received, whether there is a resource conflict between the quantum computing task to be executed and other quantum computing tasks being executed in the task thread. The resource manager is used to reflect the occupancy status of each quantum bit in the quantum chip. The occupancy status of the quantum bit includes an occupied state and an idle state. The second module is used to put the quantum computing task to be executed into a cache queue when there is a resource conflict between the quantum computing task to be executed and other quantum computing tasks being executed in the task thread. The third module is used to allocate the quantum computing task to be executed to the task thread and update the qubits required by the quantum computing task to be executed to an occupied state when there is no resource conflict between the quantum computing task to be executed and other quantum computing tasks being executed in the task thread. The fourth module is used to update the qubits required by the quantum computing task to an idle state after the task is completed. The fourth module is further configured to, after the execution of the quantum computing task to be executed is completed, preferentially retrieve the first quantum computing task from the cache queue, use the first quantum computing task as the quantum computing task to be executed, and return to execute the first module; The fourth module is further configured to, when there is no quantum computing task in the cache queue, obtain a second quantum computing task from the task queue after the execution of the quantum computing task to be executed, and use the second quantum computing task as the quantum computing task to be executed, wherein the task queue is a queue of several quantum computing tasks waiting to be executed, and the second quantum computing task is a task in the task queue.
7. A quantum computing measurement and control system, characterized in that, Resource scheduling is performed using the resource scheduling method of the quantum computing measurement and control system according to any one of claims 1-5.
8. A quantum computer, characterized in that, Includes the quantum computing measurement and control system as described in claim 7.
9. A readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it can implement the resource scheduling method of the quantum computing measurement and control system as described in any one of claims 1-5.
Citation Information
Patent Citations
Method and device for managing effectiveness of information processing task
CN110807047A
Access control method of scalar processing unit and scalar processing unit
CN115129480A