Dynamic memory management techniques
US-2018300067-A1 · Oct 18, 2018 · US
US10922095B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10922095-B2 |
| Application number | US-201916384699-A |
| Country | US |
| Kind code | B2 |
| Filing date | Apr 15, 2019 |
| Priority date | Apr 15, 2019 |
| Publication date | Feb 16, 2021 |
| Grant date | Feb 16, 2021 |
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.
Embodiments of the present disclosure relate to software application performance regression analysis. Other embodiments may be described and/or claimed.
Opening claim text (preview).
What is claimed is: 1. A system comprising: a processor; and memory coupled to the processor and storing instructions that, when executed by the processor, cause the system to perform operations comprising: retrieving a plurality of values of a performance metric for a software application, each respective value associated with a respective time period; identifying a regression based on a value from the plurality of values that is beyond a predetermined threshold; retrieving metadata associated with the respective time period for the identified value; retrieving profile data associated with the performance metric prior to the respective time period for the identified value; retrieving profile data associated with the performance metric subsequent to the respective time period for the identified value; and identifying a portion of the software application associated with the regression based on: the metadata, the profile data associated with the performance metric prior to the respective time period for the identified value, and the profile data associated with the performance metric subsequent to the respective time period for the identified value, wherein identifying the portion of the software application associated with the regression includes building an aggregated data set based on the profile data associated with the performance metric prior to the respective time period and the profile data associated with the performance metric subsequent to the respective time period. 2. The system of claim 1 , wherein the profile data associated with the performance metric includes a call path. 3. The system of claim 1 , wherein the profile data associated with the performance metric includes contextual information associated with the software application. 4. The system of claim 3 , wherein the contextual information includes one or more of: host information, tenant information, a thread identifier, and a thread name. 5. The system of claim 1 , wherein building the aggregated data set includes joining pairs of aggregates from the profile data associated with the performance metric prior to the respective time period and the profile data associated with the performance metric subsequent to the respective time period. 6. The system of claim 5 , wherein identifying the portion of the software application associated with the regression includes applying a differential function to the pairs of aggregates to generate differential derived attributes. 7. The system of claim 1 , wherein building the aggregated data set includes ordering the aggregated data set based on a comparative function. 8. The system of claim 1 , wherein building the aggregated data set includes filtering the aggregated data set based on a magnitude of change between the profile data associated with the performance metric prior to the respective time period and the profile data associated with the performance metric subsequent to the respective time period. 9. The system of claim 1 , wherein building the aggregated data set includes assigning a unique identifier to each pair of aggregates. 10. The system of claim 1 , wherein identifying the portion of the software application associated with the regression includes applying a code identification heuristic to each respective entry in the aggregated data set to identify an owner of code associated with the respective entry. 11. The system of claim 1 , wherein the memory further stores instructions for causing the system to generate a report identifying the portion of the software application associated with the regression. 12. The system of claim 11 , wherein generating the report includes incrementing an occurrence count for an existing issue in an issue tracking system. 13. The system of claim 11 , wherein generating the report includes creating a new issue in an issue tracking system. 14. The system of claim 11 , wherein the report identifies a thread associated with the regression, and a difference between the profile data associated with the performance metric prior to the respective time period and the profile data associated with the performance metric subsequent to the respective time period. 15. The system of claim 11 , wherein generating the report includes determining a priority of the regression, and identifying the priority of the regression in the report. 16. The system of claim 15 , wherein the priority of the regression is based on a magnitude of difference between the profile data associated with the performance metric prior to the respective time period and the profile data associated with the performance metric subsequent to the respective time period. 17. The system of claim 15 , wherein the priority of the regression is based on a frequency at which the regression occurs during a predetermined time period. 18. A tangible, non-transitory computer-readable medium storing instructions that, when executed by a computer system, cause the computer system to perform operations comprising: retrieving a plurality of values of a performance metric for a software application, each respective value associated with a respective time period; identifying a regression based on a value from the plurality of values that is beyond a predetermined threshold; retrieving metadata associated with the respective time period for the identified value; retrieving profile data associated with the performance metric prior to the respective time period for the identified value; retrieving profile data associated with the performance metric subsequent to the respective time period for the identified value; and identifying a portion of the software application associated with the regression based on: the metadata, the profile data associated with the performance metric prior to the respective time period for the identified value, and the profile data associated with the performance metric subsequent to the respective time period for the identified value, wherein identifying the portion of the software application associated with the regression includes building an aggregated data set based on the profile data associated with the performance metric prior to the respective time period and the profile data associated with the performance metric subsequent to the respective time period. 19. A method comprising: retrieving, by a computer system, a plurality of values of a performance metric for a software application, each respective value associated with a respective time period; identifying, by the computer system, a regression based on a value from the plurality of values that is beyond a predetermined threshold; retrieving, by the computer system, metadata associated with the respective time period for the identified value; retrieving, by the computer system, profile data associated with the performance metric prior to the respective time period for the identified value; retrieving, by the computer system, profile data associated with the performance metric subsequent to the respective time period for the identified value; and identifying, by the computer system, a portion of the software application associated with the regression based on: the metadata, the profile data associated with the performance metric prior to the respective time period for the identified value, and the profile data associated with the performance metric subsequent to the respective time period for the identified value, wherein identifying the portion of the software application associated with the regression includes building an aggregated data set based o
Task life-cycle, e.g. stopping, restarting, resuming execution (G06F9/4881 takes precedence) · CPC title
for performance assessment · CPC title
Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading · CPC title
where the computing system component is a software system · CPC title
Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations (thermal management in cooling arrangements of a computing system G06F1/206) · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.