IP Library Granted Patent US 11,429,436
Granted Patent B2
US 11,429,436 · App. 16/888,791 · Granted Aug 30, 2022

Method, device and computer program product for determining execution progress of task

Inventors: Xiaoliang Zhu (Shanghai, CN); Ming Zhang (Shanghai, CN); Jing Yu (Shanghai, CN); Yongsheng Guo (Shanghai, CN); Min Liu (Shanghai, CN)
Assignee: EMC IP Holding Company LLC
G06F9/4881G06F11/3495
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,429,436
App. No.
16/888,791
Granted
Aug 30, 2022
Kind
B2
Abstract

Embodiments of the present disclosure relate to a method, a device, and a computer program product for determining an execution progress of tasks. The method includes determining, according to a determination that a task is executed, whether historical execution information of the task is available. The method further includes determining the expected execution duration of the task based on the historical execution information of the task according to a determination that the historical execution information of the task is available. The method further includes determining the duration of completed execution for the task based on the time point at which execution of the task begins and the current time point. The method further includes determining the execution progress of the task based on the expected execution duration and the completed execution duration.

Claims (71)

1. A method for determining execution progress of tasks, comprising:

obtaining historical execution information of a task from a storage apparatus of a computing device;

determining an expected execution duration of the task based on the historical execution information of the task, wherein determining the expected execution duration comprises:

determining, based on the historical execution information, a number of times the task has been executed and a set of historical execution durations corresponding to respective executions;

determining that the number of times is above a threshold number;

selecting a predetermined number of historical execution durations from the set of historical execution durations in response to the number of times being above the threshold number; and

determining the expected execution duration by performing an operation on the predetermined number of historical execution durations;

determining a completed execution duration for the task based on a starting time point at which execution of the task began and a current time point;

determining an execution progress of the task based on the expected execution duration and the completed execution duration, wherein the execution progress is more accurate than a progress based solely on the completed execution; and

providing the execution progress to a user of the computing device.

2. The method of claim 1 , wherein determining the expected execution duration further comprises:

determining, based on the historical execution information, a second number of times the task has been executed and a second set of historical execution durations corresponding to respective executions;

determining that the second number of times is below a second threshold number;

determining the expected execution duration by performing a second operation on the second set of historical execution durations in response to the second number of times not being above the threshold number.

3. The method of claim 1 , further comprising:

determining a first number of sub-tasks comprised in a second task according to a determination that second historical execution information for the second task is not available;

determining a second number of completed sub-tasks in the second task;

determining a degree of completion of sub-tasks being executed in the second task; and

determining the execution progress of the second task based on the first number, the second number, and the degree of completion.

4. The method of claim 1 , further comprising:

determining whether the execution progress indicates that the task has been completed; and

according to a determination that the execution progress indicates the task has been completed, determining whether the task has actually been completed; and

setting the execution progress to a predetermined value according to a determination that the task has not actually been completed.

5. An electronic device, comprising:

a processor; and

a memory storing computer program instructions, the processor running the computer program instructions in the memory to control the electronic device to perform a method, the method comprising:

obtaining historical execution information of a task from a storage apparatus of a computing device;

determining an expected execution duration of the task based on the historical execution information of the task, wherein determining the expected execution duration comprises:

determining, based on the historical execution information, a number of times the task has been executed and a set of historical execution durations corresponding to respective executions;

determining that the number of times is above a threshold number;

selecting a predetermined number of historical execution durations from the set of historical execution durations in response to the number of times being above the threshold number; and

determining the expected execution duration by performing an operation on the predetermined number of historical execution durations;

determining a completed execution duration for the task based on a starting time point at which execution of the task began and a current time point;

determining an execution progress of the task based on the expected execution duration and the completed execution duration, wherein the execution progress is more accurate than a progress based solely on the completed execution; and

providing the execution progress to a user of the computing device.

6. The electronic device of claim 5 , wherein determining the expected execution duration further comprises:

determining, based on the historical execution information, a second number of times the task has been executed and a second set of historical execution durations corresponding to respective executions;

determining that the second number of times is below a second threshold number;

determining the expected execution duration by performing a second operation on the second set of historical execution durations in response to the second number of times not being above the threshold number.

7. The electronic device of claim 5 , wherein the method further comprises:

determining a first number of sub-tasks comprised in a second task according to a determination that second historical execution information for the second task is not available;

determining a second number of completed sub-tasks in the second task;

determining a degree of completion of sub-tasks being executed in the second task; and

determining the execution progress of the second task based on the first number, the second number, and the degree of completion.

8. The electronic device of claim 5 , wherein the method further comprises:

determining whether the execution progress indicates that the task has been completed; and

according to a determination that the execution progress indicates the task has been completed, determining whether the task has actually been completed; and

setting the execution progress to a predetermined value according to a determination that the task has not actually been completed.

9. A computer program product tangibly stored in a non-transitory computer-readable medium and comprising machine-executable instructions, wherein when executed, the machine-executable instructions cause a machine to perform a method comprising:

obtaining historical execution information of a task from a storage apparatus of a computing device;

determining an expected execution duration of the task based on the historical execution information of the task, wherein determining the expected execution duration comprises:

determining, based on the historical execution information, a number of times the task has been executed and a set of historical execution durations corresponding to respective executions;

determining that the number of times is above a threshold number;

selecting a predetermined number of historical execution durations from the set of historical execution durations in response to the number of times being above the threshold number; and

determining the expected execution duration by performing an operation on the predetermined number of historical execution durations;

determining a completed execution duration for the task based on a starting time point at which execution of the task began and a current time point;

determining an execution progress of the task based on the expected execution duration and the completed execution duration, wherein the execution progress is more accurate than a progress based solely on the completed execution; and

providing the execution progress to a user of the computing device.

10. The computer program product of claim 9 , wherein determining the expected execution duration further comprises:

determining, based on the historical execution information, a second number of times the task has been executed and a second set of historical execution durations corresponding to respective executions;

determining that the second number of times is below a second threshold number;

determining the expected execution duration by performing a second operation on the second set of historical execution durations in response to the second number of times not being above the threshold number.

11. The computer program product of claim 9 , wherein the method further comprises:

determining a first number of sub-tasks comprised in a second task according to a determination that second historical execution information for the second task is not available;

determining a second number of completed sub-tasks in the second task;

determining a degree of completion of sub-tasks being executed in the second task; and

determining the execution progress of the second task based on the first number, the second number, and the degree of completion.

12. The computer program product of claim 9 , wherein the method further comprises:

determining whether the execution progress indicates that the task has been completed; and

according to a determination that the execution progress indicates the task has been completed, determining whether the task has actually been completed; and

setting the execution progress to a predetermined value according to a determination that the task has not actually been completed.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053578/0183) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060332/0864 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053574/0221) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060333/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053573/0535) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060333/0106 →
RELEASE OF SECURITY INTEREST AT REEL 053531 FRAME 0108 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0371 →
SECURITY INTEREST Recorded Aug 21, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 053578/0183 →
SECURITY INTEREST Recorded Aug 21, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 053573/0535 →
SECURITY INTEREST Recorded Aug 21, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 053574/0221 →
SECURITY AGREEMENT Recorded Aug 18, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 053531/0108 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 4, 2020
From: ZHU, XIAOLIANG; ZHANG, MING; YU, JING; GUO, YONGSHENG; LIU, MIN
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 052838/0397 →