Cloud-native-based quantum classical hybrid task scheduling system
By providing a quantum classic hybrid task scheduling system in a cloud native environment, combining classical and quantum computing resources, the limitations of task scheduling methods in the existing technology are solved, and efficient support for large-scale and real-time data processing is achieved.
Patent Information
- Application Number
- CN202411953079.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-27
- Publication Date
- 2025-04-25
AI Technical Summary
Existing task scheduling methods mostly focus on a single computing model, and it is difficult to effectively combine resource management in cloud-native environments, efficient solution capabilities of quantum computing, and the stability of classical algorithms. There are bottlenecks in the needs of large-scale and highly real-time data processing.
It provides a cloud-native quantum classic hybrid task scheduling system, which receives task requests through application program interfaces, and cloud-native gateways perform task distribution. The quantum classic hybrid computing platform provides scheduling of classic and quantum computing power resources, and the task scheduling control center performs task scheduling and resource allocation.
It realizes computing power support for classical computing tasks and quantum computing tasks, improves the utilization rate of quantum computing resources and classic computing resources, can perform automated computing power scheduling, and is suitable for large-scale and real-time data processing.
Smart Images

Figure CN119883555A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of quantum cloud technology, and in particular to a cloud-native based quantum-classical hybrid task scheduling system. Background Art
[0002] With the rapid development of information technology, the application of cloud computing, quantum computing and classical algorithms has become an important force in promoting the development of science and technology. With its powerful computing power and flexible service model, cloud computing has shown great potential in data processing, machine learning, big data analysis and other fields. As an emerging computing model, quantum computing can provide computing power far exceeding that of traditional computers by utilizing the principles of quantum mechanics, especially in specific types of problems (such as large integer decomposition and optimization problems). Classical algorithms are the result of continuous optimization and improvement in long-term practice, and they still play an irreplaceable role in many practical application scenarios.
[0003] However, the collaboration between different computing modes remains a challenge. How to effectively combine resource management in a cloud-native environment, the efficient solution capability of quantum computing, and the stability of classical algorithms to form a hybrid task scheduling method suitable for a variety of task scenarios is an important direction of current research.
[0004] Existing task scheduling methods are mostly concentrated in a single computing mode, such as traditional task scheduling based on classical algorithms, or task scheduling based on cloud-native architecture that has emerged in recent years. These methods have achieved certain success in their respective fields, but their limitations gradually become apparent when faced with complex tasks that require the comprehensive use of multiple computing resources, namely computing power resources. Specifically, task scheduling methods based on classical algorithms are often unable to cope with large-scale, real-time data processing requirements; and cloud-native-based task scheduling has insufficient support for tasks involving quantum computing, especially in terms of task allocation strategies and resource utilization. There are obvious bottlenecks. Summary of the invention
[0005] The purpose of the present disclosure is to provide a cloud-native-based quantum-classical hybrid task scheduling system, which aims to provide both classical computing resources and quantum computing resources and allocate and schedule them based on a cloud-native environment, and provide computing power support for classical computing tasks and quantum computing tasks.
[0006] In order to achieve the above objectives, the present disclosure provides a cloud-native-based quantum-classical hybrid task scheduling system, the scheduling system comprising:
[0007] Application program interface, used to receive task requests sent by users;
[0008] A cloud native gateway, configured to receive the task request sent by the application program interface and distribute the task according to a task distribution strategy;
[0009] At least one quantum classical hybrid computing platform, wherein each of the quantum classical hybrid computing platforms comprises:
[0010] Classic computing resource scheduling center, used to provide classic computing resources;
[0011] Quantum computing resource dispatching center, used to provide quantum computing resources;
[0012] The task scheduling control center is used to receive the task request distributed by the cloud native gateway to the quantum classical hybrid computing platform to which it belongs according to the task distribution strategy, and schedule the classical computing resources of the classical computing power resource scheduling center or the quantum computing power resources of the quantum computing power resource scheduling center based on the task request to execute the task corresponding to the task request, obtain the execution result, and return the execution result to the corresponding user through the application program interface.
[0013] Optionally, the task scheduling control center includes:
[0014] A task management module is used to receive the task request distributed by the cloud native gateway, parse the task request into a standardized task description file, the task description file contains basic attribute information and computing resource requirement information of the task, extract the task from the task description file and put it into the task queue;
[0015] A resource management module, used to monitor the computing resource status of the classical computing resource scheduling center and the quantum computing resource scheduling center and record the computing resource status through a resource pool, wherein the computing resource status includes the available computing resources and the allocated computing resources of both the classical computing resources and the quantum computing resources;
[0016] A scheduling decision module, for classifying the tasks into cloud native tasks, quantum computing tasks, and classical computing tasks according to the basic attribute information of the tasks, and allocating available computing resources to the tasks and generating a scheduling plan for computing resources according to the classification type of the tasks or the computing resource demand information and based on the computing resource status of the resource pool;
[0017] An execution monitoring module, used to start the task according to the scheduling plan to perform calculations on the corresponding allocated classical computing resources or quantum computing resources, and monitor the execution status of the task in real time;
[0018] The result return module is used to collect the execution results of the task from various classical computing resources and quantum computing resources, confirm the correctness and completeness of the execution results, and return the execution results to the corresponding user through the application program interface.
[0019] Optionally, the task queue includes a quantum task queue for recording quantum programs in quantum computing tasks.
[0020] Optionally, the scheduling decision module is further used to:
[0021] Determine the maximum total number of available quantum bits for the task represented by the available computing power resources of the quantum computing power resources in the resource pool;
[0022] Searching for one or more target quantum programs ranked at the top in the quantum task queue, wherein the total number of quantum bits required by the target quantum programs is less than or equal to the maximum total number of available quantum bits;
[0023] If there are multiple target quantum programs, group the target quantum programs according to the total program running time of the target quantum programs, and the absolute value of the difference in the total program running time between the target quantum programs in each group is less than or equal to a threshold;
[0024] Each group of the target quantum programs is merged into a single quantum program to allocate and compile available quantum bits in the quantum computing power resources.
[0025] Optionally, the scheduling decision module is further used to:
[0026] A root quantum bit is allocated to the quantum program in the quantum task queue, and other quantum bits associated with the root quantum bit are gradually allocated until the total number of allocated quantum bits is the same as the number of quantum bits required by the quantum program.
[0027] Optionally, the scheduling decision module is further used to:
[0028] If there are multiple quantum programs that need to be distributed, the root qubit of each quantum program is placed at the position with the greatest distance from the root qubit of the previous quantum program.
[0029] Optionally, the scheduling decision module is further used to:
[0030] When allocating qubits to a quantum program, the ratio e is calculated i / (e i +e o ), find the quantum bit allocation region with the largest ratio, where e i is the number of connecting edges between qubits in the qubit allocation region, e o is the number of connecting edges between qubits inside and outside the qubit allocation region.
[0031] Optionally, the task scheduling control center also includes:
[0032] The task log module is used to record information during the task execution process.
[0033] Optionally, the classical computing power resource scheduling center includes a central processing unit, a graphics processing unit, a memory and an external storage, and the quantum computing power resource scheduling center includes at least one of a superconducting quantum computer, an optical quantum computer, an ion trap quantum computer, and a semiconductor quantum computer.
[0034] Optionally, the scheduling system further includes:
[0035] A data storage system is used to store the execution result in the external memory.
[0036] Through the above technical solution, the task request sent by the user is transmitted to the cloud-native gateway via the application program interface. The cloud-native gateway can automatically distribute the task request on multiple quantum-classical hybrid computing platforms based on the task distribution strategy. The quantum-classical hybrid computing platform provides support for both classical computing resources and quantum computing resources. For each task of the quantum-classical hybrid computing platform, the task scheduling control center allocates classical computing resources or quantum computing resources to different tasks. In this way, automatic computing power scheduling can also be performed for large-scale and real-time data processing, which can improve the utilization rate of quantum computing resources and classical computing resources. The task calculation is performed by the corresponding computing power resources to obtain the execution result, and finally the execution result is returned to the user through the application program interface, so that the user can remotely and conveniently use the cloud-native-based quantum-classical hybrid task scheduling system to perform task calculations and obtain execution results.
[0037] Other features and advantages of the present disclosure will be described in detail in the following detailed description. BRIEF DESCRIPTION OF THE DRAWINGS
[0038] The accompanying drawings are used to provide a further understanding of the present disclosure and constitute a part of the specification. Together with the following specific embodiments, they are used to explain the present disclosure but do not constitute a limitation of the present disclosure. In the accompanying drawings:
[0039] Figure 1 It is a block diagram of a cloud-native quantum-classical hybrid task scheduling system according to an exemplary embodiment.
[0040] Figure 2 The present invention is a block diagram of a task scheduling control center according to an exemplary embodiment.
[0041] Figure 3 is another block diagram of a cloud-native based quantum classical hybrid task scheduling system according to an exemplary embodiment.
[0042] Figure 4The present invention is a flowchart of a cloud-native-based quantum-classical hybrid task scheduling method according to an exemplary embodiment.
[0043] Figure 5 It is a schematic diagram of a quantum bit allocation scheme for a 4-qubit quantum program according to an exemplary embodiment.
[0044] Figure 6 is a schematic diagram of another quantum bit allocation scheme for a 4-qubit quantum program according to an exemplary embodiment. DETAILED DESCRIPTION
[0045] The specific implementation of the present disclosure is described in detail below in conjunction with the accompanying drawings. It should be understood that the specific implementation described herein is only used to illustrate and explain the present disclosure, and is not used to limit the present disclosure.
[0046] Figure 1 is a block diagram of a cloud-native quantum-classical hybrid task scheduling system according to an exemplary embodiment. Figure 1 , the scheduling system includes:
[0047] Application program interface, used to receive task requests sent by users;
[0048] A cloud native gateway, configured to receive the task request sent by the application program interface and distribute the task according to a task distribution strategy;
[0049] At least one quantum classical hybrid computing platform, wherein each of the quantum classical hybrid computing platforms comprises:
[0050] Classic computing resource scheduling center, used to provide classic computing resources;
[0051] Quantum computing resource dispatching center, used to provide quantum computing resources;
[0052] The task scheduling control center is used to receive the task request distributed by the cloud native gateway to the quantum classical hybrid computing platform to which it belongs according to the task distribution strategy, and schedule the classical computing resources of the classical computing power resource scheduling center or the quantum computing power resources of the quantum computing power resource scheduling center based on the task request to execute the task corresponding to the task request, obtain the execution result, and return the execution result to the corresponding user through the application program interface.
[0053] Among them, the application program interface API can be an open application program interface OpenApi, which is used to provide users with a standardized data transmission interface, so that users can transmit standardized task requests through the application program interface. For example, the user can be an individual user or a third-party institution user. An individual user can send a task request to the application program interface through the browser of his or her computer terminal, and a third-party institution user can send a task request by connecting to the application program interface through a browser or other tools. The task request can be a computing request for a classical computing task, a quantum computing task, or a quantum-classical hybrid computing task. The task request may include information such as the task type, input data, and expected output.
[0054] The cloud native gateway can distribute the task requests forwarded by the application program interface, and can distribute them to each quantum classical hybrid computing platform according to a pre-set distribution strategy. For example, the task requests can be evenly distributed to each quantum classical hybrid computing platform according to the distribution strategy to achieve load balancing, or they can be distributed according to the real-time available computing power resources of each quantum classical hybrid computing platform. This disclosure does not make specific restrictions on this. In addition, the cloud native gateway can also be used for traffic management, protocol conversion, security protection, etc.
[0055] The quantum-classical hybrid computing platform provides classical computing resources and quantum computing resources, as well as scheduling and management of the two types of computing resources. Figure 1 , a single quantum classical hybrid computing platform can include a classical computing power resource scheduling center, a quantum computing power resource scheduling center, and a task scheduling control center. The number of quantum classical hybrid computing platforms is at least 1, and there can be multiple, such as 2 or more. A single quantum classical hybrid computing platform can be regarded as a computing node, in which the classical computing power resource scheduling center, the quantum computing power resource scheduling center, and the task scheduling control center can be deployed in the same local area or in different locations, and constitute a computing node based on the networking relationship.
[0056] See also Figure 1, the classic computing power resource scheduling center can include a central processing unit (CPU), a graphics processing unit (GPU), memory and external storage to provide rich classic computing power resources. Among them, the memory is the internal storage or main storage, which is used to temporarily store the calculation data in the CPU or GPU, and to exchange data with the outside, providing high-speed data storage and writing functions for CPU and GPU operations, such as random access memory RAM. External storage is external storage, generally using non-volatile memory, providing long-term data storage functions, such as hard disks. Different classic computing power resource scheduling centers can have different specifications of CPU, GPU, memory and external storage. Each classic computing power resource scheduling center can have multiple CPUs and GPUs. For example, a classic computing power resource scheduling center can have 2560 CPU cores, 100 NVIDIA A100 graphics cards, 2560G memory and 8TB external storage.
[0057] See also Figure 1 , the quantum computing resource dispatching center can provide multiple types of quantum computing resources to meet different needs. A single quantum computing resource dispatching center can include at least one of a superconducting quantum computer, an optical quantum computer, an ion trap quantum computer, and a semiconductor quantum computer. Different quantum computing resource dispatching centers may have quantum computers of different types and different computing capabilities. For example, see Figure 1 , a quantum computing resource dispatching center may have superconducting quantum computers, optical quantum computers, ion trap quantum computers, and semiconductor quantum computers at the same time. In a possible implementation, the quantum computing resource dispatching center may also have only superconducting quantum computers. In addition, the quantum computing resource dispatching center may also have other types of quantum computers such as annealing quantum computers, which is not specifically limited in this disclosure.
[0058] The task scheduling control center can be used to receive task requests distributed by the cloud native gateway, and schedule classical computing resources and / or quantum computing resources to execute the tasks corresponding to the task requests, obtain the execution results, and finally return the execution results to the user through the application program interface. For example, the execution results can be returned to the cloud native gateway first, and then sent to the corresponding user who initiated the task request through the application program interface. The task scheduling control center has built-in scheduling strategies for scheduling computing resources for different tasks.
[0059] Optionally, in a possible implementation, see Figure 2 , the task scheduling control center includes:
[0060] A task management module is used to receive the task request distributed by the cloud native gateway, parse the task request into a standardized task description file, the task description file contains basic attribute information and computing resource requirement information of the task, extract the task from the task description file and put it into the task queue;
[0061] A resource management module, used to monitor the computing resource status of the classical computing resource scheduling center and the quantum computing resource scheduling center and record the computing resource status through a resource pool, wherein the computing resource status includes the available computing resources and the allocated computing resources of both the classical computing resources and the quantum computing resources;
[0062] A scheduling decision module, for classifying the tasks into cloud native tasks, quantum computing tasks, and classical computing tasks according to the basic attribute information of the tasks, and allocating available computing resources to the tasks and generating a scheduling plan for computing resources according to the classification type of the tasks or the computing resource demand information and based on the computing resource status of the resource pool;
[0063] An execution monitoring module, used to start the task according to the scheduling plan to perform calculations on the corresponding allocated classical computing resources or quantum computing resources, and monitor the execution status of the task in real time;
[0064] The result return module is used to collect the execution results of the task from various classical computing resources and quantum computing resources, confirm the correctness and completeness of the execution results, and return the execution results to the corresponding user through the application program interface.
[0065] Among them, the task request distributed by the cloud native gateway to the quantum classical hybrid computing platform is received by the task management module therein, and the task management module parses the task request to obtain a standardized task description file. The standardization refers to the format of the task description file and the key information format that meet the preset standards. The task description file contains the basic attribute information of the task and the computing power resource requirement information. The basic attribute information is used to describe the basic attributes of the task, such as task type, input data, expected output, etc. The computing power resource requirement information is the computing power resources required for the calculation proposed by the user. For example, for a quantum computing task, its computing power resource requirement information may be classical computing power resources for performing simulated quantum computing, or quantum computing power resources for performing real quantum computing. After obtaining the task description file, the cloud native gateway extracts the task from the standardized task description file and puts the task into the task queue, waiting for the scheduling decision module to process it. The task can be represented by formatted information, such as task name, number, type, computing power resource requirement, input data, expected output, etc.
[0066] Among them, the resource management module can monitor the computing power resource status of the classical computing power resource scheduling center and the quantum computing power resource scheduling center in real time. Computing power resources are also called computing resources, including classical computing power resources and quantum computing power resources. The computing power resource status includes the available computing power resources and allocated computing power resources of these two computing power resources. By maintaining a resource pool, the resource management module can record the computing power resource status of classical computing power resources and quantum computing power resources to provide computing power resource information for resource scheduling decisions. In addition, the resource management module can also monitor the resource status of the cloud native environment and record it in the resource pool. According to the requirements of the task, the resource management module can also reserve the computing power resources required for the corresponding tasks, such as tasks with higher priority, to ensure that the tasks can be executed smoothly.
[0067] Among them, the scheduling decision module can classify tasks according to the basic attribute information of the tasks, and classify the tasks into cloud native tasks, quantum computing tasks and classical computing tasks. Cloud native tasks refer to various tasks that are run and managed in a cloud native environment, such as containerized packaging, microservice architecture drive, etc., which belong to a special type of classical tasks that use classical computing resources to perform. Quantum computing tasks refer to tasks that use quantum computing resources for calculation, such as Grover algorithm, quantum Fourier transform algorithm, etc. Classical computing tasks refer to tasks that use classical computing resources for calculation and exclude cloud native tasks. Most of them use classical computing resources to perform specific computing tasks such as optimization tasks and search tasks. For example, for simulated quantum computing tasks, although they are calculated according to quantum programs, they use classical computing resources to implement the computing process, so they can be classified as classical computing tasks. For quantum classical hybrid computing tasks such as variational quantum algorithm VQA, they can be divided into classical computing tasks that only contain classical computing and quantum computing tasks that only contain quantum computing.
[0068] After classification, the scheduling decision module can allocate corresponding available computing resources to the task according to the classification type of the task or the computing resource demand information, as well as the computing resource status of the resource pool, and then obtain the scheduling plan of computing resources. For example, for a quantum computing task, its computing resource demand information indicates that it requires 10 quantum bits for calculation, then the 10 idle quantum bits available in the quantum computer can be allocated to the quantum computing task. For a classical computing task, its computing resource demand information indicates that it requires 2 CPU cores, 4G memory and 5G external storage, then the corresponding available classical computing resources are allocated in the classical computing resources. For some tasks, their computing resource demand information may be empty, or the requirements for computing resources are not high, then the scheduling decision module can automatically allocate corresponding computing resources to them according to their type, for example, for a quantum computing task, automatically retrieve the maximum number of quantum bits required by the quantum program, and then allocate the corresponding number of available quantum bits to it.
[0069] When allocating computing resources, the scheduling decision module can use a multi-objective optimization algorithm to comprehensively consider factors such as task priority, resource utilization, execution time and cost to generate the optimal scheduling plan. During the task execution process, the scheduling plan can be dynamically adjusted based on the feedback from the execution monitoring module to ensure efficient completion of the task.
[0070] Among them, the execution monitoring module can read the scheduling plan, start the task according to the scheduling plan and perform calculations on the corresponding classical computing resources or quantum computing resources, and monitor the execution status of the task in real time, such as task progress, resource usage, error information, etc., and can provide feedback to the scheduling decision module to facilitate its adjustment of the scheduling plan.
[0071] Among them, the result return module can collect the execution results of tasks from various classical computing resources and various quantum computing resources, and verify the correctness and completeness of the task execution results. For example, the correctness and completeness of the execution results can be determined by reading the characters such as "succeed" in the task execution results that indicate that the operation process has not been abnormal and is executed normally. The collected execution results can be returned to the cloud native gateway, and the cloud native gateway returns them to the initiator of the task request corresponding to the execution result through the application program interface.
[0072] Through the cooperation of these modules, automated and intelligent task scheduling can be achieved, the utilization rate of classical computing resources and quantum computing resources can be improved, and computing efficiency can be accelerated.
[0073] In addition, the task scheduling control center can also be implemented by other solutions, such as Figure 3 On the basis of the above modules, the task scheduling control center can also include a task log module for recording information during the task execution process, such as the time of task execution, calculation results, calculation exceptions and other information.
[0074] Figure 3 is another block diagram of a cloud-native based quantum classical hybrid task scheduling system according to an exemplary embodiment, see Figure 3 In addition to the application programming interface, cloud-native gateway, and quantum-classical hybrid computing platform, the scheduling system also includes:
[0075] The data storage system is used to store the execution result in an external memory.
[0076] Among them, see Figure 3The data storage system can be a high-performance distributed data storage system, which is used to manage the "instances" abstracted from the external memory in the classic computing resource scheduling center. It adopts a distributed architecture, provides data redundancy and fault tolerance mechanisms, ensures data security and reliability, and improves the scalability of the storage system. By forming a database, the execution results are stored in the external memory, which makes it convenient to query the execution results and return them to the user.
[0077] In addition, see Figure 3 , the quantum-classical hybrid task scheduling system based on cloud native can also include efficient cloud native environment basic configuration components, such as efficient cache middleware, high-concurrency message queues, high-performance database engines, and high-performance log collection systems. The middleware service layer located between the operating system and the application provides specific functions and services for the quantum-classical hybrid task scheduling system. Among them, the efficient cache middleware can temporarily store frequently accessed data in memory to shorten the response time of tasks, for example, it can be implemented using Redis. The high-concurrency message queue can realize asynchronous processing of tasks and decouple task dependencies, improving the overall concurrent processing capability and resource utilization of the system, for example, it can be implemented using rabbitmq. The high-performance database engine can support fast data processing and analysis, for example, it can be implemented using mysql. The high-performance log collection system can support task monitoring and troubleshooting and positioning, for example, it can be implemented using ELK.
[0078] Figure 4 is a flowchart of a cloud-native quantum-classical hybrid task scheduling method according to an exemplary embodiment, which can be applied to Figure 1 The cloud-native quantum-classical hybrid task scheduling system shown in Figure 4 , the scheduling method may include:
[0079] S1: Submit task request: The user submits a task request through the application program interface, which includes information such as task type, input data, and expected output.
[0080] S2: Task analysis: The task management module analyzes the task request, generates a task description file, and adds the task to the task queue. In addition, the resource status can be queried through the resource pool maintained by the resource management module.
[0081] S3: Monitoring resources: The resource management module monitors the resource status of each computing platform in real time, updates resource pool information, and provides resource information to the scheduling decision module
[0082] S4: Classify tasks: The scheduling decision module classifies tasks into cloud native tasks, quantum computing tasks, or classical computing tasks according to the task description file. It can also select the most appropriate computing resources, i.e., the aforementioned computing power resources, for task allocation according to the task type and resource status. It can also use a multi-objective optimization algorithm to generate the optimal scheduling plan and send the scheduling plan to the execution monitoring module.
[0083] S5: Task start: The execution monitoring module starts the task and executes it on the specified computing resources according to the scheduling plan. It can also monitor the task status in real time and feedback the task status to the scheduling decision module to facilitate its dynamic adjustment of the scheduling plan. The execution monitoring module can also collect task execution results from various computing resources for summary and organization.
[0084] S6: Result verification: The result return module can verify the correctness and completeness of the task result, i.e. the execution result, and finally return the result to the user through the application program interface. The result return module can also record the task execution log and store it in the database.
[0085] Through the above technical solution, the task request sent by the user is transmitted to the cloud-native gateway via the application program interface. The cloud-native gateway can automatically distribute the task request on multiple quantum-classical hybrid computing platforms based on the task distribution strategy. The quantum-classical hybrid computing platform provides support for both classical computing resources and quantum computing resources. For each task of the quantum-classical hybrid computing platform, the task scheduling control center allocates classical computing resources or quantum computing resources to different tasks. In this way, automatic computing power scheduling can also be performed for large-scale and real-time data processing, which can improve the utilization rate of quantum computing resources and classical computing resources. The task calculation is performed by the corresponding computing power resources to obtain the execution result, and finally the execution result is returned to the user through the application program interface, so that the user can remotely and conveniently use the cloud-native-based quantum-classical hybrid task scheduling system to perform task calculations and obtain execution results.
[0086] In addition, through the above technical solutions, it is possible to support and automatically schedule a variety of computing resources, improve the flexibility of task scheduling, and ensure the efficient use of computing resources through dynamic scheduling. The scheduling system adopts a modular design, and each module can communicate through a standard interface, which is easy to expand and maintain. The scheduling system supports distributed deployment and can handle large-scale, distributed computing tasks. According to task requirements and resource status, computing resources can be dynamically expanded to ensure the scalability of the system.
[0087] As mentioned above, in Figure 1In the scheduling system shown, the task management module can put the task of the task description file into the task queue. Optionally, the task queue can include a quantum task queue for recording quantum programs in quantum computing tasks, and of course can also include a classical task queue for recording classical computing tasks.
[0088] For quantum programs of quantum computing tasks, due to crosstalk, gate fidelity will be reduced during the parallel execution of multiple quantum gates. In order to reduce the impact of crosstalk, related technologies have proposed crosstalk suppression strategies, which reduce crosstalk by optimizing the gate ordering within the quantum program, but require gate timing information, which is not available for different quantum programs. Therefore, gate timing scheduling can be performed by merging the two programs to clarify the timing relationship between the quantum gates between the two programs, and then the crosstalk suppression strategy of related technologies can be applied. However, if there is a significant difference in the execution time of the two quantum programs, the quantum program with a shorter execution time may be completed first, and then it is necessary to temporarily wait for the other quantum program with a longer execution time to complete, resulting in an increase in decoherence errors, and the quantum bits that could have been released in advance for the execution of the next quantum program are still occupied. Based on this, different quantum programs can be merged and optimized first.
[0089] Alternatively, see Figure 1 The scheduling decision module in the scheduling system shown in the figure can also be used to merge different quantum programs:
[0090] Determine the maximum total number of available quantum bits for the task represented by the available computing power resources of the quantum computing power resources in the resource pool;
[0091] Searching for one or more target quantum programs ranked at the top in the quantum task queue, wherein the total number of quantum bits required by the target quantum programs is less than or equal to the maximum total number of available quantum bits;
[0092] If there are multiple target quantum programs, group the target quantum programs according to the total program running time of the target quantum programs, and the absolute value of the difference in the total program running time between the target quantum programs in each group is less than or equal to a threshold;
[0093] Each group of the target quantum programs is merged into a single quantum program to allocate and compile available quantum bits in the quantum computing power resources.
[0094] Specifically, the scheduling decision module can query the computing power resource status recorded in the resource pool, and determine the available computing power resources of each quantum computer of the quantum computing power resources, that is, the total number of idle available quantum bits in each quantum computer, and can find the maximum total number of available quantum bits in different quantum computers that can be used to perform the corresponding task based on the computing power resource demand information of the quantum computing task. For example, for tasks that do not limit the type of quantum computer in the computing power resource demand information, querying the resource pool finds that the number of available quantum bits of superconducting quantum computers is 15, the number of available quantum bits of optical quantum computers is 10, and the number of available quantum bits of ion trap quantum computers is 5, then the maximum total number of available quantum bits is 15.
[0095] After determining the maximum total number of available quantum bits, search for the first n quantum programs in the quantum task queue, where n is greater than or equal to 1. By counting the number of quantum bits required by each of the n quantum programs and adding them up, the total number of quantum bits required is obtained. By adjusting the size of n, n is made less than or equal to the maximum total number of available quantum bits. For example, the number of quantum bits required for the tasks in the queue in the order of front to back is 4, 5, 4, 6, and 3, respectively. It can be found that when n=3, the total number of quantum bits required for the first three quantum programs is 14 < the maximum total number of available quantum bits 15, and when n=4, the total number of quantum bits required for the first four quantum programs is 20 > the maximum total number of available quantum bits 15. Therefore, it can be determined that n=3, and then the first three quantum programs are determined as the target quantum programs. Of course, only the first two quantum programs can be determined as the target quantum programs according to the scheduling plan.
[0096] After searching for the target quantum program, if there are at least two target quantum programs, they can be grouped according to the total program running time of the target quantum program, which includes the execution time of the quantum program and the time of measurement and initialization. The absolute value of the difference between the total program running time of each target quantum program can be calculated. If the absolute value is less than or equal to a preset threshold, it means that the total program running time between the two corresponding target quantum programs is relatively close, and then they are divided into the same group for quantum program merging. The merging can be to allocate the same group of quantum bits on adjacent quantum bits, and they are regarded as the same quantum program during operation.
[0097] After grouping, the target quantum programs in each group are merged into a single quantum program to allocate the available quantum bits in the quantum computing resources and compile them. After one of the target quantum programs is executed, the other target quantum program can also be executed in a similar time, without having to wait for a long time, thereby reducing the time that the quantum bits are occupied.
[0098] Optionally, the scheduling decision module can also be used to:
[0099] A root quantum bit is allocated to the quantum program in the quantum task queue, and other quantum bits associated with the root quantum bit are gradually allocated until the total number of allocated quantum bits is the same as the number of quantum bits required by the quantum program.
[0100] Specifically, when the scheduling decision module allocates quantum bits to a quantum program, it first allocates a root quantum bit to the available quantum bits of the corresponding quantum chip, and then gradually adds and allocates other quantum bits around the root quantum bit until the total number of allocated quantum bits is the same as the number of quantum bits required by the quantum program.
[0101] Optionally, multiple quantum programs can be run in parallel on a quantum chip. To improve the running efficiency of quantum programs and reduce the impact of crosstalk, the scheduling decision module can also be used to:
[0102] If there are multiple quantum programs that need to be distributed, the root qubit of each quantum program is placed at the position with the greatest distance from the root qubit of the previous quantum program.
[0103] Specifically, when allocating root qubits to quantum programs, the location of the root qubit of the previous quantum program of the current quantum program to be allocated can be determined, and then the farthest and idle allocable qubit can be found on the bit coupling diagram of the quantum chip as the root qubit of the current quantum program to be allocated. In this way, the distance between different quantum programs can be increased as much as possible, and the qubits that are not allocated to any quantum program can be reserved as buffer qubits to reduce the impact of crosstalk.
[0104] Optionally, the scheduling decision module can also be used to:
[0105] When allocating qubits to a quantum program, the ratio e is calculated i / (e i +e o ), find the quantum bit allocation region with the largest ratio, where e i is the number of connecting edges between qubits in the qubit allocation region, e o is the number of connecting edges between qubits inside and outside the qubit allocation region.
[0106] Specifically, when allocating qubits to a quantum program, we can calculate the ratio e i / (e i +e o ), where e i It is the number of connecting edges between the qubits in the qubit allocation area of the corresponding quantum program. According to the coupling relationship between the qubits of the quantum chip, if there is such a coupling relationship between two qubits, there will be connecting edges. oIt is the number of connecting edges between qubits in the qubit allocation region and qubits outside the qubit allocation region. By calculating this ratio, the qubit allocation region with the largest ratio is found as its allocation scheme. A low ratio indicates that the connections between qubits are sparse, which requires an increase in the use of exchange gates during compilation. Therefore, when allocating qubits, the qubit with the largest ratio should be selected as much as possible.
[0107] For example, for a quantum program that requires 4 qubits, see Figure 5 , where each circle represents a quantum bit, and the lines between the circles represent the connecting edges between them. There are 4 quantum bits in the quantum bit allocation area 501, as shown in the figure, and there are 3 connecting edges between these 4 quantum bits, namely e i = 3. The number of connecting edges e between the qubits in region 501 and the qubits outside region 501, i.e., the qubits around region 501 o is 10, and the ratio e i / (e i +e o )=3 / 13≈0.23. Similarly, Figure 6 The 4-qubit qubit allocation area 601 is shown. i =4,e o =8, ratio e i / (e i +e o )=4 / 12≈0.33. So Figure 6 The qubit allocation region 601 shown is superior to Figure 5 The quantum bit allocation area 501 is shown, and the allocation scheme of the quantum bit allocation area 601 is preferred between the two.
[0108] Optionally, the scheduling decision module can also be used to:
[0109] When allocating qubits for a quantum program, if multiple qubits correspond to the same ratio e i / (e i +e o ), calculate E Q =(1-exp(t e / T Q ))E meas , select E Q The smallest quantum bit is allocated next time, where T Q is the coherence time of the quantum bit Q, (1-exp(t e / T Q )) represents the total running time t of the quantum program e The decoherence error within, E measis the measurement error of the quantum bit Q. This can reduce the running error of the quantum program and improve the running accuracy.
[0110] In addition, since different quantum programs need to have quantum bits that do not belong to any quantum program as a buffer, if the available quantum bits of a quantum program are all adjacent quantum bits of the available quantum bits of another quantum program, crosstalk may occur. Therefore, the quantum computing task corresponding to the quantum program with a lower priority in the two quantum programs is returned to the quantum computing queue and waits for the next computing cycle for quantum bit allocation. If the two quantum programs are merged into a single quantum program, the quantum subprogram with a lower priority is returned to the quantum computing queue and waits for quantum bit allocation in the next computing cycle. This process can be repeated until there is no crosstalk.
[0111] The preferred embodiments of the present disclosure are described in detail above in conjunction with the accompanying drawings; however, the present disclosure is not limited to the specific details in the above embodiments. Within the technical concept of the present disclosure, a variety of simple modifications can be made to the technical solution of the present disclosure, and these simple modifications all fall within the protection scope of the present disclosure.
[0112] It should also be noted that the various specific technical features described in the above specific embodiments can be combined in any suitable manner without contradiction. In order to avoid unnecessary repetition, the present disclosure will not further describe various possible combinations.
[0113] In addition, various embodiments of the present disclosure may be arbitrarily combined, and as long as they do not violate the concept of the present disclosure, they should also be regarded as the contents disclosed by the present disclosure.
Claims
1. A cloud-native quantum-classical hybrid task scheduling system, characterized in that: The dispatching system comprises: Application program interface, used to receive task requests sent by users; A cloud native gateway, configured to receive the task request sent by the application program interface and distribute the task according to a task distribution strategy; At least one quantum classical hybrid computing platform, wherein each of the quantum classical hybrid computing platforms comprises: Classic computing resource scheduling center, used to provide classic computing resources; Quantum computing resource dispatching center, used to provide quantum computing resources; The task scheduling control center is used to receive the task request distributed by the cloud native gateway to the quantum classical hybrid computing platform to which it belongs according to the task distribution strategy, and schedule the classical computing resources of the classical computing power resource scheduling center or the quantum computing power resources of the quantum computing power resource scheduling center based on the task request to execute the task corresponding to the task request, obtain the execution result, and return the execution result to the corresponding user through the application program interface.
2. The dispatching system according to claim 1, characterized in that: The task scheduling control center includes: A task management module is used to receive the task request distributed by the cloud native gateway, parse the task request into a standardized task description file, the task description file contains basic attribute information and computing resource requirement information of the task, extract the task from the task description file and put it into the task queue; A resource management module, used to monitor the computing resource status of the classical computing resource scheduling center and the quantum computing resource scheduling center and record the computing resource status through a resource pool, wherein the computing resource status includes the available computing resources and the allocated computing resources of both the classical computing resources and the quantum computing resources; A scheduling decision module, for classifying the tasks into cloud native tasks, quantum computing tasks, and classical computing tasks according to the basic attribute information of the tasks, and allocating available computing resources to the tasks and generating a scheduling plan for computing resources according to the classification type of the tasks or the computing resource demand information and based on the computing resource status of the resource pool; An execution monitoring module, used to start the task according to the scheduling plan to perform calculations on the corresponding allocated classical computing resources or quantum computing resources, and monitor the execution status of the task in real time; The result return module is used to collect the execution results of the task from various classical computing resources and quantum computing resources, confirm the correctness and completeness of the execution results, and return the execution results to the corresponding user through the application program interface.
3. The dispatching system according to claim 2, characterized in that: The task queue includes a quantum task queue for recording quantum programs in quantum computing tasks.
4. The dispatching system according to claim 3, characterized in that: The scheduling decision module is also used for: Determine the maximum total number of available quantum bits for the task represented by the available computing power resources of the quantum computing power resources in the resource pool; Searching for one or more target quantum programs ranked at the top in the quantum task queue, wherein the total number of quantum bits required by the target quantum programs is less than or equal to the maximum total number of available quantum bits; If there are multiple target quantum programs, group the target quantum programs according to the total program running time of the target quantum programs, and the absolute value of the difference in the total program running time between the target quantum programs in each group is less than or equal to a threshold; Each group of the target quantum programs is merged into a single quantum program to allocate and compile available quantum bits in the quantum computing power resources.
5. The dispatching system according to claim 3, characterized in that: The scheduling decision module is also used for: A root quantum bit is allocated to the quantum program in the quantum task queue, and other quantum bits associated with the root quantum bit are gradually allocated until the total number of allocated quantum bits is the same as the number of quantum bits required by the quantum program.
6. The dispatching system according to claim 5, characterized in that: The scheduling decision module is also used for: If there are multiple quantum programs that need to be distributed, the root qubit of each quantum program is placed at the position with the greatest distance from the root qubit of the previous quantum program.
7. The dispatching system according to claim 5, characterized in that: The scheduling decision module is also used for: When allocating qubits to a quantum program, the ratio e is calculated i / (e i +e o ), find the quantum bit allocation region with the largest ratio, where e i is the number of connecting edges between qubits in the qubit allocation region, e o is the number of connecting edges between qubits inside and outside the qubit allocation region.
8. The dispatching system according to claim 2, characterized in that: The task scheduling control center also includes: The task log module is used to record information during the task execution process.
9. The dispatching system according to claim 1, characterized in that: The classical computing power resource scheduling center includes a central processing unit, a graphics processing unit, a memory and an external storage, and the quantum computing power resource scheduling center includes at least one of a superconducting quantum computer, an optical quantum computer, an ion trap quantum computer, and a semiconductor quantum computer.
10. The dispatching system according to claim 9, characterized in that: The scheduling system also includes: A data storage system is used to store the execution result in the external memory.
Citation Information
Cited By
Quantum artificial intelligence service platform and quantum artificial intelligence model implementation method
CN120764715A
Task scheduling method and device for multi-computing-power fusion platform
CN121523585A
Intelligent computing power scheduling system and method for mRNA (messenger ribonucleic acid) coding protein structure prediction
CN121789756A
System and method for predicting protein structure based on RNA sequence of quantum computing
CN121838873A
A quantum computing-based system and method for predicting protein structure from RNA sequences.
CN121838873B