Density functional calculation-oriented cluster task scheduling method and device

Through the task scheduling method for density functional computing, using estimated execution time division tasks, decomposition tasks and multi-layer tree control network allocation and operation, the problems of low resource utilization and poor expansion efficiency in the existing technology are solved, and efficient task scheduling and parallel computing are realized.

CN119512711APending Publication Date: 2025-02-25INST OF COMPUTING TECH CHINESE ACAD OF SCI
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411575350.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-06
Publication Date
2025-02-25

AI Technical Summary

Technical Problem

When existing task schedulers handle batch tasks with density functional computing, they are unable to fully utilize the performance of supercomputing clusters, resulting in low resource utilization and poor scaling efficiency.

Method used

A task scheduling method for density functional computing is proposed, including obtaining the estimated execution time of each task, dividing it into large tasks and small tasks, decomposing large tasks into multiple small tasks, and distributing tasks and running them through a multi-layer tree control network, adopting asynchronous distribution method and error tolerance mechanism to achieve load balancing and high parallel efficiency.

Benefits of technology

This method can effectively deal with the characteristics of batch tasks, improve resource utilization and expansion efficiency, achieve high parallel efficiency, and be flexible, and is suitable for batch task scheduling with similar characteristics in other fields.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119512711A_ABST
    Figure CN119512711A_ABST
Patent Text Reader

Abstract

The invention provides a density functional calculation-oriented cluster task scheduling method, which comprises the following steps of: estimating the execution time of each cluster task of density functional calculation, and dividing the cluster task into a large task and a small task based on the execution time; decomposing the large-scale task which is allowed to be decomposed by the task characteristics into a plurality of small-scale tasks; when the tasks run, all the small tasks are packaged into a plurality of task packages, and task distribution and running are carried out according to the sequence of first large tasks and then task packages; wherein the task package meets the condition that the total execution time of the task processes of all the execution nodes is within a gradually reduced time range. The cluster task scheduling method can well cope with the characteristics of batch tasks in the background technology, and has the advantages of load balancing scheduling based on task load evaluation, decomposition and reordering, variable-length task group packaging, an error tolerance mechanism, large-scale expandability of hierarchical expansion and relatively high parallel efficiency.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the fields of high performance computing, computational chemistry and task scheduling, and in particular to a method and device for scheduling tasks in a supercomputing cluster for density functional calculations. Background Art

[0002] First principles is a theoretical framework that predicts the properties of matter based on the fundamental principles of quantum mechanics without relying on empirical parameters. Density functional theory (DFT) is one of the main methods for implementing first principles calculations, which simplifies calculations by using electron density rather than wave functions to describe the behavior of multi-electron systems. DFT is widely used in studying the structure, energy, and reactivity of molecules and solids, and is favored for its good balance between accuracy and computational efficiency.

[0003] Scientific computing applications with high computational intensity, such as first principles, are usually solved using supercomputer clusters. Supercomputers are computer systems with extremely high computing power, usually used to handle complex scientific computing, data analysis and simulation tasks. Today's supercomputers have hundreds to tens of thousands of nodes, each of which is usually equipped with a CPU with dozens of cores and several computing accelerator cards (GPU, etc.), and combined with advanced parallel computing technology, can achieve 100 billion operations per second (EFLOPS) to meet the growing computing needs.

[0004] When using density functional theory to directly study a large number of molecules or to study large molecules based on the decomposition-assembly method, a large number of independent computing tasks will be generated, which need to be fully scheduled and executed on the computing partition. This batch task has the following characteristics: 1. There is no dependency between tasks, and there is a more flexible scheduling space; 2. The difference in the amount of computing between tasks is up to hundreds of times, which poses a greater load balancing challenge; 3. The calculation time of some small tasks is short, which may cause process waiting and reduce parallel efficiency; 4. Some tasks may have calculation errors, which may cause node process errors or batch calculations cannot continue normally; 5. The number of nodes in the supercomputing cluster is huge, and the task scheduling system needs to be able to freely expand from a few processes to hundreds of thousands of processes and maintain high efficiency.

