CN107832203B - Method for diagnosing rendering performance of mobile terminal - Google Patents
Method for diagnosing rendering performance of mobile terminal Download PDFInfo
- Publication number
- CN107832203B CN107832203B CN201711088715.7A CN201711088715A CN107832203B CN 107832203 B CN107832203 B CN 107832203B CN 201711088715 A CN201711088715 A CN 201711088715A CN 107832203 B CN107832203 B CN 107832203B
- Authority
- CN
- China
- Prior art keywords
- rendering
- control
- performance
- interface
- rcs
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3466—Performance evaluation by tracing or monitoring
- G06F11/3476—Data logging
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3452—Performance evaluation by statistical analysis
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M1/00—Substation equipment, e.g. for use by subscribers
- H04M1/24—Arrangements for testing
Abstract
The invention discloses a method for diagnosing rendering performance problems of a mobile terminal. And obtaining rendering data of the interface control by modifying the Android platform. And running a large number of application programs on the modified Android platform to obtain a large number of data, and then training a Bayesian network model, wherein the rendering characteristics and the rendering performance indexes are corresponding by the model. And inputting rendering data into the model aiming at a specific interface of a specific application program, calculating a contribution value of the control in the interface to the page rendering performance by using a specific method, and finding out the control which has the largest influence on the interface rendering performance. The method has the advantages that: the rendering performance problem generated by the application program in the mobile terminal can be effectively and accurately diagnosed.
Description
Technical Field
The invention relates to a method for diagnosing rendering performance problems of a mobile terminal, in particular to a method for positioning rendering performance of a terminal application program, which is oriented to an application developer.
Background
In recent years, as the number of mobile devices and mobile applications has increased rapidly, the time spent by users on mobile applications has increased. The response of the mobile application after one user operation is called an interaction, and the time required for completing the interaction logic and drawing all interfaces is called response time. Typically, a user interaction takes within a few seconds. Since the interactive response time of mobile applications is directly related to the end user experience, very extensive attention has been paid in recent years to both academia and industry. Researchers at home and abroad carry out deeper and more extensive research in this respect, and in recent years, a plurality of deeper researches aiming at interactive response time have appeared.
Past research on mobile application response times has focused primarily on network access, IO requests, and other heavy-weight operations. For example, Applnsight uses binary instrumentation techniques to track the behavior of user operations within an application and then get the root cause of the performance problem by analyzing the critical execution path. There is much work on measuring and optimizing the IO access time of storage, since storage IO access may result in a long delay (delay). Kim et al, for example, have discovered that there is a positive correlation between the design of a storage system and the performance of a mobile application by analyzing the storage system of a mobile device, and have proposed a series of solutions on this basis for solving the performance problem caused by storage IO. However, none of these efforts involve the interface drawing process during the mobile application response process. In our findings, for a short user interaction process, the time required for interface rendering is a significant part of the overall interaction response process. Obviously, locating and optimizing performance issues in the rendering process is also one of the keys to improving mobile applications.
Disclosure of Invention
The present invention provides a method for locating and diagnosing rendering problems in a rendering process in a user interaction process of a mobile application level, aiming at overcoming the above disadvantages of the prior art.
In order to realize the purpose, the technical scheme adopted by the invention is as follows: the mobile terminal performance diagnosis method comprises the following steps:
1) and modifying the frame code of the Android so that the rendering related information of each control can be obtained when the application program runs.
2) And running a large number of application programs on the modified Android platform, collecting rendering information obtained by running the application programs, and constructing a Bayesian network by using the data.
3) And calculating each control of a specific rendering interface of a specific application program by using the constructed Bayesian network to obtain a rendering performance coefficient (RCS) of a contribution value of the control to the rendering time of the whole interface. And sequencing all the controls according to the RCS to obtain the control which has the largest influence on the rendering performance of the specific interface of the specific application program. The developer can carry out deep optimization on the application program on the basis of the optimization.
Preferably, the rendering related data obtained by modifying the Android Framework in step 1) includes:
1.1 associated data for each control. The control is a basic element of an interface control on an Android platform, and all interfaces are composed of a plurality of controls. These data include the unique id of the control, the size of the control, and the position of the control.
1.2 hierarchical relationship of controls. The interface of the Android platform is of a tree structure, and hierarchical relations exist among the controls. The hierarchical relationship of all the controls of the current interface can be reconstructed by obtaining the identifier id of the parent control.
1.3 operation and timing of rendering. The method comprises the steps of measuring time consumption of three operations of measuring measure, laying layout and drawing.
1.4 relevant data of user operation. Including the start time of the click, swipe, etc., operation, and the FPS frame rate of the system.
Preferably, the method for constructing the bayesian network in step 2):
2.1A Bayesian network is a directed acyclic graph whose nodes include two types: rendering feature rendering features node and performance metric node. Rendering features We use f1To fNRepresentation, N rendering features; performance index We used p1And p2Two performance indicators are shown.
2.2 We used corr (f)i,fj) The correlation coefficient between feature i and feature j is represented by corr (f)i,pj) Representing the correlation coefficient of the characteristic i with the performance index j, in a Bayesian networkRepresented as the weight of the edge between the nodes.
2.3 after obtaining the Bayesian network, we further calculate the contribution sig (f) of the rendering characteristic i to the performance index ji,pj)。
Preferably, the method for calculating the rendering performance coefficient RCS in step 3) specifically includes:
3.1 We used con (v)i,fj) Representing the contribution of a control to feature j. There are different calculation methods for different features.
3.2 sig (f) based on 2.3i,pj) And con (v) in 3.1i,fj) We propose to compute the rendering coefficient of performance (RCS) value RCS (v) for a particular controli) The calculating method of (2):
3.3, by using the rendering performance coefficient RCS obtained in step 3.2, we calculate all control elements of the specific interface and sort according to the rendering performance coefficient RCS, and the higher score means that the influence on the rendering performance of the interface is larger, and the developer should pay attention to and optimize the control elements.
Compared with the prior art, the invention has the beneficial effects that: training a Bayesian network model through a large amount of data, and corresponding rendering data of a control to rendering performance of a final interface; the method can be used by developers to accurately position the UI component causing the interface rendering performance to be reduced, and the efficiency of development and problem positioning is improved.
Drawings
FIG. 1 is a method block diagram of the present invention
Detailed Description
The following describes the implementation of the mobile terminal performance diagnosis method of the present invention in detail with reference to the accompanying drawings, which includes the following steps:
1. the method for modifying the Android Framework and the obtained rendering related data are as follows:
1.1. the modification of the Android Framework refers to the modification of files of the source codes of View. And compiling the modified Framework to generate a frame.jar file, uploading the frame.jar file to Android equipment through an adb tool, and replacing the original frame.jar. And restarting the equipment to finish the modification of the Android platform.
1.2. Running on a modified Android platform, the data that can be obtained include the following types:
1.2.1. the associated data for each control. The control is a basic element of an interface control on an Android platform, and all interfaces are composed of a plurality of controls. These data include the unique id of the control, the size of the control, and the position of the control.
1.2.2. The hierarchical relationship of the controls. The interface of the Android platform is of a tree structure, and hierarchical relations exist among the controls. The hierarchical relationship of all the controls of the current interface can be reconstructed by obtaining the identifier id of the parent control.
1.2.3. Operation and timing of rendering. Including measure, layout, and draw.
1.2.4. Data related to user operations. Including the start time of the click, swipe, etc., operation, and the FPS frame rate of the system.
2. The construction method of the Bayesian network in the step 2) is as follows:
2.1. a bayesian network is a directed acyclic graph whose nodes include two types: rendering feature rendering features node and performance metric node. Rendering features We use f1To fNRepresentation, N rendering features; performance index We used p1And p2Two performance indicators are shown.
2.1.1. The rendering characteristics are obtained by processing the rendering data of the interface control obtained in the step 1.2. The specific rendering characteristics are shown in table 1.
Table 1
2.2. We used corr (f)i,fj) The correlation coefficient between feature i and feature j is represented by corr (f)i,pj) The correlation coefficient of the characteristic i and the performance index j is represented, which is expressed as the weight of the edge between the nodes in the Bayesian network.
2.3. After a Bayesian network is obtained, a contribution value sig (f) of the rendering characteristic i to the performance index j is further calculatedi,pj). The calculation method is to add the weights of all the edges on the path from the node i to the rendering performance node j to obtain the contribution value.
3. Method for calculating rendering performance coefficient RCS in step 3)
3.1. We use con (v)i,fj) Representing the contribution of a control to feature j. There are different calculation methods for different features. For example, for the feature of "the number of null points", all the controls are 1, and for the feature of "the maximum execution time of the rendering operation", the contribution value of the control whose rendering time reaches the maximum rendering time is 1/m, where m is the number of controls whose rendering time reaches the maximum rendering time; and the contribution value of the control whose rendering time is less than the maximum rendering time is 0.
3.2. Based on the rendering feature contribution value sig (f) in 2.3i,pj) And control feature contribution values con (v) in 3.1i,fj) We propose to calculate the rendering coefficient of performance RCS value RCS (v) for a particular controli) The calculating method of (2):
3.3. by using the rendering performance coefficient RCS obtained in the step 32, all control elements of a specific interface are calculated and sorted according to the rendering performance coefficient RCS, and the interface rendering performance is influenced greatly when the score is high, so that the interface rendering performance is focused and optimized by developers.
The embodiments described in this specification are merely illustrative of implementations of the inventive concept and the scope of the present invention should not be considered limited to the specific forms set forth in the embodiments but rather by the equivalents thereof as may occur to those skilled in the art upon consideration of the present inventive concept.
Claims (1)
1. The method for diagnosing the rendering performance of the mobile terminal comprises the following steps:
1) modifying the framework code of the Android, so that rendering related information of each control can be obtained when an application program runs, and the method specifically comprises the following steps:
1.1 the associated data of each control; the control is a basic element of an interface control on an Android platform, and all interfaces are composed of a plurality of controls; the data comprises the unique id of the control, the size of the control and the position of the control;
1.2 the hierarchical relationship of the controls; the interface of the Android platform is of a tree structure, and hierarchical relations exist among the controls; the hierarchical relation of all controls of the current interface can be reconstructed by obtaining the identifier (id) of the parent control;
1.3 operation and timing of rendering; the time consumption of three operations including measurement (measure), layout (layout) and drawing (draw);
1.4 relevant data of user operation; the starting time of the operation including clicking and sliding and the FPS frame rate of the system are included;
2) running a large number of application programs on a modified Android platform, collecting rendering information obtained by running the application programs, and constructing a Bayesian network by using the data; the construction method of the Bayesian network comprises the following specific steps:
2.1A Bayesian network is a directed acyclic graph whose nodes include two types: rendering a characteristic rendering features node and a performance metric node; f for rendering characteristics1To fNRepresentation, N rendering features; p for performance index1And p2Expressing, namely two performance indexes;
2.2 use corr (f)i,fj) The correlation coefficient between feature i and feature j is represented by corr (f)i,pj) Express characterCharacterizing the correlation coefficient of i and the performance index j, which is expressed as the weight of edges between nodes in the Bayesian network;
2.3 after obtaining the Bayesian network, further calculating a contribution value sig (f) of the rendering characteristic i to the performance index ji,pj);
3) Calculating each control of a specific rendering interface of a specific application program by using the constructed Bayesian network to obtain a rendering performance coefficient (RCS) of a contribution value of the control to the rendering time of the whole interface; sequencing all the controls according to the RCS to obtain the control which has the greatest influence on the rendering performance of the specific interface of the specific application program; the method for calculating the rendering performance coefficient (RCS) specifically comprises the following steps:
3.1 uses con (v)i,fj) Representing the contribution value of a control to the characteristic j; there are different calculation methods for different features;
3.2 sig (f) based on 2.3i,pj) And con (v) in 3.1i,fj) It is proposed to calculate a rendering coefficient of performance (RCS) value RCS (v) for a particular controli) The calculating method of (2):
3.3, all control elements of the specific interface are calculated by using the rendering performance coefficients RCS obtained in the step 3.2, and are sorted according to the rendering performance coefficients RCS, so that the interface rendering performance is influenced greatly when the score is high, and the interface rendering performance is mainly noticed and optimized by developers.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711088715.7A CN107832203B (en) | 2017-11-08 | 2017-11-08 | Method for diagnosing rendering performance of mobile terminal |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711088715.7A CN107832203B (en) | 2017-11-08 | 2017-11-08 | Method for diagnosing rendering performance of mobile terminal |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107832203A CN107832203A (en) | 2018-03-23 |
CN107832203B true CN107832203B (en) | 2020-11-13 |
Family
ID=61654675
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711088715.7A Active CN107832203B (en) | 2017-11-08 | 2017-11-08 | Method for diagnosing rendering performance of mobile terminal |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107832203B (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112287255B (en) * | 2020-07-13 | 2024-02-09 | 上海柯林布瑞信息技术有限公司 | Page construction method and device, computing equipment and computer readable storage medium |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106775710A (en) * | 2016-12-14 | 2017-05-31 | 杭州长亮金融信息服务有限公司 | Cross-platform interface alternation development system and its operation method based on smart machine |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2622462A4 (en) * | 2010-10-01 | 2014-01-29 | Z124 | Multi-operating system |
-
2017
- 2017-11-08 CN CN201711088715.7A patent/CN107832203B/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106775710A (en) * | 2016-12-14 | 2017-05-31 | 杭州长亮金融信息服务有限公司 | Cross-platform interface alternation development system and its operation method based on smart machine |
Non-Patent Citations (1)
Title |
---|
安卓应用软件测试信息智能监测系统设计;蔡娟 等;《现代电子技术》;20170715;第40卷(第14期);58-63 * |
Also Published As
Publication number | Publication date |
---|---|
CN107832203A (en) | 2018-03-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10013656B1 (en) | Methods and apparatus for analytical processing of provenance data for HPC workflow optimization | |
US20120060142A1 (en) | System and method of cost oriented software profiling | |
CN108664269A (en) | A kind of feature attachment code peculiar smell detection method based on deep learning | |
CN111506504B (en) | Software development process measurement-based software security defect prediction method and device | |
JP2021118000A (en) | Item recommendation method, system, program, electronic equipment and storage medium | |
CN115687115B (en) | Automatic testing method and system for mobile application program | |
Wu et al. | A deadline-aware estimation of distribution algorithm for resource scheduling in fog computing systems | |
Song et al. | Personalized optimization for android smartphones | |
CN110462638A (en) | Training neural network is sharpened using posteriority | |
US20090182994A1 (en) | Two-level representative workload phase detection method, apparatus, and computer usable program code | |
Ilkhani et al. | Extraction test cases by using data mining; reducing the cost of testing | |
CN110968564A (en) | Data processing method and training method of data state prediction model | |
CN107832203B (en) | Method for diagnosing rendering performance of mobile terminal | |
Bei et al. | MEST: A model-driven efficient searching approach for MapReduce self-tuning | |
CN106776757A (en) | User completes the indicating means and device of Net silver operation | |
CN108270833A (en) | Render automatic scheduling method, the apparatus and system of cloud resource | |
CN110377525B (en) | Parallel program performance prediction system based on runtime characteristics and machine learning | |
CN109101414B (en) | Massive UI test generation method and device based on buried point data | |
CN112463378B (en) | Server asset scanning method, system, electronic equipment and storage medium | |
Zhang et al. | On the cost of interactions in interactive visual machine learning | |
CN113627513A (en) | Training data generation method and system, electronic device and storage medium | |
Rongrong et al. | A method for identifying and recommending reconstructed clones | |
CN111949783A (en) | Question and answer result generation method and device in knowledge base | |
Ottlik et al. | Trace-based context-sensitive timing simulation considering execution path variations | |
CN111008140A (en) | Cross-platform UI (user interface) automatic testing method and device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |