Scheduling method, device, equipment and medium
By judging the active status of tasks and scheduling their performance, reasonable scheduling of GPU resources in artificial intelligence services is achieved, solving the problems of resource waste and high maintenance costs, and improving resource utilization.
Patent Information
- Application Number
- CN202211538897.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-12-01
- Publication Date
- 2025-09-12
- Estimated Expiration
- 2042-12-01
AI Technical Summary
In the existing technology, GPU resource scheduling for artificial intelligence services has problems of resource waste and high maintenance costs, especially when special effects services need to be retained even after the number of users decreases.
By judging the activity status of the task, if it is low activity (low), the task is scheduled to the schedulable fusion node pool; if it is high activity (up), performance judgment is made and idle nodes are scheduled or new nodes are created to achieve reasonable resource scheduling.
It effectively reduces idle resource waste, reduces maintenance costs, and improves resource utilization.
Smart Images

Figure CN116204285B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of artificial intelligence technology, and in particular to scheduling methods, devices, equipment, and media. Background Art
[0002] The introduction of AI and artificial intelligence services has brought us greater convenience and made it possible to achieve desired effects with simple usage and setup. However, this often comes at the cost of extensive maintenance and significant costs for programmers. AI and artificial intelligence services rely heavily on GPU performance and graphics card configurations. To enhance their value creation and product competitiveness, businesses are launching more and more services, resulting in significant backend maintenance costs and labor. Furthermore, each special effects service has a shelf life. While a large number of users may use it at launch, over time, some special effects may see a decline in usage. However, users still enjoy the experience, so these services should not be discarded. Summary of the Invention
[0003] The main purpose of the present invention is to provide a scheduling method that can reasonably schedule the GPU service corresponding to each special effect service while retaining each special effect service, thereby reducing resource waste.
[0004] A first aspect of the present invention provides a scheduling method, comprising:
[0005] Determine the active status of each preset task;
[0006] If the activity state is low, the non-fused node where the corresponding task is located is scheduled, and the schedulable fused nodes in the preset fused node pool are polled to schedule the task to the fused node;
[0007] If the active state is up, the performance of the non-fused node where the corresponding task is located is judged, and a preset idle node or a new node is scheduled to process the task.
[0008] Optionally, in a second implementation of the first aspect of the present invention, performing scheduling judgment on the non-converged node where the corresponding task is located, polling a schedulable fused node in a preset fused node pool, and scheduling the task to the fused node includes:
[0009] Determine whether the node where the task is located is a non-fusion node;
[0010] If so, perform a scaling operation;
[0011] If not, no action is taken.
[0012] Optionally, in a third implementation of the first aspect of the present invention, performing the scaling-down operation includes:
[0013] Determine whether there are fusion nodes in the pre-configured fusion node pool that meet the accommodation conditions;
[0014] If so, dispatching the task to a fusion node that can accommodate the task;
[0015] If not, the node where the task is located is divided into the fusion node pool.
[0016] Optionally, in a fourth implementation of the first aspect of the present invention, performing performance judgment on the non-converged node where the corresponding task is located and scheduling a preset idle node or a new node to process the task includes:
[0017] Determine whether the node where the task is located is a non-fusion node;
[0018] If so, a performance judgment is made;
[0019] If not, an idle node is preset or a new node is created and scheduled to process the task.
[0020] Optionally, in a fifth implementation of the first aspect of the present invention, the performance judgment includes:
[0021] Obtaining server load information of the non-converged node;
[0022] Performing simulation processing in the non-converged node and determining whether the server load information exceeds the load;
[0023] If so, output false, and schedule a preset idle node or create a new node to process the task;
[0024] If not, output true and record the maximum number of expanded copies. According to the maximum number of expanded copies, send a signal to change the non-fused node to the preset k8s cloud server.
[0025] Optionally, in a sixth implementation of the first aspect of the present invention, performing simulation processing on the non-converged node includes:
[0026] Simulating a simulation task in the non-fused node to perform concurrent processing with the task, and calculating the total time consumption;
[0027] The total time consumption is compared with a preset reference group and a reasonable value is found from the reference group.
[0028] Optionally, in a seventh implementation of the first aspect of the present invention, determining the activity status of each preset task includes:
[0029] Monitor and count the number of times the task is executed within a preset period to obtain a total task volume;
[0030] Determining whether the total task volume exceeds a preset threshold;
[0031] If so, the active state of the task is determined to be up;
[0032] If not, the activity status of the task is determined to be low.
[0033] A second aspect of the present invention provides a scheduling device, comprising:
[0034] The judgment module is used to judge the active status of each preset task;
[0035] An inactive module, configured to, if the activity state is low, determine the scheduling of the non-fused node where the corresponding task is located, poll the schedulable fused nodes in the preset fused node pool, and schedule the task to the fused node;
[0036] The active module is used to judge the performance of the non-fused node where the corresponding task is located if the active state is up, and to schedule a preset idle node or a new node to process the task.
[0037] The third aspect of the present invention provides a scheduling device, comprising: a memory and at least one processor, wherein instructions are stored in the memory, and the memory and the at least one processor are interconnected via lines; the at least one processor calls the instructions in the memory so that the scheduling device executes the above-mentioned scheduling method.
[0038] A fourth aspect of the present invention provides a computer-readable storage medium, wherein the computer-readable storage medium stores instructions, which, when executed on a computer, enable the computer to execute the above-mentioned scheduling method.
[0039] In an embodiment of the present invention, a scheduling method, apparatus, device, and medium are provided. The method includes determining the activity status of each preset task. If the activity status is low, a non-converged node where the corresponding task is located is subjected to a scheduling determination, polling a schedulable fused node in a preset fused node pool, and scheduling the task to the fused node. If the activity status is up, a performance determination is performed on the non-converged node where the corresponding task is located, and a preset idle node or a newly created node is scheduled to process the task, thereby achieving reasonable resource scheduling and reducing the redundancy of idle resources. BRIEF DESCRIPTION OF THE DRAWINGS
[0040] Figure 1 This is a schematic diagram of a first embodiment of a scheduling method according to an embodiment of the present invention;
[0041] Figure 2 Schematic diagram of a second embodiment of the scheduling method in an embodiment of the present invention;
[0042] Figure 3 Schematic diagram of a third embodiment of the scheduling method in an embodiment of the present invention;
[0043] Figure 4 Schematic diagram of a fourth embodiment of a scheduling method according to an embodiment of the present invention;
[0044] Figure 5 Schematic diagram of a fifth embodiment of a scheduling method according to an embodiment of the present invention;
[0045] Figure 6 Schematic diagram of a fifth embodiment of a scheduling method according to an embodiment of the present invention;
[0046] Figure 7 Schematic diagram of a sixth embodiment of a scheduling method according to an embodiment of the present invention;
[0047] Figure 8 A schematic diagram of an embodiment of a scheduling device in an embodiment of the present invention;
[0048] Figure 9 Schematic diagram of an embodiment of a scheduling device in an embodiment of the present invention. DETAILED DESCRIPTION
[0049] Embodiments of the present invention provide a scheduling method, apparatus, device, and medium.
[0050] The terms "first," "second," "third," "fourth," and the like in the description and claims of the present invention and in the accompanying drawings, if any, are used to distinguish similar objects and are not necessarily used to describe a particular order or precedence. It should be understood that the terms used in this manner are interchangeable where appropriate so that the embodiments described herein can be implemented in an order other than that illustrated or described herein. In addition, the terms "including" or "having" and any variations thereof are intended to cover non-exclusive inclusions. For example, a process, method, system, product, or apparatus that includes a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.
[0051] For ease of understanding, the specific process of the embodiment of the present invention is described below. Figure 1 -Attached Figure 7 , an embodiment of the scheduling method in the embodiment of the present invention includes:
[0052] 101. Determine the active status of each preset task;
[0053] In this embodiment, the task is essentially an AI special effects service, and there is also a monitor service for monitoring the AI special effects service in the same node. The monitor service has the function of starting a coroutine to obtain the job of the corresponding task in a judgment counting process through the trigger of each task execution by the service, including the overall time consumed by the task processing. It can also start a coroutine to obtain the GPU server's "ip", "video memory", "CPU", "memory" and "IO" and other indicators every minute, and store them in the memory in advance. After waiting for a period of time, the maximum value of these indicators in this time period can be written into the preset database. The traffic of the process can also be counted. Similarly, after a period of time, the average value of these traffic will be calculated and written into the database.
[0054] Furthermore, step 101 may further specifically execute:
[0055] 1011. Monitor and count the number of times the task is executed within a preset period to obtain a total task amount;
[0056] 1012. Determine whether the total task volume exceeds a preset threshold;
[0057] 1013. If yes, determine that the active state of the task is up;
[0058] 1014. If not, determine that the activity status of the task is low.
[0059] In steps 1011-1014, since the AI special effects service will have its own "shelf life", and this "shelf life" is manually controlled, in this embodiment, the AI special effects service performs a total task volume statistics on this cycle every hour of the week. This statistical calculation is processed by the built-in counter of the monitor service. After each AI special effects service is counted, it will be labeled with a numerical value, and the total task volume of these AI special effects services will be judged. If it exceeds 1,000 tasks (the preset task volume in this embodiment), this AI special effects service will be defined as an active state of up. If it does not exceed 1,000 tasks, this AI special effects service will be defined as an inactive state of low, and the AI special effects services in these two states will be expanded or merged respectively.
[0060] 102. If the activity status is low, the non-fused node where the corresponding task is located is scheduled, and a schedulable fused node in a preset fused node pool is polled to schedule the task to the fused node.
[0061] In this embodiment, the judgment standard for whether the AI special effects service is in a low inactive state is that the AI special effects service is marked with a low mark four times in a row. If an up mark appears during this period, the four low marks need to be recalculated.
[0062] Furthermore, step 102 may further specifically execute:
[0063] 1021. Determine whether the node where the task is located is a non-fusion node;
[0064] 1022. If yes, perform a scaling operation;
[0065] 1023. If not, do nothing.
[0066] In this embodiment, the node where the AI special effects service is located may be a single node for a single service, or it may be a fusion node for multiple services. It is determined whether it is a non-fusion node, that is, a single node. If not, the node where the AI special effects service is located is a fusion node, and the AI special effects service is still in a low, inactive state. In this case, no operation will be performed on it, and a scaling operation needs to be performed separately. Because it is in a low, inactive state, a service is only in the node, which will cause the server resources allocated to this node to be idle and wasted. Therefore, it is necessary to schedule this node so that the idle server resources of this node can be reasonably allocated to process other services, thereby solving resource limitations or redundant expenditures caused by uneven releases to the greatest extent.
[0067] Furthermore, step 1022 may further specifically execute:
[0068] 10221. Determine whether there are any fusion nodes in the pre-configured fusion node pool that meet the accommodation conditions.
[0069] 10222. If yes, dispatch the task to a fusion node that can accommodate the task;
[0070] 10223. If not, the node where the task is located is divided into the fusion node pool.
[0071] In steps 10221-10223, the fusion node pool will include a large number of fusion nodes. These fusion nodes may also have redundant resources that can continue to process other services. Therefore, in order to make better use of resources, it is necessary to find a fusion node in this fusion node pool that can process this AI special effects service. If there is one, the AI special effects service will be dispatched to the fusion node. If not, the node where the AI special effects service is located will be used as a preliminary fusion node. Although there is only one AI special effects service, it can reserve a position for the AI special effects service that needs to be fused later.
[0072] 103. If the active state is up, the performance of the non-fused node where the corresponding task is located is judged, and a preset idle node or a new node is scheduled to process the task.
[0073] In this embodiment, the judgment standard for whether the AI special effects service is in the active state of up is that the AI special effects service is marked with the up mark four times, and these four marks do not need to be continuous like the low mark. It only needs to be marked with the up mark four times to determine that the AI special effects service is in the active state of up.
[0074] Furthermore, step 103 may further specifically execute:
[0075] 1031. Determine whether the node where the task is located is a non-fusion node;
[0076] 1032. If yes, then perform performance judgment;
[0077] 1033. If not, preset an idle node or create a new node to schedule it to process the task.
[0078] In steps 1031-1033, the fusion node here is different from the fusion node in step 10221. This fusion node can be used to process one AI special effects service by multiple nodes, or it can be the same as the fusion node in step 10221. Therefore, when judging, if the AI special effects service is in a fusion node, it is necessary to judge the load of this fusion node. If multiple nodes are not enough to support the GPU server resource allocation of an AI special effects service, then one or more nodes can be added, or multiple AI special effects services can be separated from a single node or the number of AI special effects services can be reduced. If the AI special effects service is in a single node, performance judgment is required.
[0079] Furthermore, step 1032 may further specifically execute:
[0080] 10321. Obtain server load information of the non-converged node;
[0081] 10322. Perform simulation processing in the non-converged node and determine whether the server load information exceeds the load;
[0082] 10323. If so, output false, and schedule a preset idle node or create a new node to process the task;
[0083] 10324. If not, output true and record the maximum number of expansion copies. According to the maximum number of expansion copies, send a signal to change the non-integrated node to the pre-set k8s cloud server.
[0084] In steps 10321-10324, in this embodiment, the server load information is mainly based on the load of the GPU server (i.e., the memory occupancy), and the memory occupancy information of the non-fused node (i.e., the single node) is determined, and an additional AI special effects service is simulated in the single node. If the memory occupancy is not loaded, true is output, and the maximum number of expansion copies is recorded. A signal for changing the single node is sent to the preset k8s cloud server to change the single node to just be able to process the AI special effects service. If the memory occupancy is loaded, false is output, and it is determined whether there are extra idle GPU servers in the preset server pool. If so, the GPU server is scheduled to be used by the AI special effects service. If not, a new node needs to be recreated, and this new node still needs to send a signal to the k8s cloud server to request creation. Of course, in another embodiment, the server load information also includes the load conditions of the coexisting GPU server and CPU server. When there are no extra GPU servers, the CPU server will be called first, and then a new node needs to be recreated.
[0085] Furthermore, “performing simulation processing in the non-fused node” may further specifically include:
[0086] 103221. Simulate a simulation task in the non-fused node to perform concurrent processing with the task, and calculate the total time consumption;
[0087] 103222. Compare the total time consumption with a preset reference group and find a reasonable value from the reference group.
[0088] In steps 103221-103222, since the AI special effects service will be affected by factors such as network latency during the processing process, N different control values need to be preset in advance as a reference group during the simulation process (where N is a positive integer). For example, an AI special effects service requires 13s-15s in processing time, and adding an additional AI special effects service that occupies a high video memory rate, and processing these two AI special effects services at the same time, the processing time of each one will be longer than before, between 16s-18s. If the original AI special effects service also occupies a high video memory rate, then when processing these two AI special effects services at the same time, the processing time of each one will be even higher, between 20s-22s. The processing of the above-mentioned situations is all used as control values for simulation calculations. Therefore, the video memory occupancy and processing time obtained by subsequent simulated tasks will be compared with these control values to find a reasonable value, that is, to find a control value that is more conducive to the current running scenario as a simulation.
[0089] In an embodiment of the present invention, the activity status of each preset task is judged. If the activity status is low, the non-fused node where the corresponding task is located is scheduled, and the schedulable fused nodes in the preset fused node pool are polled to schedule the task to the fused node. If the activity status is up, the performance of the non-fused node where the corresponding task is located is judged, and a preset idle node or a new node is created to process the task, thereby realizing reasonable scheduling of resources and reducing the redundancy of idle resources.
[0090] The above describes the scheduling method in the embodiment of the present invention. The following describes the scheduling device in the embodiment of the present invention. Figure 8 In one embodiment of the present invention, a scheduling device includes:
[0091] The judging module 201 is used to judge the active state of each preset task;
[0092] The inactive module 202 is configured to, if the activity state is low, determine the scheduling of the non-fused node where the corresponding task is located, poll the schedulable fused nodes in the preset fused node pool, and schedule the task to the fused node;
[0093] The active module 203 is configured to, if the active state is up, perform a performance check on the non-converged node where the corresponding task is located, and schedule a preset idle node or a created new node to process the task.
[0094] In an embodiment of the present invention, the activity status of each preset task is judged. If the activity status is low, the non-fused node where the corresponding task is located is scheduled, and the schedulable fused nodes in the preset fused node pool are polled to schedule the task to the fused node. If the activity status is up, the performance of the non-fused node where the corresponding task is located is judged, and a preset idle node or a new node is created to process the task, thereby realizing reasonable scheduling of resources and reducing the redundancy of idle resources.
[0095] Another embodiment of the scheduling device in the embodiment of the present invention includes:
[0096] The judgment module 201 is used to judge the active state of each preset task;
[0097] The inactive module 202 is configured to, if the activity state is low, determine the scheduling of the non-fused node where the corresponding task is located, poll the schedulable fused nodes in the preset fused node pool, and schedule the task to the fused node;
[0098] The active module 203 is configured to, if the active state is up, perform a performance check on the non-converged node where the corresponding task is located, and schedule a preset idle node or a created new node to process the task.
[0099] Optionally, the judgment module 201 may further specifically execute:
[0100] Monitor and count the number of times the task is executed within a preset period to obtain a total task volume;
[0101] Determining whether the total task volume exceeds a preset threshold;
[0102] If so, the active state of the task is determined to be up;
[0103] If not, the activity status of the task is determined to be low.
[0104] Optionally, the inactive module 202 may also be specifically configured to:
[0105] Determine whether the node where the task is located is a non-fusion node;
[0106] If so, perform a scaling operation;
[0107] If not, no action is taken.
[0108] Optionally, "Perform a scale-down operation" can also be used to:
[0109] Determine whether there are fusion nodes in the pre-configured fusion node pool that meet the accommodation conditions;
[0110] If so, dispatching the task to a fusion node that can accommodate the task;
[0111] If not, the node where the task is located is divided into the fusion node pool.
[0112] Optionally, the activation module 203 may further specifically perform:
[0113] Determine whether the node where the task is located is a non-fusion node;
[0114] If so, a performance judgment is made;
[0115] If not, an idle node is preset or a new node is created and scheduled to process the task.
[0116] Optionally, "Perform performance assessment" can also be used to:
[0117] Obtaining server load information of the non-converged node;
[0118] Performing simulation processing in the non-converged node and determining whether the server load information exceeds the load;
[0119] If so, output false, and schedule a preset idle node or create a new node to process the task;
[0120] If not, output true and record the maximum number of expanded copies. According to the maximum number of expanded copies, send a signal to change the non-fused node to the preset k8s cloud server.
[0121] In an embodiment of the present invention, the activity status of each preset task is judged. If the activity status is low, the non-fused node where the corresponding task is located is scheduled, and the schedulable fused nodes in the preset fused node pool are polled to schedule the task to the fused node. If the activity status is up, the performance of the non-fused node where the corresponding task is located is judged, and a preset idle node or a new node is created to process the task, thereby realizing reasonable scheduling of resources and reducing the redundancy of idle resources.
[0122] above Figure 8 The scheduling apparatus in the embodiment of the present invention is described in detail from the perspective of modular functional entities. The scheduling device in the embodiment of the present invention is described in detail from the perspective of hardware processing.
[0123] Figure 9 3 is a schematic diagram of the structure of a scheduling device provided by an embodiment of the present invention. The scheduling device 300 may have relatively large differences due to different configurations or performances, and may include one or more central processing units, such as a CPU 310, one or more processors and memories 320, and one or more storage media 330 storing application programs 333 or data 332, such as one or more mass storage devices. Among them, the memories 320 and the storage media 330 may be temporary storage or permanent storage. The program stored in the storage medium 330 may include one or more modules not shown in the figure, and each module may include a series of instruction operations in the scheduling device 300. Furthermore, the processor 310 may be configured to communicate with the storage medium 330 to execute a series of instruction operations in the storage medium 330 on the scheduling device 300.
[0124] The scheduling device 300 may further include one or more power supplies 340, one or more wired or wireless network interfaces 350, one or more input and output interfaces 330, and / or one or more operating systems 331, such as Windows Server, Mac OS X, Unix, Linux, FreeBSD, etc. It will be understood by those skilled in the art that Figure 9The scheduling device structure shown does not constitute a limitation on the scheduling device, and may include more or fewer components than shown in the figure, or combine certain components, or arrange the components differently.
[0125] The present invention also provides a computer-readable storage medium, which may be a non-volatile computer-readable storage medium or a volatile computer-readable storage medium. The computer-readable storage medium stores instructions, which, when executed on a computer, enable the computer to execute the steps based on the scheduling method.
[0126] Those skilled in the art will clearly understand that, for the convenience and brevity of description, the specific working processes of the above-described systems, devices, and units can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
[0127] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, or the part that contributes to the existing technology, or all or part of the technical solution can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes a number of instructions for enabling a computer device, such as a personal computer, a server, or a network device, to execute all or part of the steps of the method described in each embodiment of the present invention. The aforementioned storage medium includes various media that can store program code, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk.
[0128] As described above, the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit the same. Although the present invention has been described in detail with reference to the above embodiments, those skilled in the art should understand that the technical solutions described in the above embodiments can still be modified, or some of the technical features thereof can be replaced by equivalents. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present invention.
Claims
1. A scheduling method, characterized in that: include: Determine the active status of each preset task; If the activity state is low, the non-fused node where the corresponding preset task is located is scheduled, and the schedulable fused nodes in the preset fused node pool are polled to schedule the preset task to the fused node; If the active state is up, the non-fused node where the corresponding preset task is located is judged for performance, and a preset idle node or a new node is scheduled to process the preset task; The step of performing scheduling judgment on the non-fused node where the corresponding preset task is located, polling the schedulable fused nodes in the preset fused node pool, and scheduling the preset task to the fused node includes: Determine whether the node where the preset task is located is a non-fusion node; If so, perform a scaling operation; If not, no operation will be performed; The shrinking operation includes: Determine whether there are fusion nodes in the pre-configured fusion node pool that meet the accommodation conditions; If so, dispatching the preset task to a fusion node that can accommodate the task; If not, the node where the preset task is located is divided into the fusion node pool; The performing performance judgment on the non-converged node where the corresponding preset task is located and scheduling a preset idle node or a newly created node to process the preset task includes: Determine whether the node where the preset task is located is a non-fusion node; If so, a performance judgment is made; If not, pre-set an idle node or create a new node to process the pre-set task; The performance judgment includes: Obtaining server load information of the non-converged node; Performing simulation processing in the non-converged node and determining whether the server load information exceeds the load; If so, output false, and schedule a preset idle node or create a new node to process the preset task; If not, output true and record the maximum number of expansion copies. According to the maximum number of expansion copies, send a signal to change the non-integrated node to the pre-set k8s cloud server; The performing simulation processing at the non-fusion node includes: Simulating a simulation task in the non-fused node and processing it concurrently with the preset task, and calculating the total time consumption; Comparing the total time consumption with a preset reference group and finding a reasonable value from the preset reference group; Determining the active status of each preset task includes: Monitor and count the number of times the preset task is executed within a preset period to obtain a total task volume; Determining whether the total task volume exceeds a preset threshold; If yes, then determine that the active state of the preset task is up; If not, it is determined that the activity status of the preset task is low.
2. A scheduling device, characterized in that: include: The judgment module is used to judge the active status of each preset task; an inactive module, configured to, if the activity state is low, determine the scheduling of the non-fused node where the corresponding preset task is located, poll the schedulable fused nodes in the preset fused node pool, and schedule the preset task to the fused node; An active module, configured to, if the active state is up, perform a performance judgment on the non-converged node where the corresponding preset task is located, and schedule a preset idle node or a created new node to process the preset task; The inactive module is further specifically configured to: Determine whether the node where the preset task is located is a non-fusion node; If so, perform a scaling operation; If not, no operation will be performed; The scaling operation is specifically used for: Determine whether there are fusion nodes in the pre-configured fusion node pool that meet the accommodation conditions; If so, dispatching the preset task to a fusion node that can accommodate the task; If not, the node where the preset task is located is divided into the fusion node pool; The active module also specifically performs: Determine whether the node where the preset task is located is a non-fusion node; If so, a performance judgment is made; If not, pre-set an idle node or create a new node to process the pre-set task; Performance judgment is specifically used for: Obtaining server load information of the non-converged node; Performing simulation processing in the non-converged node and determining whether the server load information exceeds the load; If so, output false, and schedule a preset idle node or create a new node to process the preset task; If not, output true and record the maximum number of expansion copies. According to the maximum number of expansion copies, send a signal to change the non-integrated node to the pre-set k8s cloud server; The simulation processing performed at the non-fusion node includes: Simulating a simulation task in the non-fused node and processing it concurrently with the preset task, and calculating the total time consumption; Comparing the total time consumption with a preset reference group and finding a reasonable value from the preset reference group; The judgment module further specifically performs: Monitor and count the number of times the preset task is executed within a preset period to obtain a total task volume; Determining whether the total task volume exceeds a preset threshold; If yes, then determine that the active state of the preset task is up; If not, it is determined that the activity status of the preset task is low.
3. A scheduling device, characterized in that: The scheduling device includes: a memory and at least one processor, wherein the memory stores instructions, and the memory and the at least one processor are interconnected via a line; The at least one processor calls the instructions in the memory to enable the device to execute the scheduling method according to claim 1.
4. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the scheduling method according to claim 1 is implemented.
Citation Information
Patent Citations
Massive working node-oriented preemptive task scheduling method and system
CN108762903A
Method and system for sharing computing power resources and storage medium
CN111949394A