[0005] Existing schedulers cannot fully utilize the performance of supercomputing clusters under such complex task characteristics, resulting in low resource utilization and poor expansion efficiency. Therefore, the inventors of this application intend to provide a task scheduling system based on density functional calculation, which can well cope with the above batch task characteristics, and has load balancing scheduling based on task load evaluation, decomposition and reordering, variable-length task group packaging, error tolerance mechanism, large-scale scalability of hierarchical expansion and high parallel efficiency. At the same time, the task scheduling system has a certain flexibility and is suitable for batch task scheduling with similar characteristics in other fields. Summary of the invention

[0006] In view of the above problems, the present invention proposes a cluster task scheduling method for density functional calculations, including: obtaining an estimated execution time of each cluster task of density functional calculations, and dividing the cluster tasks into large tasks and small tasks based on the estimated execution time; decomposing a large task whose task characteristics allow decomposition into multiple small tasks; when the task is running, packaging all the small tasks into multiple task packages, and first allocating and running the undecomposed large tasks, and then allocating and running the task packages in order from large to small; wherein, the task package satisfies that the total execution time of the task processes of all execution nodes is within a time range.

[0007] Furthermore, it also includes: building a multi-layer tree-shaped control network based on the processing nodes of the supercomputing cluster, the tree-shaped control network includes a top-level main control node, a middle-level intermediate control node and a bottom-level execution node; storing all undecomposed large tasks and the task packages in a task pool held by the main control node; when the task is running, the main control node assigns the task in the task pool to the intermediate control node to form a task queue of the intermediate control node; and the intermediate control node assigns the task in the task queue to the execution node controlled by the intermediate control node.

[0008] Preferably, the task allocation operation is performed in an asynchronous dispatching manner, and each task allocation operation allocates a task package to a processing node.

[0009] Furthermore, it also includes: after all tasks are allocated and run, tasks that failed to execute are collected, and a part of the execution nodes are selected for task reallocation and re-running.

[0010] The present invention also proposes a cluster task scheduling device for density functional calculations, including: a task decomposition module, used to obtain the estimated execution time of each cluster task of density functional calculations, and divide the cluster tasks into large tasks and small tasks based on the estimated execution time; decompose the large tasks that the task characteristics allow for decomposition into multiple small tasks; an allocation and operation module, used for packaging all the small tasks into multiple task packages when the tasks are running, and first allocate and run the undecomposed large tasks, and then allocate and run the task packages in order from large to small; wherein, the task packages satisfy that the total execution time of the task processes of all execution nodes is within a time range.

[0011] Furthermore, the allocation and operation module includes: a scheduling network construction module, which is used to build a multi-layer tree-shaped control network based on the processing nodes of the supercomputing cluster, and the tree-shaped control network includes a top-level main control node, an intermediate control node in the middle layer, and an execution node in the bottom layer; all undecomposed large tasks and the task packages are stored in a task pool held by the main control node; when the task is running, the allocation and operation module allocates the tasks in the task pool to the intermediate control node through the main control node to form a task queue of the intermediate control node; and allocates the tasks in the task queue to the execution node controlled by the intermediate control node through the intermediate control node.

[0012] Preferably, the allocation and operation module performs task allocation operations in an asynchronous dispatching manner, and each task allocation operation allocates a task package to a processing node.

[0013] Furthermore, it also includes: a re-running module, which is used to collect failed tasks after all tasks are allocated and run, and select a part of the execution nodes for task reallocation and re-running.

[0014] The present invention also provides an electronic device, comprising the cluster task scheduling device for density functional calculation as described above.

[0015] The present invention also proposes a computer-readable storage medium storing computer-executable instructions, characterized in that when the computer-executable instructions are executed, the cluster task scheduling method for density functional calculation as described above is implemented.

[0016] The task scheduling method of the present invention can well cope with the characteristics of batch tasks described in the background technology, and has load balancing scheduling based on task load evaluation, decomposition and reordering, variable-length task group packaging, error tolerance mechanism, large-scale scalability of hierarchical expansion and high parallel efficiency. At the same time, the task scheduling method has certain flexibility and is suitable for batch task scheduling with similar characteristics in other fields. BRIEF DESCRIPTION OF THE DRAWINGS

[0017] Figure 1 It is a flow chart of the task scheduling method of the present invention.

[0018] Figure 2 It is a schematic diagram of the hierarchical structure of the task scheduling system of the present invention.

[0019] Figure 3 It is a schematic diagram of the total execution time of the execution node of the present invention.

[0020] Figure 4 It is a schematic diagram of the execution state of the execution node of the present invention.

