IP Library Granted Patent US 12,487,853
Granted Patent B2
US 12,487,853 · App. 17/933,235 · Granted Dec 2, 2025

Method, apparatus, and storage medium for scheduling tasks

Inventors: Min He (Hangzhou, CN); Xiao Zheng (Hangzhou, CN); Xin Long (Hangzhou, CN)
Assignee: Alibaba Group Holding Limited
G06F9/4887G06F9/455G06F9/45558G06F9/48G06F9/4806G06F9/4837G06F9/4843G06F9/485G06F9/4881G06F9/50
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 12,487,853
App. No.
17/933,235
Granted
Dec 2, 2025
Kind
B2
Abstract

The present disclosure provides a method, an apparatus, and a non-transitory computer readable medium for scheduling tasks. The method includes acquiring task information of a current task to be executed, the task information describing the current task to be executed; determining an execution time for the current task to be executed according to the task information; and comparing the execution time with a preset scheduling time corresponding to the current task to be executed, and adjusting an actual scheduling time corresponding to a next task to be executed according to the comparison result so as to determine whether to schedule the next task to be executed

Claims (66)

1 . A method for scheduling tasks, comprising:

acquiring task information describing a current task to be executed;

determining an execution time for the current task to be executed according to the task information;

comparing the execution time with a preset scheduling time corresponding to the current task to be executed; and

adjusting a scheduling time corresponding to a next task to be executed according to the comparison result so as to determine whether to schedule the next task to be executed;

wherein adjusting the actual scheduling time corresponding to the next task to be executed according to the comparison result comprises:

determining an excess time when the comparison result is that the execution time is greater than the preset scheduling time;

adjusting the actual scheduling time corresponding to the next task to be executed from a same source according to the excess time to obtain an updated actual scheduling time; and

using the updated actual scheduling time as an actual scheduling time for a subsequent task to be executed from the same source until a subsequent updated actual scheduling time is reduced to 0 or less;

wherein when the current task to be executed is an initial task to be executed from the same source, an actual scheduling time corresponding to the current task to be executed is the same as the actual scheduling time corresponding to the next task to be executed from the same source, and is the preset scheduling time.

2 . The method according to claim 1 , wherein acquiring the task information of a current task to be executed comprises:

acquiring the task information according to a storage address carried by the current task to be executed.

3 . The method according to claim 1 , wherein determining the execution time for the current task to be executed according to the task information comprises:

determining an execution time for executing the task information as the execution time for the current task to be executed.

4 . The method according to claim 1 , wherein determining the execution time for the current task to be executed according to the task information comprises:

inputting the task information into a preset model; and

determining an output of the preset model as the execution time.

5 . The method according to claim 1 , wherein determining the execution time for the current task to be executed according to the task information comprises:

matching the task information with multiple pieces of preset task information, and selecting a preset execution time corresponding to the matched piece of preset task information according to the matching result as the execution time.

6 . The method according to claim 1 , further comprising:

when the subsequent updated actual scheduling time is 0 or less, determining, after an arrival of a preset scheduling time corresponding to the subsequent task to be executed, not to schedule the subsequent task to be executed.

7 . The method according to claim 1 , further comprising:

when the actual scheduling time corresponding to the subsequent task to be executed is not 0 or less after being updated, determining, after the arrival of a corresponding preset scheduling time, to schedule the subsequent task to be executed according to the execution time.

8 . The method according to claim 1 , further comprising:

after determining to schedule the next task to be executed, receiving the next task to be executed, and waiting for the arrival of a corresponding preset scheduling time, and then sending the next task to be executed to a corresponding processing device so as to perform task processing according to the corresponding execution time.

9 . The method according to claim 6 , further comprising:

receiving the subsequent task to be executed and, after the arrival of the corresponding preset scheduling time, sending a task to be executed from other sources to a corresponding processing device so as to perform task processing according to a corresponding execution time.

10 . The method according to claim 9 , further comprising:

waiting for an arrival of a corresponding next preset scheduling time, and then sending the subsequent task to be executed to a corresponding processing device so as to perform task processing according to a corresponding execution time,

wherein after the arrival of the corresponding next preset scheduling time, the actual scheduling time corresponding to the subsequent task to be executed is equal to the preset scheduling time.

11 . The method according to claim 1 , wherein adjusting the actual scheduling time corresponding to a next task to be executed according to the comparison result comprises:

determining an idle time when the comparison result is that the execution time is less than the preset scheduling time;

adjusting the actual scheduling time corresponding to the next task to be executed from the same source according to the idle time to obtain an updated actual scheduling time; and

using the updated actual scheduling time as an actual scheduling time for a subsequent task to be executed from the same source.

12 . The method according to claim 11 , further comprising:

determining to schedule the next task to be executed when the comparison result is that the execution time is less than or equal to the preset scheduling time.

13 . The method according to claim 11 , further comprising:

adding, for the current task to be executed, the idle time to the actual scheduling time corresponding to the current task to be executed so as to update the corresponding actual scheduling time, and using the updated actual scheduling time as the actual scheduling time for the next task to be executed.

14 . The method according to claim 1 , wherein preset scheduling times corresponding to tasks to be executed from the same source are the same.

15 . The method according to claim 1 , wherein acquiring task information of the current task to be executed comprises:

receiving, via a communication interface, the current task to be executed sent by a virtual device.

16 . An apparatus for scheduling tasks, the apparatus comprising:

a memory configured to store instructions; and

one or more processors configured to execute the instructions to cause the apparatus to perform:

acquiring task information of a current task to be executed, the task information describing the current task to be executed;

determining an execution time for the current task to be executed according to the task information; and

