IP Library Granted Patent US 11,630,706
Granted Patent B2
US 11,630,706 · App. 17/028,809 · Granted Apr 18, 2023

Adaptive limited-duration edge resource management

Inventors: Kshitij Arun Doshi (Tempe, AZ); Francesc Guim Bernat (Barcelona, ES); Ned M. Smith (Beaverton, OR); Christian Maciocco (Portland, OR)
Assignee: Intel Corporation
G06F9/5083G06F9/48G06F9/4843G06F9/4881G06F9/50G06F9/505G06F9/5005G06F9/5011G06F9/5027G06F9/5061G06F9/5072
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,630,706
App. No.
17/028,809
Granted
Apr 18, 2023
Kind
B2
Abstract

Systems and techniques for adaptive limited-duration edge resource management are described herein. Available capacity may be calculated for a resource for a node of the edge computing network based on workloads executing on the node. Available set-aside resources may be determined based on the available capacity. A service request may be received from an application executing on the edge computing node. A priority category may be determined for the service request. Set-aside resources from the available set-aside resources may be assigned to a workload associated with the service request based on the priority category.

Claims (104)

1. A system for limited duration resource allocation in an edge computing network comprising:

at least one processor; and

memory including instructions that, when executed by the at least one processor, cause the at least one processor to perform operations to:

calculate available capacity for resources of a node of the edge computing network based on workloads executing on the node;

determine available set-aside resources of the node based on the available capacity, wherein the available set-aside resources designate resources of the node to be assigned to a workload for a limited duration of time;

receive a service request from an application executing on the node;

predict a first resource release rate for the workloads executing on the node using predicted completion times of the workloads;

determine a priority category for the service request based in-part on a second resource release rate of the application, wherein the second resource release rate is determined based on attestation parameters of the application; and

assign, for a limited duration of time, a set-aside resource from the available set-aside resources of the node to a workload associated with the service request based on the priority category based on the first resource release rate.

2. The system of claim 1 , wherein the priority category is best effort and the memory further comprising instructions that cause the at least one processor to perform operations to:

assign a preemption delay to the set-aside resources assigned to the workload;

receive a second service request with a higher priority category;

reclaim the set-aside resources from the workload; and

reassign the set-aside resources to a second workload associated with the second service request.

3. The system of claim 1 , the memory further comprising instructions that cause the at least one processor to perform operations to:

set a resource preemption schedule for the set-aside resources assigned to the workload based on the priority category;

determine that the priority category of the workload has changed; and

adjust the resource preemption schedule.

4. The system of claim 1 , the memory further comprising instructions that cause the at least one processor to perform operations to:

predict a future resource availability value for the node for a future time period; and

determine the set-aside resources based in part on the future resource availability value.

5. The system of claim 4 , the memory further comprising instructions that cause the at least one processor to perform operations to:

identify execution parameters of workload tasks executing on the node;

generate a distributed execution plan for the node using the execution parameters; and

predict the future resource availability using the distributed execution plan.

6. The system of claim 1 , the memory further comprising instructions that cause the at least one processor to perform operations to:

maintain a set-aside resource availability register for the set-aside resources; and

update the set-aside resource availability register based on the set-aside resources assigned to the workload.

7. The system of claim 6 , the memory further comprising instructions that cause the at least one processor to perform operations to:

determine that there are sufficient resources available at the node;

assign resources to the workload from available resources of the node;

reclaim the set-aside resources assigned to the workload; and

adjust the set-aside resource availability register based on the set-aside resources reclaimed from the workload.

8. The system of claim 1 , the memory further comprising instructions that cause the at least one processor to perform operations to:

collect telemetry data from the node; and

evaluate the telemetry data to estimate resource usage of workloads executing on the node, wherein the available set-aside resources is determined in part using the estimated resource usage.

9. At least one non-transitory machine-readable medium including instructions for limited duration resource allocation in an edge computing network that, when executed by at least one processor, cause the at least one processor to perform operations to:

calculate available capacity for resources of a node of the edge computing network based on workloads executing on the node;

determine available set-aside resources of the node based on the available capacity, wherein the available set-aside resources designate resources of the node to be assigned to a workload for a limited duration of time;

receive a service request from an application executing on the node;

predict a first resource release rate for the workloads executing on the node using predicted completion times of the workloads;

determine a priority category for the service request based in-part on a second resource release rate of the application, wherein the second resource release rate is determined based on attestation parameters of the application; and

assign, for a limited duration of time, a set-aside resource from the available set-aside resources of the node to a workload associated with the service request based on the priority category based on the first resource release rate.

