IP Library Granted Patent US 11,934,871
Granted Patent B1
US 11,934,871 · App. 18/037,414 · Granted Mar 19, 2024

Task scheduling method and apparatus, electronic device, and readable storage medium

Inventors: Yaqiang Zhang (Shandong, CN); Ruyang Li (Shandong, CN); Yaqian Zhao (Shandong, CN); Rengang Li (Shandong, CN)
Assignee: INSPUR SUZHOU INTELLIGENT TECHNOLOGY CO., LTD.
G06F9/4881
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,934,871
App. No.
18/037,414
Granted
Mar 19, 2024
Kind
B1
Abstract

A task scheduling method includes: when a task requirement is obtained, splitting the task requirement to obtain the plurality of subtasks having a constraint relationship; performing execution condition detection on non-candidate subtasks, determining a non-candidate subtask that satisfies an execution condition as a candidate subtask, and putting the candidate subtask into a task queue; performing state detection on a server network composed of edge servers to obtain server state information and communication information; inputting the server state information, the communication information, and queue information corresponding to the task queue into an action value evaluation model to obtain the plurality of evaluated values respectively corresponding to the plurality of scheduling actions; and determining a target scheduling action from the plurality of scheduling actions by using the evaluated values, and scheduling the candidate subtask in the task queue on the basis of the target scheduling action.

Claims (71)

1. A method for task scheduling, comprising:

splitting a task requirement to obtain a plurality of subtasks with constraint relationships when the task requirement is acquired;

performing execution condition detection on a non-candidate subtask, determining the non-candidate subtask that meets execution conditions as a candidate subtask, and placing the candidate subtask into a task queue;

performing state detection on a server network composed of edge servers to obtain server state information and communication information;

inputting the server state information, the communication information and queue information corresponding to the task queue into an action value evaluation model to obtain a plurality of evaluation values corresponding to a plurality of scheduling actions; and

determining a target scheduling action among the plurality of scheduling actions by using the evaluation values, and scheduling the candidate subtask in the task queue based on the target scheduling action;

performing the execution condition detection on the non-candidate subtask comprises:

judging whether the non-candidate subtask is a requirement starting task;

determining that the non-candidate subtask meets the execution condition when the non-candidate subtask is the requirement starting task;

judging whether preorder tasks of the non-candidate subtask are all completely executed when the non-candidate subtask is not the requirement starting task;

determining that the non-candidate subtask meets the execution condition when the preorder tasks are all completely executed; and

determining that the non-candidate subtasks do not meet the execution condition when the preorder tasks are not all completely executed.

2. The method for task scheduling according to claim 1 , wherein performing the state detection on the server network composed of edge servers to obtain the server state information and the communication information comprises:

performing remaining calculation time detection on the edge servers to obtain the server state information; and

performing remaining transmission time detection on network channels in the server network to obtain the communication information.

3. The method for task scheduling according to claim 1 , wherein a training process of the action value evaluation model comprises:

acquiring a plurality of training data, and inputting the plurality of training data into an initial network to obtain a plurality of training evaluation values corresponding to the training data;

determining target training scheduling action by using the training evaluation values, performing task scheduling according to the target training scheduling action, and obtaining a performance parameter corresponding to the respective training data;

obtaining a target evaluation value by using the performance parameter, and obtaining a loss value by using the training evaluation values and the target evaluation value; and

updating the initial network by using the loss value, and obtaining the action value evaluation model by iterative training.

4. The method for task scheduling according to claim 3 , wherein acquiring the plurality of training data comprises:

judging whether a number of candidate training data reaches a sampling threshold;

generating new candidate training data by using the training data and the performance parameter corresponding to a last training round when the number of candidate training data reaches the sampling threshold, and randomly selecting a sampling threshold number of training data from the candidate training data;

determining latest candidate training data from the candidate training data when the number of candidate training data does not reach the sampling threshold, and inputting the latest candidate training data into the initial network to obtain the plurality of training evaluation values corresponding to respective scheduling actions;

determining a training scheduling action by using the training evaluation values, and performing the task scheduling based on the training scheduling action;

performing state detection on the server network after the task scheduling is carried out, and generating post-scheduling environment information by using obtained post-scheduling state information, post-scheduling communication information and post-scheduling queue information corresponding to the task queue; and

obtaining a training performance parameter corresponding to the training scheduling action by using the post-scheduling environmental information, generating the target training data by using the training performance parameter, the post-scheduling environmental information, the training scheduling action and the latest candidate training data, and determining the target training data as the candidate training data.

5. The method for task scheduling according to claim 4 , wherein obtaining the training performance parameter corresponding to the training scheduling action by using the post-scheduling environmental information comprises:

obtaining a task processing delay by using data processing time and data transmission time of the subtasks to be scheduled involved in the training scheduling action;

performing remaining calculation time detection on servers to be scheduled involved in the training scheduling action to obtain the remaining calculation time;

adding the task processing delay and the remaining calculation time to obtain task delays corresponding to the servers to be scheduled; and

obtaining an average delay by using the task delays, and determining the average delay as the training performance parameter.

6. The method for task scheduling according to claim 1 , wherein splitting the task requirement to obtain the plurality of subtasks with constraint relationships comprises:

performing subtask detection on the task requirement to obtain the plurality of subtasks; and

