Correlation of thread intensity and heap usage to identify heap-hoarding stack traces
First Claim
1. A computer-implemented method comprising:
- determining, by one or more computer systems, a length of time when heap usage by one or more processes exceeds a threshold, wherein the length of time spans at least one period, wherein the at least one period is divided into a plurality of intervals, and wherein each of the plurality of intervals is mapped to a season of a plurality of seasons;
determining heap information of the one or more processes during the length of time, the heap information comprising heap usage information and a heap usage seasonal factor for each of the plurality of intervals in the length of time, wherein the heap usage seasonal factor for each of the plurality of intervals corresponds to a smoothed heap usage seasonal factor associated with the season to which each of the plurality of intervals is mapped;
determining thread information of the one or more processes during the length of time, wherein determining the thread information comprises determining one or more classes of threads and wherein the thread information comprises, for each of the one or more classes of threads, thread intensity information and a thread intensity seasonal factor for each of the plurality of intervals, wherein the thread intensity seasonal factor for each of the plurality of intervals and for each of the one or more classes of threads corresponds to a smoothed thread intensity seasonal factor associated with the season to which each of the plurality of intervals is mapped;
correlating the heap information with the thread information to identify one or more lines of code of the one or more processes that correspond to the heap usage exceeding the threshold; and
responsive to identifying the one or more lines of code, initiating one or more actions associated with the one or more lines of code.
1 Assignment
0 Petitions
Accused Products
Abstract
Embodiments identify heap-hoarding stack traces to optimize memory efficiency. Some embodiments can determine a length of time when heap usage by processes exceeds a threshold. Some embodiments may then determine heap information of the processes for the length of time, where the heap information comprise heap usage information for each interval in the length of time. Next, some embodiments can determine thread information of the one or more processes for the length of time, wherein determining the thread information comprises determining classes of threads and wherein the thread information comprises, for each of the classes of threads, thread intensity information for each of the intervals. Some embodiments may then correlate the heap information with the thread information to identify code that correspond to the heap usage exceeding the threshold. Some embodiments may then initiate actions associated with the code.
-
Citations
20 Claims
-
1. A computer-implemented method comprising:
-
determining, by one or more computer systems, a length of time when heap usage by one or more processes exceeds a threshold, wherein the length of time spans at least one period, wherein the at least one period is divided into a plurality of intervals, and wherein each of the plurality of intervals is mapped to a season of a plurality of seasons; determining heap information of the one or more processes during the length of time, the heap information comprising heap usage information and a heap usage seasonal factor for each of the plurality of intervals in the length of time, wherein the heap usage seasonal factor for each of the plurality of intervals corresponds to a smoothed heap usage seasonal factor associated with the season to which each of the plurality of intervals is mapped; determining thread information of the one or more processes during the length of time, wherein determining the thread information comprises determining one or more classes of threads and wherein the thread information comprises, for each of the one or more classes of threads, thread intensity information and a thread intensity seasonal factor for each of the plurality of intervals, wherein the thread intensity seasonal factor for each of the plurality of intervals and for each of the one or more classes of threads corresponds to a smoothed thread intensity seasonal factor associated with the season to which each of the plurality of intervals is mapped; correlating the heap information with the thread information to identify one or more lines of code of the one or more processes that correspond to the heap usage exceeding the threshold; and responsive to identifying the one or more lines of code, initiating one or more actions associated with the one or more lines of code. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A system comprising:
-
one or more processors; and a memory accessible to the one or more processors, the memory storing one or more instructions that, upon execution by the one or more processors, causes the one or more processors to; determine a length of time when heap usage by one or more processes exceeds a threshold, wherein the length of time spans at least one period, wherein the at least one period is divided into a plurality of intervals, and wherein each of the plurality of intervals is mapped to a season of a plurality of seasons; determine heap information of the one or more processes during the length of time, the heap information comprising heap usage information and a heap usage seasonal factor for each of the plurality of intervals in the length of time, wherein the heap usage seasonal factor for each of the plurality of intervals is associated with the season to which each of the plurality of intervals is mapped, and wherein the heap information is determined based at least in part on a first smooth-spline fitting on the heap usage seasonal factors for the plurality of intervals; determine thread information of the one or more processes during the length of time, wherein determining the thread information comprises determining one or more classes of threads and wherein the thread information comprises, for each of the one or more classes of threads, thread intensity information and a thread intensity seasonal factor for each of the plurality of intervals, wherein the thread intensity seasonal factor for each of the plurality of intervals is associated with the season the each of the plurality of intervals is mapped to, and wherein the thread information is determined based at least in part on performing a second smooth-spline fitting on the thread intensity seasonal factors for the plurality of intervals; correlate the heap information with the thread information based at least in part on the smooth-spline fitted heap usage seasonal factors and the smooth-spline fitted thread intensity seasonal factors to identify one or more lines of code of the one or more processes that correspond to the heap usage exceeding the threshold; and responsive to identifying the one or more lines of code, initiate one or more actions associated with the one or more lines of code. - View Dependent Claims (15, 16, 17, 18, 19)
-
-
20. A non-transitory computer-readable medium storing one or more instructions that, upon execution by one or more processors, cause the one or more processors to:
-
determine a length of time when heap usage by one or more processes exceeds a threshold, wherein the length of time spans at least one period, wherein the at least one period is divided into a plurality of intervals, and wherein each of the plurality of intervals is mapped to a season of a plurality of seasons; determine heap information of the one or more processes during the length of time, the heap information comprising heap usage information and a heap usage seasonal factor for each of the plurality of intervals in the length of time, wherein the heap usage seasonal factor for each of the plurality of intervals corresponds to a smoothed heap usage seasonal factor associated with the season to which each of the plurality of intervals is mapped; determine thread information of the one or more processes during the length of time, wherein determining the thread information comprises determining one or more classes of threads and wherein the thread information comprises, for each of the one or more classes of threads, thread intensity information and a thread intensity seasonal factor for each of the plurality of intervals, wherein the thread intensity seasonal factor for each of the plurality of intervals and for each of the one or more classes of threads corresponds to a smoothed thread intensity seasonal factor associated with the season to which each of the plurality of intervals is mapped; correlate the heap information with the thread information to identify one or more lines of code of the one or more processes that correspond to the heap usage exceeding the threshold; and responsive to identifying the one or more lines of code, initiate one or more actions associated with the one or more lines of code.
-
Specification