10. The at least one non-transitory machine-readable medium of claim 9 , wherein the priority category is best effort and further comprising instructions that cause the at least one processor to perform operations to:

assign a preemption delay to the set-aside resources assigned to the workload;

receive a second service request with a higher priority category;

reclaim the set-aside resources from the workload; and

reassign the set-aside resources to a second workload associated with the second service request.

11. The at least one non-transitory machine-readable medium of claim 9 , further comprising instructions that cause the at least one processor to perform operations to:

set a resource preemption schedule for the set-aside resources assigned to the workload based on the priority category;

determine that the priority category of the workload has changed; and

adjust the resource preemption schedule.

12. The at least one non-transitory machine-readable medium of claim 9 , further comprising instructions that cause the at least one processor to perform operations to:

predict a future resource availability value for the node for a future time period; and

determine the set-aside resources based in part on the future resource availability value.

13. The at least one non-transitory machine-readable medium of claim 12 , further comprising instructions that cause the at least one processor to perform operations to:

identify execution parameters of workload tasks executing on the node;

generate a distributed execution plan for the node using the execution parameters; and

predict the future resource availability using the distributed execution plan.

14. The at least one non-transitory machine-readable medium of claim 9 , further comprising instructions that cause the at least one processor to perform operations to:

maintain a set-aside resource availability register for the set-aside resources; and

update the set-aside resource availability register based on the set-aside resources assigned to the workload.

15. The at least one non-transitory machine-readable medium of claim 14 , further comprising instructions that cause the at least one processor to perform operations to:

determine that there are sufficient resources available at the node;

assign resources to the workload from available resources of the node;

reclaim the set-aside resources assigned to the workload; and

adjust the set-aside resource availability register based on the set-aside resources reclaimed from the workload.

16. The at least one non-transitory machine-readable medium of claim 9 , further comprising instructions that cause the at least one processor to perform operations to:

collect telemetry data from the node; and

evaluate the telemetry data to estimate resource usage of workloads executing on the node, wherein the available set-aside resources is determined in part using the estimated resource usage.

17. A method for limited duration resource allocation in an edge computing network comprising:

calculating available capacity for resources of a node of the edge computing network based on workloads executing on the node;

determining available set-aside resources of the node based on the available capacity, wherein the available set-aside resources designate resources of the node to be assigned to a workload for a limited duration of time;

receiving a service request from an application executing on the node;

predicting a first resource release rate for the workloads executing on the node using predicted completion times of the workloads;

determining a priority category for the service request based in-part on a second resource release rate of the application, wherein the second resource release rate is determined based on attestation parameters of the application; and

assigning, for a limited duration of time, a set-aside resource from the available set-aside resources of the node to a workload associated with the service request based on the priority category based on the first resource release rate.

18. The method of claim 17 , wherein the priority category is best effort and further comprising:

assigning a preemption delay to the set-aside resources assigned to the workload;

receiving a second service request with a higher priority category;

reclaiming the set-aside resources from the workload; and

reassigning the set-aside resources to a second workload associated with the second service request.

19. The method of claim 17 , further comprising:

setting a resource preemption schedule for the set-aside resources assigned to the workload based on the priority category;

determining that the priority category of the workload has changed; and

adjusting the resource preemption schedule.

20. The method of claim 17 , further comprising:

predicting a future resource availability value for the node for a future time period; and

determining the set-aside resources based in part on the future resource availability value.

21. The method of claim 20 , further comprising:

identifying execution parameters of workload tasks executing on the node;

generating a distributed execution plan for the node using the execution parameters; and

predicting the future resource availability using the distributed execution plan.

22. The method of claim 17 , further comprising:

maintaining a set-aside resource availability register for the set-aside resources; and

updating the set-aside resource availability register based on the set-aside resources assigned to the workload.

23. The method of claim 22 , further comprising:

determining that there are sufficient resources available at the node;

assigning resources to the workload from available resources of the node;

reclaiming the set-aside resources assigned to the workload; and

adjusting the set-aside resource availability register based on the set-aside resources reclaimed from the workload.

24. The method of claim 17 , further comprising:

collecting telemetry data from the node; and

evaluating the telemetry data to estimate resource usage of workloads executing on the node, wherein the available set-aside resources is determined in part using the estimated resource usage.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 9, 2021
From: DOSHI, KSHITIJ ARUN; GUIM BERNAT, FRANCESC; SMITH, NED M.; MACIOCCO, CHRISTIAN
To: INTEL CORPORATION
Reel/Frame 056486/0443 →
Continuity (1)
Related Publication 20210011765A1 · Jan 14, 2021
Cited By (4)
US 12,223,357 US 12,346,595 US 12,363,203 US 12,393,468