Self-Healing And Dynamic Optimization Of VM Server Cluster Management In Multi-Cloud Platform
US-2020195515-A1 · Jun 18, 2020 · US
US11036610B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11036610-B2 |
| Application number | US-201916671093-A |
| Country | US |
| Kind code | B2 |
| Filing date | Oct 31, 2019 |
| Priority date | May 31, 2019 |
| Publication date | Jun 15, 2021 |
| Grant date | Jun 15, 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 present devices, methods, and computer readable medium for techniques for measuring operational performance metrics, and presenting these metrics through an application programming interface (API) for developers to access for optimizing their applications. Exemplary metrics can include central processing unit or graphics processing unit time, foreground/background time, networking bytes (per application), location activity, display average picture luminance, cellular networking condition, peak memory, number of logical writes, launch and resume time, frame rates, and hang time. Regional markers can also be used to measure specific metrics for in application tasks. The techniques provide multiple user interfaces to help developers recognize the important metrics to optimize the performance of their applications. The data can be normalized over various different devices having different battery size, screen size, and processing requirements. The user interfaces can provide an intelligent method for visualizing performance changes for significant changes in application versions.
Opening claim text (preview).
What is claimed is: 1. A method comprising performing, by an electronic device: receiving, at a metrics routine, an identifier to indicate execution of a third party application on the electronic device; determining, by the metrics routine, one or more operational metrics to be measured; identifying one or more logging routines for capturing one or more operational metrics, wherein a particular logging routine is identified to collect a particular metric; providing commands from the metrics routine to the one or more logging routines to initiate capturing event data associated with the one or more operational metrics; capturing, by the one or more logging routines, the event data during execution of the third party application via the one or more logging routines; saving, by the one or more logging routines, the event data to a persistent storage; upon trigger, using an aggregation routine to retrieve and aggregate the event data for the third party application to measure the one or more operational metrics; and transmitting the one or more operational metrics over a network to a database. 2. The method of claim 1 , further comprising: determining central processing unit time as the one or more operational metrics to be measured; identifying a unix counter routine to collect central processing unit time, wherein a kernel aggregates central processing unit time for each process executing on the electronic device; aggregating by a logging routine the central processing unit time into discrete time intervals; and saving the aggregated central processing unit time to the persistent storage. 3. The method of claim 1 , further comprising: determining graphics processing unit time as the one or more operational metrics to be measured; identifying a unix counter routine to collect graphics processing unit time, wherein a kernel aggregates graphics processing unit time for each process executing on the electronic device; aggregating by a logging routine the graphics processing unit time into discrete time intervals; and saving the aggregated graphics processing unit time to the persistent storage. 4. The method of claim 1 , further comprising: determining cellular condition time as the one or more operational metrics to be measured, wherein the cellular condition time measures an elapsed time that the electronic device spends in one of a plurality of defined cellular conditions, wherein the defined cellular conditions comprise a type of network connection and network properties; identifying a cellular monitoring routine, wherein baseband firmware provides event based updates on current cellular condition for the electronic device; aggregating by a logging routine the cellular condition time per process; and saving the aggregated cellular condition time to the persistent storage. 5. The method of claim 1 , further comprising: determining an application mode time as the one or more operational metrics to be measured; identifying an application mode detection routine, wherein the application mode detection routine determines whether the third party application is running in a foreground or in a background; aggregating by a logging routine the application mode time per application; and saving the aggregated application mode time to the persistent storage. 6. The method of claim 1 , further comprising: determining location acquisition time as the one or more operational metrics to be measured; identifying a location acquisition routine, wherein the location acquisition routine measures time acquiring location for different accuracy levels; aggregating by a logging routine an elapsed time acquiring location by accuracy levels; and saving the aggregated location acquisition time to the persistent storage. 7. The method of claim 1 , further comprising: determining average pixel luminance as the one or more operational metrics to be measured; identifying an pixel luminance detection routine, wherein the pixel luminance detection routine measures an average of pixel luminance for a display of the electronic device; aggregating by a logging routine the average pixel luminance by application; and saving the aggregated average pixel luminance to the persistent storage. 8. The method of claim 1 , further comprising: determining network transfer bytes as the one or more operational metrics to be measured; identifying a data transfer routine, wherein the data transfer routine measures data transfer over a network; aggregating by a logging routine the network transfer bytes by application; and saving the aggregated network transfer bytes to the persistent storage. 9. The method of claim 1 , further comprising: determining memory consumption data as the one or more operational metrics to be measured; identifying a memory usage routine, wherein the memory usage routine measures peak and average memory consumption by the third party application; aggregating by a logging routine the memory consumption data by application; and saving the memory consumption data to the persistent storage. 10. The method of claim 1 , further comprising: determining application response time as the one or more operational metrics to be measured; identifying a hangtracer routine to measure minutes of unresponsive time of the third party application; aggregating by a logging routine the application response time by application; and saving the aggregated application response time to the persistent storage. 11. The method of claim 1 , further comprising: determining application launch time as the one or more operational metrics to be measured; identifying a launch time routine, wherein the launch time routine measures an elapsed time between receiving a selection of an application icon and drawing a first visible pixel on a display of the electronic device; aggregating by a logging routine application launch time by application; and saving the application launch time to the persistent storage. 12. The method of claim 1 , further comprising: determining a number of logical writes as the one or more operational metrics to be measured; identifying storage monitoring routine, wherein the storage monitoring routine measures the number of logical writes of a storage device of the electronic device; aggregating by a logging routine application the number of logical writes into discrete time intervals; and saving the number of logical writes to the persistent storage. 13. The method of claim 1 , further comprising: executing an application programming interface on the electronic device, the application programming interface provides for a customized interval for the one or more logging routines; saving a start marker and an end marker in a log storage on the electronic device; and capturing one or more operational metrics between the start marker and the end marker. 14. A computing device, comprising: one or more memories; and one or more processors in communication with the one or more memories and configured to execute instructions stored in the one or more memories for performing operations comprising: receiving, at a metrics routine, an identifier to indicate execution of a third party application on the computing device; determining, by the metrics routine, one or more operational metrics to be measured; identifying one or more logging routines for capturing one or more operational metrics, wherein a particular logging routine is identified to collect a particular metric; providing commands from the metrics routine to the one or more logging routines to initiate capturing event data associated
for performance assessment · CPC title
Performance evaluation by statistical analysis · CPC title
Classification techniques · CPC title
Monitoring of software · CPC title
for systems · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.