[0021] Figure 5It is a schematic diagram of a cluster task scheduling device for density functional calculations of the present invention.

[0022] Figure 6 It is a schematic diagram of an electronic device of the present invention.

[0023] Figure 7 It is a schematic diagram of the hardware structure of an electronic device of the present invention.

[0024] Wherein, the accompanying drawings are marked as follows:

[0025] 100: Electronic equipment 10: Cluster task scheduling device

[0026] 11: Scheduling network building module 12: Task decomposition module

[0027] 13: Allocate running module 14: Re-run module

[0028] S101, S102, S103, S104, S105, S106, S107, S108, S109, S110, S111: Steps DETAILED DESCRIPTION

[0029] In order to make the purpose, technical solution and advantages of the present invention more clearly understood, the present invention is further described in detail below in conjunction with the accompanying drawings. It should be understood that the specific implementation method described herein is only used to explain the present invention and is not used to limit the present invention.

[0030] It should be noted that, in this application, relational terms such as first and second, etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "include", "comprises" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device.

[0031] Without more constraints, an element defined by the phrase "comprising a..." does not exclude the existence of other identical elements in the process, method, article or apparatus comprising the element.

[0032] In order to solve the task scheduling challenges brought about by the characteristics of batch tasks, namely, the large difference in the computing amount of each task, the short minimum task time, the possibility of task errors, and the large range of cluster node expansion, the inventors designed a large-scale scalable task scheduling method with load balancing scheduling based on task load evaluation, decomposition and reordering, variable-length task group packaging, error tolerance mechanism, and hierarchical expansion. The method has error tolerance capability, high resource utilization efficiency and expansion efficiency.

[0033] The cluster task scheduling method for density functional calculation of the present invention is a load balancing scheduling based on fuzzy evaluation, decomposition and reordering of task load. Before the batch task is started, all tasks are first scanned, the calculation amount of each task is evaluated based on the task characteristics, and then sorted from large to small according to the calculation amount. When the task characteristics allow, sufficient small tasks are decomposed. When the batch task is running, the tasks with large calculation amount are scheduled first, so that a large number of small tasks are executed in the later stage of the batch task running, so that different processes obtain similar total execution time. In addition, when the batch task is running, variable-length task groups are packaged and asynchronously dispatched, that is, if there are a large number of small tasks in the batch task and it is in the early and middle stages of the batch task running, the control node dynamically packages multiple small tasks and then sends them to the task node asynchronously, so as to avoid too many tasks exceeding the sending capacity of the control node and avoid the task node from being blocked due to lack of tasks. The present invention also adopts a hierarchical expansion control system, by constructing a tree node list, each upper control node controls a limited number of lower nodes until the task node, and the number of nodes and the number of levels controlled by each control node are scaled with the cluster scale. The upper control node is responsible for dispatching tasks to the nodes of the lower layer step by step. The hierarchical expansion design pattern can effectively adapt to clusters of different sizes, maintain the locality of middle and lower-level nodes in cluster partitions, reduce the pressure on upper-level nodes, and enhance scalability.

[0034] In the first embodiment of the present invention, a cluster task scheduling method for density functional calculation is proposed, which can be applied to run batch macromolecular density functional calculation tasks and batch tasks with similar characteristics on supercomputing clusters. Figure 1 , see the hierarchical structure diagram of the task scheduling system Figure 2 The task scheduling method of the present invention specifically includes:

[0035] 1. Parameter setting part

[0036] S101, Scheduling system parameter settings. According to the cluster size (number of processes) and network communication capability used, the number of control network layers and the size of each layer are adjusted. According to the task characteristics, the threshold of task re-decomposition and the package size and reduction coefficient of variable-length task groups are adjusted. According to the task accuracy and computing node stability, the error tolerance threshold is adjusted.

[0037] 2. Task preprocessing

[0038] S102, fuzzy evaluation of task load. In the batch task preprocessing stage, the batch task group is first fuzzy evaluated to obtain the estimated execution time of each task, and all tasks are sorted in descending order from large to small according to the estimated time, allowing a certain deviation in the estimated time. Sorting in descending order by task volume is beneficial to load balancing at the end of the task, avoiding the situation where a process is executing a large task while other processes are busy waiting.

