Stateless detection of out-of-memory events in virtual machines
First Claim
1. A method of modifying memory allocations of virtual machines executing within a computing system, comprising:
- executing one or more virtual machines, including a first virtual machine, on a computing system, wherein each said virtual machine is allocated an amount of heap memory from the computer system,performing a plurality of garbage collection processes on the computing system during execution of the first virtual machine on the computer system;
determining, by the computing system, using one or more processors of the computing system, one or more execution metrics for each of the plurality of garbage collection processes performed, the execution metrics including an execution duration for each of the plurality of garbage collection process,using a sequential-analysis technique to analyze, by the computing system, the execution metrics for each of the plurality of garbage collection processes for stateless detection of a memory usage trend for the first virtual machine, based on the execution durations for the plurality of garbage collection processes; and
in response to detecting an upward memory usage trend for the first virtual machine based on the analysis of the execution durations for the plurality of garbage collection processes, modifying, by the computing system, the amount of heap memory allocated to the first virtual machine.
1 Assignment
0 Petitions
Accused Products
Abstract
The disclosed embodiments provide a system that detects anomalous events in a virtual machine. During operation, the system obtains time-series garbage-collection (GC) data collected during execution of a virtual machine in a computer system. Next, the system generates one or more seasonal features from the time-series GC data. The system then uses a sequential-analysis technique to analyze the time-series GC data and the one or more seasonal features for an anomaly in the GC activity of the virtual machine. Finally, the system stores an indication of a potential out-of-memory (OOM) event for the virtual machine based at least in part on identifying the anomaly in the GC activity of the virtual machine.
-
Citations
20 Claims
-
1. A method of modifying memory allocations of virtual machines executing within a computing system, comprising:
-
executing one or more virtual machines, including a first virtual machine, on a computing system, wherein each said virtual machine is allocated an amount of heap memory from the computer system, performing a plurality of garbage collection processes on the computing system during execution of the first virtual machine on the computer system; determining, by the computing system, using one or more processors of the computing system, one or more execution metrics for each of the plurality of garbage collection processes performed, the execution metrics including an execution duration for each of the plurality of garbage collection process, using a sequential-analysis technique to analyze, by the computing system, the execution metrics for each of the plurality of garbage collection processes for stateless detection of a memory usage trend for the first virtual machine, based on the execution durations for the plurality of garbage collection processes; and in response to detecting an upward memory usage trend for the first virtual machine based on the analysis of the execution durations for the plurality of garbage collection processes, modifying, by the computing system, the amount of heap memory allocated to the first virtual machine. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A computing system for modifying memory allocations of virtual machines executing within the computing system, comprising:
-
one or more processors; and memory storing instructions that, when executed by the one or more processors, cause the computing system to; execute one or more virtual machines, including a first virtual machine, on the computing system, wherein each said virtual machine is allocated an amount of heap memory from the computer system; perform a plurality of garbage collection processes on the computing system during execution of the first virtual machine on the computer system; determine one or more execution metrics for each of the plurality of garbage collection processes performed, the execution metrics including an execution duration for each of the plurality of garbage collection process; use a sequential-analysis technique to analyze, by the computer system, the execution metrics for each of the plurality of garbage collection processes for stateless detection of a memory usage trend for the first virtual machine, based on the execution durations for the plurality of garbage collection processes; and in response to detecting an upward memory usage trend for the first virtual machine based on the analysis of the execution durations for the plurality of garbage collection processes, modify the amount of heap memory allocated to the first virtual machine. - View Dependent Claims (14, 15, 16, 17, 18)
-
-
19. A non-transitory computer-readable storage medium storing instructions that when executed by a computer system cause the computer system to modify memory allocations of virtual machines executing within the computing system by:
-
executing one or more virtual machines, including a first virtual machine, on the computing system, wherein each said virtual machine is allocated an amount of heap memory from the computer system; performing a plurality of garbage collection processes on the computing system during execution of the first virtual machine on the computer system; determining, by the computer system, one or more execution metrics for each of the plurality of garbage collection processes performed, the execution metrics including an execution duration for each of the plurality of garbage collection process, using a sequential-analysis technique to analyze the execution metrics for each of the plurality of garbage collection processes for stateless detection of a memory usage trend for the first virtual machine, based on the execution durations for the plurality of garbage collection processes; and in response to detecting an upward memory usage trend for the first virtual machine based on the analysis of the execution durations for the plurality of garbage collection processes, modify the amount of heap memory allocated to the first virtual machine. - View Dependent Claims (20)
-
Specification