Abstract:
Embodiments profile usage of memory and other resources. Stack traces have lifespans, resource impacts, and constituent call chains. Aggregation unifies shared call chains and sums resource impacts after assigning traces to snapshot sets based on trace lifespans and user-defined snapshot request timestamps. Traces are assigned using either active aggregation or precursor aggregation. Traces spanning a snapshot request may be split. A sampled resource trace lifespan begins when the resource is sampled and ends at the next snapshot request. An allocated resource trace lifespan begins when a portion of the resource is allocated and ends when the allocated portion is freed. Resource portions not yet freed are implicitly freed when program execution ends. Call chain interval resource impact aggregation performed with multiple snapshot requests and stack trace sets creates snapshot aggregations. Two aggregations are differenced by subtracting the summed call chain resource impacts of one aggregation from those of another aggregation.
Abstract:
Tools and techniques support troubleshooting live application visuals, including transient markup expression issues in XAML or HTML. A LADRT module supports troubleshooting without pausing application execution to help inspect and modify visual construct properties, and to identify and alter source code pertaining to a selected visual construct. Changes are serialized back to the application program source code and reflected in real time in the executing application, without a rebuild. Markup annotation preserves pre-evaluation versions of markup expressions for binding, static resource identification, and custom purposes. Markup annotation also correlates visual constructs and source code. The LADRT module operates independently of debuggers, and may autoload with the application. Program project and source code changes are not required for troubleshooting capability.
Abstract:
Tools and techniques support troubleshooting live application visuals, including transient markup expression issues in XAML or HTML. A LADRT module supports troubleshooting without pausing application execution to help inspect and modify visual construct properties, and to identify and alter source code pertaining to a selected visual construct. Changes are serialized back to the application program source code and reflected in real time in the executing application, without a rebuild. Markup annotation preserves pre-evaluation versions of markup expressions for binding, static resource identification, and custom purposes. Markup annotation also correlates visual constructs and source code. The LADRT module operates independently of debuggers, and may autoload with the application. Program project and source code changes are not required for troubleshooting capability.