[0039] S103, task re-decomposition. According to the estimated time of the task, all tasks are divided into large tasks and small tasks. If the task characteristics allow, some large and medium tasks of the collection are decomposed. For example, a molecule can be decomposed into several independent small tasks by performing a full-directional differential density functional on it. The purpose of task re-decomposition is to execute a large number of small tasks / task packages in the later stage of batch task running, so that different processes can obtain similar total execution time, such as Figure 3 Here, “similar” means that the difference in total execution time of different processes is controlled within a range, such as ±5%.

[0040] 3. Task running part

[0041] S104, constructing a hierarchical control network. The task scheduling system has a multi-layer tree-shaped control network structure, and each upper-layer control node controls a number of lower-layer nodes until the execution node. Figure 2 The left part of the diagram shows a three-layer control network structure, including a master node, several control nodes controlled by the master node, and several execution nodes controlled by the control node. When the task scheduling system is running, it will build a network and group through the message passing interface, and perform communication tests.

[0042] S105, task analysis during runtime: The upper control node analyzes the pre-processed tasks and is only responsible for task information distribution, while the lower control node analyzes the entity information and resources of each task.

[0043] S106, packaging of variable-length task groups. The batch tasks are formally processed, and the original small tasks in the batch task group and the small tasks decomposed from the large tasks are packaged, so that all small tasks are packaged into multiple task packages, all task packages are smaller than large tasks, and are divided into medium-sized task packages and small task packages according to the size of the task packages. Independent small tasks are regarded as small task packages packaged into a small task.

[0044] S107, asynchronous task dispatching. Task dispatching is asynchronous to reduce the blocking time of the control node, such as Figure 2As shown in the right part, the upper control node holds a larger task pool, and the lower control node holds a smaller task queue, which is asynchronously sent to the lower nodes through the load balancer. The load balancer batches several tasks according to the hierarchical level, current load, and task computing characteristics, and sends one task package each time, reducing the number of sends to reduce the overhead of round-trip communication and the busy waiting time of the lower nodes. In addition, the task is sent in order from large to small, that is, the undecomposed large tasks are first sent and assigned to the lowest execution nodes, and then the task packages are sent in order from large to small to the lowest execution nodes, so that the execution nodes execute tasks in the order of large tasks-medium-sized task packages-small task packages, such as Figure 4 shown.

[0045] S108, task result collection: After the execution node completes the task through the fault-tolerant execution unit, the task results are sent and summarized step by step.

[0046] S109, judgment and verification. Check the current task system status and the summarized task results, and return to S106 to assign new tasks. A small number of tasks that cannot be successfully executed (failed tasks) will be transferred to S110 for processing.

[0047] 4. Post-task processing

[0048] S110, retrying failed tasks. After the task scheduling system is completed, retrying failed tasks individually, using a smaller cluster scale, such as selecting some execution nodes to run failed tasks, to reduce the waste of machine time of large clusters when the error tasks are running.

[0049] S111, summarize the final results.

[0050] In general, the task scheduling method of the present invention can well cope with the characteristics of batch tasks described in the background technology, and has load balancing scheduling based on task load evaluation, decomposition and reordering, variable-length task group packaging, error tolerance mechanism, large-scale scalability of hierarchical expansion and high parallel efficiency. At the same time, the task scheduling method has certain flexibility and is suitable for batch task scheduling with similar characteristics in other fields.

[0051] It should be noted that, in various embodiments of the present invention, the sequence numbers of the above steps do not mean the order of execution. The order of execution of the steps should be determined by their functions and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present invention.

[0052] The following is a system embodiment corresponding to the above method embodiment. This embodiment can be implemented in conjunction with the above embodiment. The relevant technical details mentioned in the above embodiment are still valid in this embodiment. In order to reduce repetition, they are not repeated here. Accordingly, the relevant technical details mentioned in this embodiment can also be applied in the above embodiment.

[0053] Figure 5 Schematic diagram of the cluster task scheduling device for density functional calculation of the present invention. Figure 3 As shown, in the second embodiment of the present invention, a cluster task scheduling device 10 for density functional calculation is proposed, comprising:

[0054] The scheduling network construction module 11 is used to construct a multi-layer tree-shaped control network based on the processing nodes of the supercomputing cluster, and the tree-shaped control network includes a main control node at the top layer, an intermediate control node at the middle layer, and an execution node at the bottom layer;

[0055] The task decomposition module 12 is used to obtain the estimated execution time of each cluster task of the density functional calculation, divide the cluster task into large tasks and small tasks based on the estimated execution time; and decompose the large task whose task characteristics allow decomposition into multiple small tasks.