performing input data and output data detection on the plurality of subtasks to obtain a detection result, and obtaining the constraint relationships among the subtasks based on the detection result.

7. An electronic device, comprising a memory and a processor, wherein:

the memory is configured for storing a computer program; and

the processor is configured for executing the computer program to realize the method for task scheduling according to claim 1 .

8. A computer-readable storage medium, applied for storing a computer program, wherein the computer program, when executed by a processor, implements the method for task scheduling according to claim 1 .

9. The method for task scheduling according to claim 1 , wherein the task requirement is a computing task performed by using an edge computing network.

10. The method for task scheduling according to claim 1 , wherein the task requirement is expressed as:

Req={{SubTask k } k∈K ,{t w } w∈W }

wherein Subtask k represents a k-th subtask with a total of K subtasks; t w represents timing constraint and logical sequence constraint between the subtasks; and W represents a set of edges.

11. The method for task scheduling according to claim 10 , wherein for each subtask,

Subtask i ={{Dt n } n∈N ,{t w } w∈W i ,Proc}

wherein Dt n is input data obtained from other edge servers required by the subtask; N is a set of edge servers; Dt n is input data obtained from an n-th edge server; Proc is a request of the subtask for computing resources of the edge server; and W i is a set of timing constraints and logical sequence constraints corresponding to an i-th subtask.

12. The method for task scheduling according to claim 1 , wherein the constraint relationships are configured to constrain execution orders, input data and execution intervals of the subtasks.

13. The method for task scheduling according to claim 1 , wherein the preorder tasks are subtasks that has a direct constraint relationship with a certain subtask and is located before the certain subtask in a task logical order.

14. The method for task scheduling according to claim 1 , wherein the server state information is information reflecting a load pressure of a server, and the server state information comprises information about remaining computing time of the server, and usage rate information of a processor.

15. The method for task scheduling according to claim 2 , wherein the communication information is information that reflects usage of the network channels in the server network, and the communication information comprises bandwidth usage rate information of the network channels, remaining transmission time of the network channels.

16. The method for task scheduling according to claim 1 , wherein the queue information is information that reflects task situations of the candidate subtasks in the task queue, and the queue information comprises data amount of input data of the candidate subtasks and allowable waiting time corresponding to the candidate subtasks.

17. The electronic device according to claim 7 , wherein performing the state detection on the server network composed of edge servers to obtain the server state information and the communication information comprises:

performing remaining calculation time detection on the edge servers to obtain the server state information; and

performing remaining transmission time detection on network channels in the server network to obtain the communication information.

18. The electronic device according to claim 7 , wherein a training process of the action value evaluation model comprises:

acquiring a plurality of training data, and inputting the plurality of training data into an initial network to obtain a plurality of training evaluation values corresponding to the training data;

determining target training scheduling action by using the training evaluation values, performing task scheduling according to the target training scheduling action, and obtaining a performance parameter corresponding to the respective training data;

obtaining a target evaluation value by using the performance parameter, and obtaining a loss value by using the training evaluation values and the target evaluation value; and

updating the initial network by using the loss value, and obtaining the action value evaluation model by iterative training.

19. The electronic device according to claim 18 , wherein acquiring the plurality of training data comprises:

judging whether a number of candidate training data reaches a sampling threshold;

generating new candidate training data by using the training data and the performance parameter corresponding to a last training round when the number of candidate training data reaches the sampling threshold, and randomly selecting a sampling threshold number of training data from the candidate training data;

determining latest candidate training data from the candidate training data when the number of candidate training data does not reach the sampling threshold, and inputting the latest candidate training data into the initial network to obtain the plurality of training evaluation values corresponding to respective scheduling actions;

determining a training scheduling action by using the training evaluation values, and performing the task scheduling based on the training scheduling action;

performing state detection on the server network after the task scheduling is carried out, and generating post-scheduling environment information by using obtained post-scheduling state information, post-scheduling communication information and post-scheduling queue information corresponding to the task queue; and

obtaining a training performance parameter corresponding to the training scheduling action by using the post-scheduling environmental information, generating the target training data by using the training performance parameter, the post-scheduling environmental information, the training scheduling action and the latest candidate training data, and determining the target training data as the candidate training data.

20. The electronic device according to claim 19 , wherein obtaining the training performance parameter corresponding to the training scheduling action by using the post-scheduling environmental information comprises:

obtaining a task processing delay by using data processing time and data transmission time of the subtasks to be scheduled involved in the training scheduling action;

performing remaining calculation time detection on servers to be scheduled involved in the training scheduling action to obtain the remaining calculation time;

adding the task processing delay and the remaining calculation time to obtain task delays corresponding to the servers to be scheduled; and

obtaining an average delay by using the task delays, and determining the average delay as the training performance parameter.

Assignments (2)
LICENSE Recorded Jun 30, 2026
From: IEIT SYSTEMS CO., LTD
To: AIVRES SYSTEMS INC.
Reel/Frame 075857/0939 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 17, 2023
From: ZHANG, YAQIANG; LI, RUYANG; ZHAO, YAQIAN; LI, RENGANG
To: INSPUR SUZHOU INTELLIGENT TECHNOLOGY CO., LTD.
Reel/Frame 063671/0087 →
Priority Claims (1)
CN 202110606786.1 · Jun 1, 2021 · national
Cited By (1)
US 12,262,400