comparing the execution time with a preset scheduling time corresponding to the current task to be executed, and adjusting an actual scheduling time corresponding to a next task to be executed according to the comparison result so as to determine whether to schedule the next task to be executed;

wherein adjusting the actual scheduling time corresponding to the next task to be executed according to the comparison result comprises:

determining an excess time when the comparison result is that the execution time is greater than the preset scheduling time;

adjusting the actual scheduling time corresponding to the next task to be executed from a same source according to the excess time to obtain an updated actual scheduling time; and

using the updated actual scheduling time as an actual scheduling time for a subsequent task to be executed from the same source until a subsequent updated actual scheduling time is reduced to 0 or less,

wherein when the current task to be executed is an initial task to be executed from the same source, an actual scheduling time corresponding to the current task to be executed is the same as the actual scheduling time corresponding to the next task to be executed from the same source, and is the preset scheduling time.

17 . A non-transitory computer readable medium that stores a set of instructions that is executable by one or more processors of an apparatus to cause the apparatus to initiate a method for scheduling tasks, the method comprising:

acquiring task information of a current task to be executed, the task information describing the current task to be executed;

determining an execution time for the current task to be executed according to the task information; and

comparing the execution time with a preset scheduling time corresponding to the current task to be executed, and adjusting an actual scheduling time corresponding to a next task to be executed according to the comparison result so as to determine whether to schedule the next task to be executed;

wherein adjusting the actual scheduling time corresponding to the next task to be executed according to the comparison result comprises:

determining an excess time when the comparison result is that the execution time is greater than the preset scheduling time;

adjusting the actual scheduling time corresponding to the next task to be executed from a same source according to the excess time to obtain an updated actual scheduling time; and

using the updated actual scheduling time as an actual scheduling time for a subsequent task to be executed from the same source until a subsequent updated actual scheduling time is reduced to 0 or less;

wherein when the current task to be executed is an initial task to be executed from the same source, an actual scheduling time corresponding to the current task to be executed is the same as the actual scheduling time corresponding to the next task to be executed from the same source, and is the preset scheduling time.

18 . The non-transitory computer readable medium according to claim 17 , wherein acquiring the task information of a current task to be executed comprises: acquiring the task information according to a storage address carried by the current task to be executed.

19 . The non-transitory computer readable medium according to claim 17 , wherein determining the execution time for the current task to be executed according to the task information comprises:

inputting the task information into a preset model; and

determining an output of the preset model as the execution time.

20 . The method according to claim 1 , wherein the task information comprises an execution instruction for the current task to be executed.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 21, 2026
From: ALIBABA GROUP HOLDING LIMITED
To: CLOUD INTELLIGENCE ASSETS HOLDING (SINGAPORE) PRIVATE LIMITED
Reel/Frame 075478/0225 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 7, 2022
From: HE, MIN; ZHENG, XIAO; LONG, XIN
To: ALIBABA GROUP HOLDING LIMITED
Reel/Frame 061672/0019 →
Priority Claims (1)
CN 202010475800.4 · May 29, 2020 · national
Continuity (2)
Continuation PCTCN2021094117 · May 17, 2021
Related Publication 20230048833A1 · Feb 16, 2023
References Cited (35)
US 7752622B1 · Markov · 2010 [cited by examiner]
US 10871988B1 · Gao · 2020 [cited by examiner]
US 11726817B2 · Floyd · 2023 [cited by examiner]
US 20030154234A1 · Larson · 2003 [cited by applicant]
US 20080086734A1 · Jensen · 2008 [cited by examiner]
US 20080155550A1 · Tsafrir · 2008 [cited by examiner]
US 20110154318A1 · Oshins · 2011 [cited by examiner]
US 20110154353A1 · Theroux et al. · 2011 [cited by applicant]
US 20150178126A1 · Modani · 2015 [cited by examiner]
US 20160085587A1 · Dube · 2016 [cited by examiner]
US 20160098292A1 · Boutin · 2016 [cited by examiner]
US 20200167191A1 · Yeh et al. · 2020 [cited by applicant]
CN 101615135A · 2009 [cited by applicant]
CN 106911592A · 2017 [cited by applicant]
CN 107589993A · 2018 [cited by applicant]
CN 108268312A · 2018 [cited by applicant]
CN 108319499A · 2018 [cited by applicant]
CN 108701285A · 2018 [cited by applicant]
CN 108845868A · 2018 [cited by applicant]
CN 109144680A · 2019 [cited by applicant]
CN 109491773A · 2019 [cited by applicant]
CN 109558227A · 2019 [cited by applicant]
CN 109885389A · 2019 [cited by applicant]
CN 110119306A · 2019 [cited by applicant]
CN 111190714A · 2020 [cited by applicant]
JP 2003509766A · 2003 [cited by applicant]
JP 2007510229A · 2007 [cited by applicant]
JP 2017526999A · 2017 [cited by applicant]
JP 2017538204A · 2017 [cited by applicant]
WO 2017072933A1 · 2017 [cited by applicant]
European Patent Office Communication issued for Application No. 21812045.9 the Supplementary European Search Report (EPC) and the European search opinion dated Jun. 30, 2023, 15 pages. [cited by applicant]
First Search Report issued in corresponding Chinese Application No. 202010475800.4 on Nov. 16, 2021 (2 pages). [cited by applicant]
Supplemental Search Report issued in corresponding Chinese Application No. 202010475800.4 on Mar. 14, 2022 (1 page). [cited by applicant]
PCT International Search Report and Written Opinion mailed Aug. 17, 2021, issued in corresponding International Application No. PCT/CN2021/094117 (12 pgs.). [cited by applicant]
Japanese Office Action issued in corresponding Japanese Application No. 2022-558396 on Apr. 16, 2025 (8 pages). [cited by applicant]