[0056] The allocation and operation module 13 is used to package all the small tasks into multiple task packages during task operation, and allocate and operate the tasks in the order of large tasks first and then task packages; wherein the task package satisfies that the total execution time of the task processes of all execution nodes is within a time range.

[0057] Specifically, when the task is running, the allocation and operation module 13 first stores all the undecomposed large tasks and the task package in the task pool held by the main control node; then the tasks in the task pool are allocated to the intermediate control node through the main control node to form the task queue of the intermediate control node; and then the tasks in the task queue are allocated to the execution node controlled by the intermediate control node through the intermediate control node.

[0058] When allocating tasks, the allocation and operation module 13 performs task allocation operations in an asynchronous dispatching manner, and each task allocation operation allocates a task package to a processing node.

[0059] The re-running module 14 is used to collect the failed tasks after all the tasks are allocated and run, and select a part of the execution nodes for task reallocation and re-running.

[0060] In the third embodiment of the present invention, a computer-readable storage medium is proposed. The cluster task scheduling device for density functional calculation of the present invention, if its function is implemented in the form of a software function unit and sold or used as an independent product, can be stored in a computer-readable storage medium. Based on such an understanding, the technical solution of the present invention, in essence, or the part that contributes to the prior art or the part of the technical solution, can be embodied in the form of a software product, and the computer software product is stored in a computer-readable storage medium, including a number of instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present invention. Therefore, in the third embodiment of the present invention, a computer-readable storage medium is provided for storing a computer program for executing a cluster task scheduling method for density functional calculation. It should be understood that the computer-readable storage medium in the embodiment of the present invention can be a volatile memory and / or a non-volatile memory. Among them, the non-volatile memory can be a read-only memory (ROM), a programmable ROM (PROM), an erasable PROM (EPROM), an electrically erasable programmable read-only memory (EEPROM) or a flash memory. The volatile memory can be a random access memory (RAM), which is used as an external cache. By way of example but not limitation, many forms of random access memory (RAM) are available, such as static random access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous connection dynamic random access memory (SLDRAM) and direct memory bus random access memory (DR RAM).

[0061] Figure 6 Schematic diagram of an electronic device of the present invention. Figure 6As shown, in the fourth embodiment of the present invention, an electronic device 100 is proposed, including a cluster task scheduling device for density functional calculation as described above. A person of ordinary skill in the art can understand that all or part of the steps in the above method can be completed by instructing related hardware (such as a processor, FPGA, ASIC, etc.) through a program. All or part of the steps of the above embodiment can also be implemented using one or more integrated circuits. Accordingly, each module in the above embodiment can be implemented in the form of hardware, such as implementing its corresponding functions through an integrated circuit, or in the form of a software function module, such as implementing its corresponding functions through a processor executing a program / instruction stored in a memory. The embodiments of the present invention are not limited to any specific form of combination of hardware and software.

[0062] It should be noted that the structure of the electronic device shown in the drawings of the present invention does not constitute a limitation thereto, and the actual knowledge structure recognition device may include more or fewer components than shown in the drawings, or a combination of certain components, or a different arrangement of components.

[0063] The electronic device of the present invention may be any device with data processing capability, and the device with data processing capability may be a device or apparatus such as a computer. The device embodiment may be implemented by software, or by hardware or a combination of software and hardware. Taking software implementation as an example, as a device in a logical sense, the processor of any device with data processing capability reads the corresponding computer program instructions in the non-volatile memory into the memory and runs the instructions. Figure 7 This is a schematic diagram of the hardware structure of an electronic device of the present invention. Figure 7 As shown in the figure, from the hardware level, it is a hardware structure diagram of any device with data processing capability where the cluster task scheduling device for density functional calculation of the present invention is located, except Figure 7 In addition to the processor, memory, network interface, and non-volatile memory shown, any device with data processing capabilities in which the apparatus in the embodiments is located may also include other hardware, generally based on the actual functions of the device with data processing capabilities, which will not be described in detail.

