Infrastructure driven auto-scaling of workloads
US-2024419470-A1 · Dec 19, 2024 · US
US11966787B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11966787-B2 |
| Application number | US-202117219620-A |
| Country | US |
| Kind code | B2 |
| Filing date | Mar 31, 2021 |
| Priority date | Mar 31, 2021 |
| Publication date | Apr 23, 2024 |
| Grant date | Apr 23, 2024 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
There is disclosed in one example a computer apparatus, including: a hardware platform including a central processor unit (CPU) and a memory; and instructions encoded within the memory to instruct the CPU to: enumerate a plurality of running processes, and associate resource demands with the running processes; predict a resource starvation condition for at least one process; rank the plurality of running processes according to a dynamic ranking algorithm, wherein the ranking algorithm includes user engagement as an input for ranking a process; and according to the ranking and a safeguard algorithm, deallocate resources from a process ranked lower than the at least one process and assign the deallocated resources to the at least one process to mitigate the predicted resource starvation condition.
Opening claim text (preview).
What is claimed is: 1. A computing apparatus, comprising: an endpoint hardware platform comprising a central processor unit (CPU) circuit and a memory; and instructions encoded within the memory to instruct the CPU circuit to: enumerate a plurality of running user processes, and associate resource demands with the running user processes; predict a resource starvation condition for a selected user process, selected from the running user processes; rank the plurality of running user processes according to a multi-factor resource-wise process prioritization topology, wherein ranking comprises including device-local user interaction as an input for ranking the selected user process; and according to the ranking and a safeguard algorithm, deallocate resources from a process ranked lower than the selected user process and assign the deallocated resources to the selected user process to mitigate the predicted resource starvation condition. 2. The computing apparatus of claim 1 , wherein the instructions are further to build a topologically-ordered process graph to use as an input to the multi-factor resource-wise process prioritization topology. 3. The computing apparatus of claim 2 , wherein the topologically-ordered process graph comprises a two-dimensional matrix of process priority and resource priority. 4. The computing apparatus of claim 1 , wherein user engagement is a function of user focus time. 5. The computing apparatus of claim 1 , wherein user engagement is a function of user interactions with a user interface. 6. The computing apparatus of claim 1 , wherein user engagement is a function of data streaming duration. 7. The computing apparatus of claim 1 , wherein user engagement is a function of a usage mode. 8. The computing apparatus of claim 7 , wherein the usage mode is selected from work, leisure, or kids. 9. The computing apparatus of claim 1 , wherein the multi-factor resource-wise process prioritization topology includes a static user-assigned ranking as an input. 10. The computing apparatus of claim 1 , wherein the multi-factor resource-wise process prioritization topology includes system criticality as an input. 11. The computing apparatus of claim 1 , wherein at least some of the plurality of running user processes have a pre-assigned priority. 12. The computing apparatus of claim 1 , wherein deallocating comprises deallocating resources from a process with a higher pre-assigned priority to a process with a lower pre-assigned priority or without a pre-assigned priority. 13. At least one tangible, non-transitory computer-readable storage medium having stored thereon executable instructions to: enumerate, on an endpoint device, a plurality of running user processes having user-assigned static rankings; identify a resource starvation condition for a selected process, selected from the running user processes; dynamically rank the plurality of running user processes via a multi-factor resource-wise process prioritization topology that includes a user engagement score, wherein the user engagement score accounts for device-local user interaction with running user processes; and apply a safeguard algorithm to shift resources to the selected process from a process ranked lower by the multi-factor resource-wise process prioritization topology. 14. The at least one tangible, non-transitory computer-readable storage medium of claim 13 , wherein identifying the resource starvation condition comprises examining a process's resource utilization over a window, and resource availability over a window, and predicting a starvation condition if a difference between a maximum usage and a minimum availability within the window is less than a threshold. 15. The at least one tangible, non-transitory computer-readable storage medium of claim 13 , wherein the plurality of running user processes have a pre-assigned rank selected from 0, 1, and 2. 16. The at least one tangible, non-transitory computer-readable storage medium of claim 13 , wherein the safeguard algorithm uses a minimum of 20% availability for a resource for a process with a pre-assigned rank of 0. 17. The at least one tangible, non-transitory computer-readable storage medium of claim 13 , wherein the safeguard algorithm uses a minimum of 15% availability for a resource for a process with a pre-assigned rank of 1. 18. The at least one tangible, non-transitory computer-readable storage medium of claim 13 , wherein the safeguard algorithm uses a minimum of 5% availability for a resource for a process with a pre-assigned rank of 2. 19. A method of providing process management for an endpoint computing system, comprising: receiving static priority assignments for a plurality of n user processes of the endpoint, wherein n is an integer greater than 1; predicting that a selected process from among the plurality of user processes will encounter a resource shortage; dynamically ranking the plurality of user processes according to a multi-factor resource-wise process prioritization topology, wherein the multi-factor resource-wise process prioritization topology accounts for device-local user interaction with user processes; selecting a lower-ranked process according to the multi-factor resource-wise process prioritization topology; and shifting a resource allocation from the lower-ranked process to the selected process. 20. The method of claim 19 , wherein 2≤n≤10.
considering the load · CPC title
with variable priority · CPC title
Energy efficient computing, e.g. low power processors, power management or thermal management · CPC title
Workload prediction · CPC title
Resource availability · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.