Self-adaptive task scheduling system and method based on task priority
By dividing tasks into professional and non-professional tasks and dynamically adjusting server priorities, the problem of low task scheduling efficiency in the existing technology is solved, and efficient scheduling of tasks matches priority and computing capabilities is achieved, and system performance is improved.
Patent Information
- Application Number
- CN202411825075.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-12
- Publication Date
- 2025-01-10
- Estimated Expiration
- Not applicable · inactive patent
AI Technical Summary
In the prior art, task scheduling methods cannot dynamically adjust the execution order and priority of tasks, resulting in low task scheduling efficiency and cannot flexibly respond to changes in different test types and system loads.
By dividing tasks into professional tasks and non-professional tasks, scheduling them according to their priority calculations, dynamically adjusting server priorities, and iterating the calculation and scheduling of task priorities and server priorities through fixed time lengths, ensuring that task scheduling is the most A suitable server for processing.
It improves task execution efficiency and overall system performance, reduces task scheduling costs, and ensures that tasks match their priorities and computing capabilities.
Smart Images

Figure CN119292753A_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the technical field of task scheduling, and in particular relates to a system and method for adaptive task scheduling based on task priority. Background Art
[0002] Adaptive task scheduling is a process in which the computer balances the time, energy and computer resources required by various beam requests while meeting the relative priorities of different working modes, and selects an optimal task sequence for each scheduling interval. This scheduling strategy can adapt to dynamic environmental changes, the priorities of different working modes, and the available time, energy and computer resources, thereby optimizing resource utilization efficiency and system performance.
[0003] The priority calculation method of tasks in the prior art is fixed. For the scheduling principle, please refer to the Appendix of the specification. Figure 2 As shown in the figure, this fixed calculation method may not be able to fully adapt to the changes of different test types and different hardware environments, resulting in low task scheduling efficiency. The task queue is statically sorted before execution begins, that is, all tasks are prioritized at one time. This static sorting method may make it impossible to dynamically adjust the priority order during task execution and fail to respond to changes in system load in a timely manner. Only one scheduling strategy is provided, that is, execution is performed according to task priority. This single scheduling strategy may not be able to fully meet the needs of different test scenarios and cannot flexibly respond to various test types and task execution characteristics. Among them, priority-based task scheduling algorithms, such as the shortest job first (SJF) algorithm and the feedback scheduling algorithm, are static. They prioritize tasks before starting to execute them, and then execute them in the sorted order. Although these algorithms can improve the efficiency of task execution to a certain extent, they cannot be dynamically adjusted according to the system load and task execution status, and lack flexibility and intelligence. Or different priority calculation methods may be used between computationally intensive tasks and floating-point operation-intensive tasks, which still lack adaptability and cannot dynamically adjust the execution order and priority of tasks according to real-time changes in system load.
[0004] Therefore, how to improve the adaptive task scheduling method in the prior art to dynamically adjust the execution order and priority of tasks and improve the efficiency of task execution and the overall performance of the system is a technical problem that urgently needs to be solved. Summary of the invention
[0005] The purpose of the present invention is to provide an adaptive task scheduling system and method based on task priority, so as to improve the adaptive task scheduling method in the prior art, dynamically adjust the execution order and priority of tasks, and improve the efficiency of task execution and the overall performance of the system.
[0006] In order to solve the above technical problems, the technical solution adopted by the present invention is as follows: In a first aspect, a method for adaptive task scheduling based on task priority is provided, comprising the following steps: S1: Obtain the pending tasks within time T, and divide them into professional tasks at time T and non-professional tasks at time T, and calculate the priority of each professional task and the priority of the non-professional task at time T respectively; S2: Divide all servers into professional servers and non-professional servers, calculate the priority of the professional servers based on the professional tasks at time T, and schedule the professional tasks at time T according to the priority of the professional servers. Meanwhile, calculate the priority of the non-professional servers based on the non-professional tasks at time T, and schedule the non-professional tasks at time T according to the priority of the non-professional servers. S3: Obtain pending tasks within time T+1, and divide them into professional tasks at time T+1 and non-professional tasks at time T+1, recalculate the priorities based on the professional tasks at time T+1 and the remaining unprocessed professional tasks at time T, and recalculate the priorities based on the non-professional tasks at time T+1 and the remaining unprocessed non-professional tasks at time T; S4: Based on the recalculation result of the priorities of the professional tasks at time T+1 and the remaining unprocessed professional tasks at time T, the priority of the professional server is recalculated, and the professional tasks at time T+1 are scheduled. Meanwhile, based on the recalculation result of the priorities of the non-professional tasks at time T+1 and the remaining unprocessed non-professional tasks at time T, the priority of the non-professional server is recalculated, and the non-professional tasks at time T+1 are scheduled. S5: Iteratively execute steps S3 and S4 based on a fixed time length to achieve adaptive scheduling of all pending tasks at each moment.
[0007] Preferably, the professional server is used to process the professional tasks, and the non-professional server is used to process the non-professional tasks. The professional tasks are tasks that must be specially processed by professional servers, and the non-professional tasks are tasks that can be processed by any server.
[0008] Preferably, the specific process of calculating the priority of each professional task in step S1 is as follows: S11: extracting characteristic information related to the processing priority of each professional task, wherein the characteristic information includes importance, urgency, and effective processing period; S12: establishing a first priority queue for professional tasks based on the urgency of each professional task, wherein the first priority queue includes at least three sub-queues, wherein the first sub-queue is a very urgent task queue, the second sub-queue is an urgent task queue, and the third sub-queue is a non-urgent task queue; S13: reordering the tasks in the three subqueues based on the effective processing period of each task; S14: reordering the three reordered sub-queues based on the importance of each task; The specific process of calculating the priority of each non-professional task in step S1 is the same as the specific process of calculating the priority of each professional task mentioned above.
[0009] Preferably, the effective processing period in step S11 indicates that the corresponding task must be processed and completed within its effective processing period. If the effective processing period is exceeded, the task will be invalidated; the importance level indicates the importance of each task, which is divided into three levels: very important, important, and not important; the urgency level indicates the urgency of the task, which is divided into three levels: very urgent, urgent, and not urgent.
[0010] Preferably, the specific process of calculating the priority of the professional server based on the professional task at time T in step S2 is as follows: S21: Calculate the current computing capacity of all professional servers and the computing capacity after task scheduling, and calculate the task scheduling cost of each professional task arriving at each professional server; S22: Evaluate the comprehensive capability of each professional server based on the current computing capability of each server, the computing capability after scheduling, and the task scheduling cost, and prioritize them based on the comprehensive capability.
[0011] Preferably, the formula for calculating the current computing capacity of a professional server in step S21 is as follows: ; The computing power formula after task scheduling is as follows: ; The average computational cost formula for task scheduling is as follows: ; in, q is the number of servers, w ij Indicates j The task is in i The computation cost on each server node is i Indicates the server node number. j Indicates the task processing sequence number; The communication cost formula for task scheduling is as follows: ; in, L m is the communication startup cost, datai,k Represents a server node i arrive k The amount of communication data, B m , n is the transmission rate between adjacent server nodes, m , n is the node serial number of the adjacent server; The comprehensive capability evaluation formula of a professional server in step S22 is: P= A1+ B1- w i - c i,k ; in, w i The task scheduling cost for the professional server.
[0012] In a second aspect, an adaptive task scheduling system based on task priority is provided, which is used to implement any one of the adaptive task scheduling methods based on task priority, including a task acquisition module, a task priority calculation module, a server priority calculation module, and a task scheduling module. The task acquisition module is connected to the task priority calculation module, the task priority calculation module is connected to the server priority calculation module, the server priority calculation module is connected to the server, and the task scheduling module is connected to the task priority calculation module, the server priority calculation module and the server.
[0013] The task acquisition module is used to acquire tasks to be processed at a specified time, and divide the acquired tasks into professional tasks and non-professional tasks; the task priority calculation module is used to perform priority calculations on the divided professional tasks and non-professional tasks respectively; the server priority calculation module is used to perform priority calculations on professional servers and non-professional servers; the task scheduling module is used to perform specific task scheduling based on task priority and server priority.
[0014] Preferably, the structure of the task after priority calculation by the task priority calculation module includes the following fields: name, arrival_time, execution_time, priority, where name represents a string type, representing the name of the task; arrival_time is an integer, representing the arrival time of the task; execution_time is an integer, representing the estimated execution time of the task, priority is a floating point type, representing the priority of the task, and the initial value is 0; testType is an enumeration type, representing the test type of the task, and the test types include INTRATE, INTSPEED, FPRATE, and FPSPEED.
[0015] The beneficial effects of the present invention include: The adaptive task scheduling system and method based on task priority provided by the present invention obtains pending tasks within time T, and divides them into professional tasks at time T and non-professional tasks at time T, and calculates the corresponding priorities respectively; divides servers into professional servers and non-professional servers, calculates the priorities of professional servers and non-professional servers, and schedules tasks; obtains pending tasks within time T+1, recalculates priorities based on professional tasks at time T+1 and remaining unprocessed professional tasks at time T, and recalculates priorities; recalculates the priorities of professional servers, and schedules professional tasks at time T+1, recalculates the priorities of non-professional servers, and schedules non-professional tasks at time T+1; and implements adaptive scheduling of pending tasks based on iterative execution of fixed time length. Dynamically adjusts the execution order and priority of tasks to improve the efficiency of task execution.
[0016] First, by dividing the tasks to be processed into professional tasks and non-professional tasks, calculating the priorities of professional tasks and non-professional tasks respectively, and dividing the schedulable servers into professional servers and non-professional servers, professional tasks can be scheduled to professional servers for special processing. On the one hand, the processing efficiency of professional tasks is guaranteed, and on the other hand, it can ensure that the processing results of professional tasks meet the corresponding requirements.
[0017] Secondly, the corresponding professional tasks are scheduled based on the priority of professional tasks and professional servers, and the corresponding non-professional tasks are scheduled based on the priority of non-professional tasks and non-professional servers, so that all tasks can be adaptively scheduled to the most matching server for processing.
[0018] Thirdly, by calculating the current computing power of all professional servers and the computing power after task scheduling, and calculating the task scheduling cost of each professional task reaching each professional server; and based on the current computing power of each server, the computing power after scheduling and the task scheduling cost, the comprehensive capacity of each professional server is evaluated, and the priority is sorted based on the comprehensive capacity. The corresponding priority of the server is calculated by comprehensively considering the computing power of the server and the task scheduling cost, so that the task priority can be first assigned to the server with stronger comprehensive capacity for processing, so that the task processing efficiency is high and the processing results are better.
[0019] Thirdly, by iteratively executing the calculation of task priority and server priority and scheduling tasks based on a fixed time length, adaptive scheduling of all pending tasks at each moment can be achieved, so that tasks at each moment can be scheduled to the most appropriate server for processing, thereby improving task processing efficiency.
[0020] Finally, a detailed calculation formula is set up to calculate the task priority or server priority, making the task priority and server priority more accurate. By dynamically adjusting the execution order and priority of tasks, the efficiency of task execution and the overall performance of the system are improved, and the task scheduling cost is reduced. BRIEF DESCRIPTION OF THE DRAWINGS
[0021] Figure 1 It is a flowchart of the adaptive task scheduling method based on task priority of the present invention.
[0022] Figure 2 It is a schematic diagram of the task scheduling principle in the prior art.
[0023] Figure 3 It is a schematic diagram of the principle of adaptive task scheduling based on task priority of the present invention. DETAILED DESCRIPTION
[0024] The following is combined with Figure 1~Figure 3 The present invention is further described in detail: Example 1 See attached Figure 1 and Figure 3 As shown, an adaptive task scheduling method based on task priority includes the following steps: S1: Obtain the pending tasks within time T, and divide them into professional tasks at time T and non-professional tasks at time T, and calculate the priority of each professional task and the priority of non-professional tasks within time T. By dividing the pending tasks into professional tasks and non-professional tasks, and calculating the priorities of professional tasks and non-professional tasks respectively, the purpose is to enable professional tasks to be dispatched to professional servers for processing. Dividing the dispatchable servers into professional servers and non-professional servers allows professional tasks to be dispatched to professional servers for special processing, which guarantees the processing efficiency of professional tasks and ensures that the processing results of professional tasks meet the corresponding requirements.
[0025] S2: Divide all servers into professional servers and non-professional servers, calculate the priority of the professional server based on the professional task at time T, and schedule the professional task at time T according to the priority of the professional server. Meanwhile, calculate the priority of the non-professional server based on the non-professional task at time T, and schedule the non-professional task at time T according to the priority of the non-professional server. The professional server is used to process the professional task, and the non-professional server is used to process the non-professional task. The professional task is a task that must be specially processed by a professional server, and the non-professional task is a task that can be processed by any server. By scheduling the corresponding professional tasks based on the priority of professional tasks and the priority of professional servers, and scheduling the corresponding non-professional tasks based on the priority of non-professional tasks and the priority of non-professional servers, all tasks can be adaptively scheduled to the most matching server for processing.
[0026] S3: Get the pending tasks within T+1, and divide them into professional tasks at T+1 and non-professional tasks at T+1, recalculate the priorities based on the professional tasks at T+1 and the remaining unprocessed professional tasks at T, and recalculate the priorities based on the non-professional tasks at T+1 and the remaining unprocessed non-professional tasks at T. Since the pending tasks are increasing all the time, after the tasks at T are scheduled, the server processes the corresponding tasks received, but at the next task scheduling node T+1, there may be tasks at T that have not been processed yet, and there may be unprocessed tasks at T. Therefore, when scheduling tasks at T+1, in addition to the newly added pending tasks, it is also necessary to comprehensively schedule the unprocessed tasks at T.
[0027] S4: Based on the recalculation results of the priorities of the professional tasks at T+1 and the remaining unprocessed professional tasks at T, the priority of the professional server is recalculated, and professional tasks at T+1 are scheduled. At the same time, based on the recalculation results of the priorities of the non-professional tasks at T+1 and the remaining unprocessed non-professional tasks at T, the priority of the non-professional server is recalculated, and non-professional tasks at T+1 are scheduled.
[0028] S5: Iterate steps S3 and S4 based on a fixed time length to achieve adaptive scheduling of all pending tasks at each moment. Iterate the calculation of task priority and server priority and schedule tasks based on a fixed time length to achieve adaptive scheduling of all pending tasks at each moment, so that tasks at each moment can be scheduled to the most appropriate server for processing, improving task processing efficiency Example 2 Based on Example 1, the specific process of calculating the priority of each professional task in step S1 is as follows: S11: Extracting feature information related to the processing priority of each professional task, the feature information includes importance, urgency, and effective processing period. Since the processing priority of a task is mainly related to its importance, urgency, and effective processing period, when performing priority calculation, the features of importance, urgency, and effective processing period related to the priority of each task must first be extracted to provide a data basis for subsequent priority calculation.
[0029] S12: Establish a first priority queue for professional tasks based on the urgency of each professional task, wherein the first priority queue includes at least three sub-queues, wherein the first sub-queue is a very urgent task queue, the second sub-queue is an urgent task queue, and the third sub-queue is a non-urgent task queue. The order of the created queues represents the corresponding priority of the tasks, and thus the corresponding task priority is given by creating a queue.
[0030] S13: Reorder the tasks in the three sub-queues based on the effective processing period of each task. Since the task priority cannot be completely and accurately arranged based on the urgency of the task alone, the tasks in each sub-queue need to be reordered based on the effective processing period, that is, re-assigned priority.
[0031] S14: re-ordering the three re-ordered sub-queues based on the importance of each task, and further re-ordering the queues based on the importance of the tasks.
[0032] The specific process of calculating the priority of each non-professional task in step S1 is the same as the specific process of calculating the priority of each professional task mentioned above. The effective processing period in step S11 means that the corresponding task must be processed and completed within its effective processing period. If the effective processing period is exceeded, the task will be invalidated; the importance level indicates the importance of each task, which is divided into three levels: very important, important, and not important; the urgency level indicates the urgency of the task, which is divided into three levels: very urgent, urgent, and not urgent.
[0033] Example 3 On the basis of Example 1 or Example 2, the specific process of calculating the priority of the professional server based on the professional task at time T in step S2 is as follows: S21: Calculate the current computing capacity of all professional servers and the computing capacity after task scheduling, and calculate the task scheduling cost of each professional task arriving at each professional server; S22: Evaluate the comprehensive capability of each professional server based on the current computing capability of each server, the computing capability after scheduling, and the task scheduling cost, and prioritize them based on the comprehensive capability.
[0034] The formula for calculating the current computing capacity of a professional server in step S21 is as follows: ; The computing power formula after task scheduling is as follows: ; The average computational cost formula for task scheduling is as follows: ; in, q is the number of servers, w ij Indicates j The task is in i The computation cost on each server node is i Indicates the server node number. j Indicates the task processing sequence number; The communication cost formula for task scheduling is as follows: ; in, L m is the communication startup cost, data i,k Represents a server node i arrive k The amount of communication data, B m , n is the transmission rate between adjacent server nodes, m, n is the node serial number of the adjacent server; The comprehensive capability evaluation formula of a professional server in step S22 is: P= A1+ B1- w i - c i,k ; in, w i The task scheduling cost for the professional server.
[0035] By setting a detailed calculation formula to calculate the task priority or server priority, the task priority and server priority are made more accurate. By dynamically adjusting the execution order and priority of tasks, the efficiency of task execution and the overall performance of the system are improved, and the task scheduling cost is reduced.
[0036] An adaptive task scheduling system based on task priority is used to implement any one of the adaptive task scheduling methods based on task priority, including a task acquisition module, a task priority calculation module, a server priority calculation module, and a task scheduling module. The task acquisition module is connected to the task priority calculation module, the task priority calculation module is connected to the server priority calculation module, the server priority calculation module is connected to the server, and the task scheduling module is connected to the task priority calculation module, the server priority calculation module, and the server. The task acquisition module is used to acquire tasks to be processed at a specified time and divide the acquired tasks into professional tasks and non-professional tasks; the task priority calculation module is used to perform priority calculations on the divided professional tasks and non-professional tasks respectively; the server priority calculation module is used to perform priority calculations on professional servers and non-professional servers; the task scheduling module is used to perform specific task scheduling based on task priority and server priority.
[0037] Furthermore, the structure of the task after priority calculation by the task priority calculation module includes the following fields: name, arrival_time, execution_time, priority, where name represents a string type, representing the name of the task; arrival_time is an integer, representing the arrival time of the task; execution_time is an integer, representing the estimated execution time of the task, priority is a floating point type, representing the priority of the task, and the initial value is 0; testType is an enumeration type, representing the test type of the task, and the test types include INTRATE, INTSPEED, FPRATE, and FPSPEED.
[0038] In summary, the adaptive task scheduling system and method based on task priority provided by the present invention obtains pending tasks within time T, and divides them into professional tasks at time T and non-professional tasks at time T, and calculates the corresponding priorities respectively; divides the servers into professional servers and non-professional servers, calculates the priorities of professional servers and non-professional servers, and schedules tasks; obtains pending tasks within time T+1, recalculates priorities based on professional tasks at time T+1 and remaining unprocessed professional tasks at time T, and recalculates priorities; recalculates the priorities of professional servers, and schedules professional tasks at time T+1, recalculates the priorities of non-professional servers, and schedules non-professional tasks at time T+1; implements adaptive scheduling of pending tasks based on iterative execution of fixed time length. Dynamically adjusts the execution order and priority of tasks to improve the efficiency of task execution.
[0039] The present invention divides the tasks to be processed into professional tasks and non-professional tasks, calculates the priorities of professional tasks and non-professional tasks respectively, and divides the schedulable servers into professional servers and non-professional servers, so that professional tasks can be dispatched to professional servers for special processing, which guarantees the processing efficiency of professional tasks and ensures that the processing results of professional tasks meet the corresponding requirements. By scheduling the corresponding professional tasks based on the priority of professional tasks and the priority of professional servers, and scheduling the corresponding non-professional tasks based on the priority of non-professional tasks and the priority of non-professional servers, all tasks can be adaptively dispatched to the most matching server for processing.
[0040] By calculating the current computing power of all professional servers and the computing power after task scheduling, and calculating the task scheduling cost of each professional task reaching each professional server; and based on the current computing power of each server, the computing power after scheduling and the task scheduling cost, the comprehensive capacity of each professional server is evaluated, and the priority is sorted based on the comprehensive capacity. The corresponding priority of the server is calculated by comprehensively considering the computing power of the server and the task scheduling cost, so that based on the task priority, it can be first assigned to the server with stronger comprehensive capacity for processing, so that the task processing efficiency is high and the processing results are better. Based on the fixed time length, the calculation of task priority and server priority and the scheduling of tasks are iteratively executed, and the adaptive scheduling of all pending tasks at each moment can be realized, so that the tasks at each moment can be scheduled to the most suitable server for processing, improving the task processing efficiency. By setting a detailed calculation formula to calculate the task priority or server priority, the task priority and server priority are made more accurate, and by dynamically adjusting the execution order and priority of tasks, the efficiency of task execution and the overall performance of the system are improved, and the task scheduling cost is reduced.
Claims
1. An adaptive task scheduling method based on task priority, characterized in that: The following steps are involved: S1: Obtain the pending tasks within time T, and divide them into professional tasks at time T and non-professional tasks at time T, and calculate the priority of each professional task and the priority of the non-professional task at time T respectively; S2: Divide all servers into professional servers and non-professional servers, calculate the priority of the professional servers based on the professional tasks at time T, and schedule the professional tasks at time T according to the priority of the professional servers. Meanwhile, calculate the priority of the non-professional servers based on the non-professional tasks at time T, and schedule the non-professional tasks at time T according to the priority of the non-professional servers. S3: Obtain pending tasks within time T+1, and divide them into professional tasks at time T+1 and non-professional tasks at time T+1, recalculate the priorities based on the professional tasks at time T+1 and the remaining unprocessed professional tasks at time T, and recalculate the priorities based on the non-professional tasks at time T+1 and the remaining unprocessed non-professional tasks at time T; S4: Based on the recalculation result of the priorities of the professional tasks at time T+1 and the remaining unprocessed professional tasks at time T, the priority of the professional server is recalculated, and the professional tasks at time T+1 are scheduled. Meanwhile, based on the recalculation result of the priorities of the non-professional tasks at time T+1 and the remaining unprocessed non-professional tasks at time T, the priority of the non-professional server is recalculated, and the non-professional tasks at time T+1 are scheduled. S5: Iteratively execute steps S3 and S4 based on a fixed time length to achieve adaptive scheduling of all pending tasks at each moment.
2. The method for adaptive task scheduling based on task priority according to claim 1, characterized in that: The professional server is used to process the professional tasks, and the non-professional server is used to process the non-professional tasks. The professional tasks are tasks that must be processed specifically by professional servers, and the non-professional tasks are tasks that can be processed by any server.
3. The method for adaptive task scheduling based on task priority according to claim 1, characterized in that: The specific process of calculating the priority of each professional task in step S1 is as follows: S11: extracting characteristic information related to the processing priority of each professional task, wherein the characteristic information includes importance, urgency, and effective processing period; S12: establishing a first priority queue for professional tasks based on the urgency of each professional task, wherein the first priority queue includes at least three sub-queues, wherein the first sub-queue is a very urgent task queue, the second sub-queue is an urgent task queue, and the third sub-queue is a non-urgent task queue; S13: reordering the tasks in the three subqueues based on the effective processing period of each task; S14: reordering the three reordered sub-queues based on the importance of each task; The specific process of calculating the priority of each non-professional task in step S1 is the same as the specific process of calculating the priority of each professional task mentioned above.
4. The method for adaptive task scheduling based on task priority according to claim 3, characterized in that: The effective processing period in step S11 indicates that the corresponding task must be processed and completed within its effective processing period. If the effective processing period is exceeded, the task will be invalidated; the importance level indicates the importance of each task, which is divided into three levels: very important, important, and not important; the urgency level indicates the urgency of the task, which is divided into three levels: very urgent, urgent, and not urgent.
5. The method for adaptive task scheduling based on task priority according to claim 1, characterized in that: The specific process of calculating the priority of the professional server based on the professional task at time T in step S2 is as follows: S21: Calculate the current computing capacity of all professional servers and the computing capacity after task scheduling, and calculate the task scheduling cost of each professional task arriving at each professional server; S22: Evaluate the comprehensive capability of each professional server based on the current computing capability of each server, the computing capability after scheduling, and the task scheduling cost, and prioritize them based on the comprehensive capability.
6. The method for adaptive task scheduling based on task priority according to claim 5, characterized in that: The formula for calculating the current computing capacity of a professional server in step S21 is as follows: ; The computing power formula after task scheduling is as follows: ; The average computational cost formula for task scheduling is as follows: ; in, q is the number of servers, w ij Indicates j The task is in i The computation cost on each server node is i Indicates the server node number. j Indicates the task processing sequence number; The communication cost formula for task scheduling is as follows: ; in, L m is the communication startup cost, data i,k Represents a server node i arrive k The amount of communication data, B m , n is the transmission rate between adjacent server nodes, m , n is the sequence number of the adjacent server node; The comprehensive capability evaluation formula of a professional server in step S22 is: P= A1+ B1- w i - c i,k ; in, w i The task scheduling cost for the professional server.
7. An adaptive task scheduling system based on task priority, used to implement an adaptive task scheduling method based on task priority according to any one of claims 1 to 6, characterized in that: It includes a task acquisition module, a task priority calculation module, a server priority calculation module, and a task scheduling module, wherein the task acquisition module is connected to the task priority calculation module, the task priority calculation module is connected to the server priority calculation module, the server priority calculation module is connected to the server, and the task scheduling module is connected to the task priority calculation module, the server priority calculation module, and the server; The task acquisition module is used to acquire tasks to be processed at a specified time and divide the acquired tasks into professional tasks and non-professional tasks; The task priority calculation module is used to calculate the priorities of the divided professional tasks and non-professional tasks respectively; The server priority calculation module is used to perform priority calculation on professional servers and priority calculation on non-professional servers; The task scheduling module is used to perform specific task scheduling based on task priority and server priority.
8. The adaptive task scheduling system based on task priority according to claim 7, characterized in that: The structure of the task after priority calculation by the task priority calculation module contains the following fields: name, arrival_time, execution_time, priority, where name represents a string type, representing the name of the task; arrival_time is an integer, representing the arrival time of the task; execution_time is an integer, representing the estimated execution time of the task, priority is a floating point type, representing the priority of the task, and the initial value is 0; testType is an enumeration type, representing the test type of the task, and the test types include INTRATE, INTSPEED, FPRATE, and FPSPEED.
Citation Information
Patent Citations
High-concurrency service resource allocation method based on business priorities
CN106789726A
Scheduling method and device for electric power communication maintenance tasks, server and medium
CN108876140A
Distributed task priority scheduling method and system and storage medium
CN111026519A
Edge node task scheduling method and device, computer equipment and storage medium
CN114528092A
Server and interrupt-based task scheduling method
CN115048201A