Virtual container storage interface controller
US-12175078-B2 · Dec 24, 2024 · US
US9547520B1 · US · B1
| Field | Value |
|---|---|
| Publication number | US-9547520-B1 |
| Application number | US-201514865011-A |
| Country | US |
| Kind code | B1 |
| Filing date | Sep 25, 2015 |
| Priority date | Sep 25, 2015 |
| Publication date | Jan 17, 2017 |
| Grant date | Jan 17, 2017 |
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.
The method includes estimating an amount of unused memory in a memory allocation of one or more virtual machines based on a data associated with one or more applications previously dispatched to the one or more virtual machines. The method includes receiving a request for executing a new application. The method includes estimating an amount of memory utilized by one of the one or more virtual machines to execute the new application. The method includes dispatching the new application to one of the one or more virtual machine having an amount of unused memory exceeding the estimated amount of memory required to execute the new application. The method includes updating the data associated with the one or more applications previously dispatched to the one or more virtual machines by adding an identifier of the new application to the data.
Opening claim text (preview).
What is claimed is: 1. A method for managing a computer system, the method comprising: estimating, by one or more computer processors, an amount of unused memory in a memory allocation of one or more virtual machines based on a data associated with one or more applications previously dispatched to the one or more virtual machines; receiving, by one or more computer processors, a request for executing a new application; estimating, by one or more computer processors, an amount of memory utilized by one of the one or more virtual machines to execute the new application, wherein estimating the amount of memory utilized by one or more virtual machines to execute the new application comprises: maintaining, by one or more computer processors, a register of one or more previously executed types of applications comprising an indication of an amount of memory required by a virtual machine to execute the one or more application type; identifying, by one or more computer processors, a first application type of the new application, wherein each application in the register is labeled with corresponding application type; accessing, by one or more computer processors, the register to determine that the first application type exists in the register; and utilizing, by one or more computer processors, the amount of memory required by the one or more virtual machines to execute the first application type by averaging the memory usages of all of the one or more application types in the register as estimation for the amount of memory required by the one or more virtual machines to execute the new application; identifying, by one or more computer processors, one or more virtual machines having an amount of unused memory exceeding the estimated amount of required memory to execute the new application; dispatching, by one or more computer processors, the new application to one of the one or more virtual machine having an amount of unused memory exceeding the estimated amount of memory required to execute the new application; and updating, by one or more computer processors, the data associated with the one or more applications previously dispatched to the one or more virtual machines by adding an identifier of the new application to the data. 2. The method of claim 1 , further comprising: estimating, by one or more computer processors, a duration of the executing of the new application by one of the one or more virtual machines; and determining, by one or more computer processors, a further duration before a next scheduled garbage collection. 3. The method of claim 1 , wherein estimating, by one or more computer processors, an amount of unused memory in a memory allocation of one or more virtual machines based on a data associated with one or more applications previously dispatched to the one or more virtual machines comprises: determining, by one or more computer processors, the amount of memory allocated to the one or more virtual machines; predicting, by one or more computer processors, a usage of the memory allocation by the one or more applications previously dispatched to the one or more virtual machines; and subtracting, by one or more computer processors, the predicted usage of the memory allocation by the one or more applications previously dispatched to the one or more virtual machines from the amount of memory allocated to the one or more virtual machines. 4. The method of claim 1 , wherein dispatching, by one or more computer processors, the new application to one of the one or more virtual machine having an amount of unused memory exceeding the estimated amount of memory required to execute the new application comprises: identifying, by one or more computer processors, one virtual machine of the one or more virtual machines with a largest amount of unused memory in the memory allocation of the one virtual machine of the one or more virtual machine; and dispatching, by one or more computer processors, the new application to the identified one virtual machine. 5. The method of claim 1 , further comprising making, by one or more computer processors, one virtual machine of the one or more virtual machines unavailable for the new application execution by assigning the one virtual machine to a garbage collection pool if the estimated amount of unused memory of the one virtual machine in the memory allocation of the one virtual machine is based on a log of applications previously dispatched to the one virtual machine and is below a defined threshold of memory needed for the new application. 6. The method of claim 5 , further comprising: performing, by one or more computer processors, a garbage collection on the one virtual machine in a garbage collection pool; and making, by one or more computer processors, the one virtual machine in the garbage collection pool available for another new application execution by removing the one virtual machines from the garbage collection pool following performing the garbage collection on the one virtual machine in the garbage collection pool. 7. The method of claim 1 , wherein maintaining a register of previously handled types of applications including, for each type, an indication of an amount of memory required by a virtual machine to execute the application type comprises maintaining a register of previously executed types of applications including, for each type, an indication of an amount of memory required by a virtual machine to execute the application type and an estimation of the duration of the execution of the application type by a virtual machine. 8. The method of claim 1 , further comprising: monitoring, by one or more computer processors, the actual amount of memory used by a virtual machine during execution of an application of a particular application type; comparing, by one or more computer processors, the actual amount of memory used by a virtual machine during execution of an application of a particular application type with the indication of the amount of memory required by a virtual machine to execute the application type in the register; and updating, by one or more computer processors, the indication of the amount of memory required by a virtual machine to execute the application type in the register with the actual amount of memory used by a virtual machine during execution of an application of a particular application type if the actual amount of memory used by a virtual machine during execution of an application of a particular application type is different to the indication of the amount of memory required by a virtual machine to execute the application type. 9. The method of claim 1 , further comprising: estimating, by one or more computer processors, an amount of memory required by a virtual machine to execute the application type if the application type does not exist in the register; and adding, by one or more computer processors, the application type including the estimated amount of memory to the register. 10. A computer program product for managing a computer system, the computer program product comprising: one or more computer readable storage media and program instructions stored on the one or more computer readable storage media, the program instructions comprising: program instructions to estimate an amount of unused memory in a memory allocation of one or more virtual machines based on a data associated with one or more applications previously dispatched to the one or more virtual machines, wherein estimating the amount of memory utilized by one or more virtual machines to execute the new application comprises: program instructions to maintain a register of one or more previously executed types of applications comprising an indication o
Distribution of virtual machine instances; Migration and load balancing · CPC title
Hypervisor-specific management and integration aspects · CPC title
Network integration; Enabling network access in virtual machine instances · CPC title
Memory management, e.g. access or allocation · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.