[0064] When implemented using software, the above embodiments may be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions or computer programs. When the computer instructions or computer programs are loaded or executed on a computer, the process or function described in the embodiment of the present invention is generated in whole or in part. The computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions may be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions may be transmitted from one website site, computer, server or data center to another website site, computer, server or data center by wired (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium may be any available medium that a computer can access or a data storage device such as a server or data center that includes one or more available media sets. The available medium may be a magnetic medium (e.g., a floppy disk, a hard disk, a tape), an optical medium (e.g., a DVD), or a semiconductor medium. The semiconductor medium may be a solid-state hard disk.

[0065] The task scheduling method for density functional calculations of the present invention has completed the calculation of billions of tasks for large protein molecules on a domestic 100P-class supercomputer, and has been evaluated on a domestic E-class supercomputer, achieving an expansion efficiency of 99.6% on 12,000 to 96,000 processes, with excellent performance.

[0066] The above implementation modes are only used to illustrate the present invention, but not to limit the present invention. Ordinary technicians in the relevant technical field can make various changes and modifications without departing from the spirit and scope of the present invention. Therefore, all equivalent technical solutions also belong to the scope of the present invention. The patent protection scope of the present invention should be defined by the claims.

Claims

1. A cluster task scheduling method for density functional calculation, characterized in that: include: Obtain an estimated execution time of each cluster task of density functional calculation, and divide the cluster task into large tasks and small tasks based on the estimated execution time; decompose a large task that can be decomposed by task characteristics into multiple small tasks; When the task is running, all the small tasks are packaged into multiple task packages, and the undecomposed large tasks are allocated and run first, and then the task packages are allocated and run in order from large to small; wherein, the task package satisfies that the total execution time of the task processes of all execution nodes is within a time range.

2. The cluster task scheduling method according to claim 1, characterized in that: Also includes: A multi-layer tree-shaped control network is constructed based on the processing nodes of the supercomputing cluster, the tree-shaped control network includes a main control node at the top layer, intermediate control nodes at the middle layer, and execution nodes at the bottom layer; all the undecomposed large tasks and the task packages are stored in a task pool held by the main control node; When the task is running, the main control node allocates the tasks in the task pool to the intermediate control node to form a task queue of the intermediate control node; the intermediate control node allocates the tasks in the task queue to the execution node controlled by the intermediate control node.

3. The cluster task scheduling method according to claim 2, characterized in that: The task allocation operation is performed in an asynchronous dispatching manner, and each task allocation operation allocates a task package to a processing node.

4. The cluster task scheduling method according to claim 1, characterized in that: Also includes: After all tasks are assigned and run, the failed tasks are collected and a portion of the execution nodes are selected for task reallocation and re-running.

5. A cluster task scheduling device for density functional calculation, characterized in that: include: A task decomposition module is used to obtain the estimated execution time of each cluster task of density functional calculation, and divide the cluster task into large tasks and small tasks based on the estimated execution time; decompose a large task whose task characteristics allow decomposition into multiple small tasks; The allocation and operation module is used to package all the small tasks into multiple task packages when the tasks are running, and first allocate and run the undecomposed large tasks, and then allocate and run the task packages in order from large to small; wherein, the task package satisfies that the total execution time of the task processes of all execution nodes is within a time range.

6. The cluster task scheduling device according to claim 5, characterized in that: The allocation operation module includes: A scheduling network construction module is used to construct a multi-layer tree-shaped control network based on the processing nodes of the supercomputing cluster, and the tree-shaped control network includes a main control node at the top layer, intermediate control nodes at the middle layer, and execution nodes at the bottom layer; When the task is running, all the undecomposed large tasks and the task packages are stored in the task pool held by the main control node; the allocation operation module allocates the tasks in the task pool to the intermediate control node through the main control node to form a task queue of the intermediate control node; and allocates the tasks in the task queue to the execution node controlled by the intermediate control node through the intermediate control node.

7. The cluster task scheduling device according to claim 6, characterized in that: The allocation operation module uses an asynchronous dispatching method to perform task allocation operations, and each task allocation operation allocates a task package to a processing node.

8. The cluster task scheduling device according to claim 5, characterized in that: Also includes: The re-run module is used to collect failed tasks after all tasks are assigned and run, and select a part of the execution nodes for task reallocation and re-running.

9. An electronic device, comprising the cluster task scheduling device for density functional calculation according to any one of claims 5 to 8.

10. A computer-readable storage medium storing computer-executable instructions, characterized in that: When the computer executable instructions are executed, the cluster task scheduling method for density functional calculation according to any one of claims 1 to 4 is implemented.