Techniques and architectures for efficient allocation of under-utilized resources

US11902102B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11902102-B2
Application numberUS-202217931310-A
CountryUS
Kind codeB2
Filing dateSep 12, 2022
Priority dateSep 30, 2016
Publication dateFeb 13, 2024
Grant dateFeb 13, 2024

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

In a computing environment, a set of executing processes each having associated resources are provided. Aggregate resources for the computing environment include multiple different types of resources. A utilization level for each of the resources within the computing environment is evaluated to determine an unconsumed capacity for each of the resources below a utilization threshold. The utilization threshold is resource-dependent. An indication of at least a portion of unconsumed capacity for each of the resources below the utilization threshold is gathered. The unconsumed portion for each of the resources below the utilization threshold is exposed for consumption by other executing processes.

First claim

Opening claim text (preview).

What is claimed is: 1. A method, comprising: determining, by one or more servers based at least in part on a first message transmitted by a first computing system, a first utilization level for a first individual resource within the first computing system, the first utilization level indicating an unconsumed capacity of a first resource type of the first individual resource; determining, by the one or more servers based at least in part on a second message transmitted by a second computing system, a second utilization level of a second individual resource within the second computing system, the second utilization level indicating an unconsumed capacity of the first resource type of the second individual resource; obtaining aggregate resource availability for the first resource type based, at least in part, on the first utilization level and the second utilization level; determining, by the one or more servers, predicted load information associated with the first computing system based, at least in part, on the aggregate resource availability, the predicted load information indicating a predicted load for the first resource type; and allocating, by the one or more servers, a portion of the first individual resource to a third computing system based, at least in part, on the predicted load information; wherein allocating the portion of the first individual resource to the third computing system is performed responsive to processing a request from the third computing system, the portion of the first individual resource being allocated to the third computing system until it is needed by the first computing system. 2. The method of claim 1 wherein the first individual resource comprises at least virtual memory capacity. 3. The method of claim 1 wherein the first individual resource comprises at least physical memory capacity. 4. The method of claim 1 wherein the first individual resource comprises at least virtual processor capacity. 5. The method of claim 1 wherein the first individual resource comprises at least physical processor capacity. 6. The method of claim 1 wherein the first individual resource comprises at least cache memory capacity. 7. The method of claim 1 wherein the first individual resource comprises at least database capacity. 8. A non-transitory computer-readable medium having stored thereon instructions that, when executed by one or more processors, are configurable to cause the one or more processors to: determine, by one or more servers based at least in part on a first message transmitted by a first computing system, a first utilization level for a first individual resource within the first computing system, the first utilization level indicating an unconsumed capacity of a first resource type of the first individual resource; determine, by the one or more servers based at least in part on a second message transmitted by a second computing system, a second utilization level of a second individual resource within the second computing system, the second utilization level indicating an unconsumed capacity of the first resource type of the second individual resource; obtain, by the one or more servers, aggregate resource availability for the first resource type based, at least in part, on the first utilization level and the second utilization level; determine, by the one or more servers, predicted load information associated with the first computing system based, at least in part, on the aggregate resource availability, the predicted load information indicating a predicted load for the first resource type; and allocate, by the one or more servers, a portion of the first individual resource to a third computing system based, at least in part, on the predicted load information, wherein allocating the portion of the first individual resource to the third computing system is performed responsive to processing a request from the third computing system, the portion of the first individual resource being allocated to the third computing system until it is needed by the first computing system. 9. The non-transitory computer-readable medium of claim 8 wherein the first individual resource comprises at least virtual memory capacity. 10. The non-transitory computer-readable medium of claim 8 wherein the first individual resource comprises at least physical memory capacity. 11. The non-transitory computer-readable medium of claim 8 wherein the first individual resource comprises at least virtual processor capacity. 12. The non-transitory computer-readable medium of claim 8 wherein the first individual resource comprises at least physical processor capacity. 13. The non-transitory computer-readable medium of claim 8 wherein the first individual resource comprises at least cache memory capacity. 14. The non-transitory computer-readable medium of claim 8 wherein the first individual resources comprises at least database capacity. 15. A system comprising: at least one hardware memory device; one or more hardware processors coupled with the at least one hardware memory device, the one or more hardware processors configured to: determine, by one or more servers based at least in part on a first message transmitted by a first computing system, a first utilization level for a first individual resource within the first computing system, the first utilization level indicating an unconsumed capacity of a first resource type of the first individual resource; determine, by the one or more servers based at least in part on a second message transmitted by a second computing system, a second utilization level of a second individual resource within the second computing system, the second utilization level indicating an unconsumed capacity of the first resource type of the second individual resource; obtain, by the one or more servers, aggregate resource availability for the first resource type based, at least in part, on the first utilization level and the second utilization level; determine, by the one or more servers, predicted load information associated with the first computing system based, at least in part, on the aggregate resource availability, the predicted load information indicating a predicted load for the first individual resource type; and allocate, by the one or more servers, a portion of the first individual resource to a third computing system based, at least in part, on the predicted load information, wherein allocating the portion of the first individual resource to the third computing system is performed responsive to processing a request from the third computing system, the portion of the first individual resource being allocated to the third computing system until it is needed by the first computing system. 16. The system of claim 15 wherein the first individual resource comprises at least virtual memory capacity. 17. The system of claim 15 wherein the first individual resource comprises at least physical memory capacity. 18. The system of claim 15 wherein the first individual resource comprises at least virtual processor capacity. 19. The system of claim 15 wherein the first individual resource comprises at least physical processor capacity. 20. The system of claim 15 wherein the first individual resource comprises at least cache memory capacity.

Assignees

Inventors

Classifications

  • H04L41/14Primary

    Network analysis or design · CPC title

  • Network utilisation, e.g. volume of load or congestion level · CPC title

  • by diversity reception · CPC title

  • Collecting or measuring resource availability data · CPC title

  • Electricity · mapped topic

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US11902102B2 cover?
In a computing environment, a set of executing processes each having associated resources are provided. Aggregate resources for the computing environment include multiple different types of resources. A utilization level for each of the resources within the computing environment is evaluated to determine an unconsumed capacity for each of the resources below a utilization threshold. The utiliza…
Who is the assignee on this patent?
Salesforce Com Inc, Salesforce Inc
What technology area does this patent fall under?
Primary CPC classification H04L41/14. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Feb 13 2024 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).