Runtime settings derived from relationships identified in tracer data
Abstract
An analysis system may perform network analysis on data gathered from an executing application. The analysis system may identify relationships between code elements and use tracer data to quantify and classify various code elements. In some cases, the analysis system may operate with only data gathered while tracing an application, while other cases may combine static analysis data with tracing data. The network analysis may identify groups of related code elements through cluster analysis, as well as identify bottlenecks from one to many and many to one relationships. The analysis system may generate visualizations showing the interconnections or relationships within the executing code, along with highlighted elements that may be limiting performance.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . A method performed by a computer processor, said method comprising:
receiving relationship metadata derived from analysis of data collected while tracing an application, said relationship metadata comprising relationships between code elements related to said application; during runtime for said application:
preparing a first code element for execution;
determining a set of settings for said first code element from said metadata; and
causing said first code element to be executed using said set of settings.
2 . The method of claim 1 , said metadata further comprising relationship strength indicators derived from tracing analysis of said application.
3 . The method of claim 2 , said relationship strength indicators comprising attractive strength indicators and repulsive strength indicators.
4 . The method of claim 3 , a first attractive strength indicator being used at runtime to cause said first code element to be executed using a shared resource with a second code element.
5 . The method of claim 4 , said shared resource being a memory resource.
6 . The method of claim 4 , said shared resource being a processor resource.
7 . The method of claim 4 , said shared resource being a peripheral resource.
8 . The method of claim 7 , said peripheral resource comprising a network interface.
9 . The method of claim 2 , said set of settings causing said first code element to be executed on a first processor, said first processor executing a second code element, said first code element and said second code element having an attractive strength indicator for a first relationship.
10 . The method of claim 9 , said first relationship being derived from a dependency observed during tracing said application.
11 . The method of claim 10 , said dependency comprising a commonly shared memory object.
12 . The method of claim 10 , said dependency comprising a sequential processing relationship between said first code element and said second code element.
13 . The method of claim 2 , said set of settings causing said first code element to be executed on a first processor and a second code element to be executed on a second processor, said first code element and said second code element having a repulsive strength indicator for a first relationship.
14 . The method of claim 13 , said repulsive strength indicator being derived from parallelism observed during tracing of said application.
15 . The method of claim 13 , said repulsive strength indicator being derived from minimal shared resources between said first code element and said second code element.
16 . The method of claim 13 , said repulsive strength indicator being derived from resource consumption observed during tracing of said application.
17 . The method of claim 16 , said resource consumption comprising processor loading observed from said first code element and said second code element.
18 . A system comprising:
a processor; a runtime environment that:
receives relationship metadata derived from analysis of data collected while tracing an application, said relationship metadata comprising relationships between code elements related to said application;
during runtime for said application:
prepares a first code element for execution;
determines a set of settings for said first code element from said metadata; and
causes said first code element to be executed using said set of settings.
19 . The system of claim 18 , said metadata further comprising relationship strength indicators derived from tracing analysis of said application.
20 . The system of claim 19 , said relationship strength indicators comprising attractive strength indicators and repulsive strength indicators.
21 . The system of claim 20 , a first attractive strength indicator being used at runtime to cause said first code element to be executed using a shared resource with a second code element.
22 . The system of claim 21 , said shared resource being a memory resource.
23 . The system of claim 21 , said shared resource being a processor resource.
24 . The system of claim 21 , said shared resource being a peripheral resource.
25 . The system of claim 24 , said peripheral resource comprising a network interface.
26 . The system of claim 19 , said set of settings causing said first code element to be executed on a first processor, said first processor executing a second code element, said first code element and said second code element having an attractive strength indicator for a first relationship.
27 . The system of claim 26 , said first relationship being derived from a dependency observed during tracing said application.
28 . The system of claim 27 , said dependency comprising a commonly shared memory object.
29 . The system of claim 27 , said dependency comprising a sequential processing relationship between said first code element and said second code element.
30 . The system of claim 19 , said set of settings causing said first code element to be executed on a first processor and a second code element to be executed on a second processor, said first code element and said second code element having a repulsive strength indicator for a first relationship.
31 . The system of claim 30 , said repulsive strength indicator being derived from parallelism observed during tracing of said application.
32 . The system of claim 30 , said repulsive strength indicator being derived from minimal shared resources between said first code element and said second code element.
33 . The system of claim 30 , said repulsive strength indicator being derived from resource consumption observed during tracing of said application.
34 . The system of claim 33 , said resource consumption comprising processor loading observed from said first code element and said second code element.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.