In-vehicle Application Evaluation Method, Device, and Computer-Readable Storage Medium
By evaluating the static resource attributes and dynamic operation indicators of on-board applications, combined with the weight fusion results, the problem of inaccurate evaluation results in the existing technology is solved, and a more comprehensive performance evaluation is achieved.
Patent Information
- Application Number
- CN202510579861.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-05-07
- Publication Date
- 2025-07-22
- Estimated Expiration
- 2045-05-07
AI Technical Summary
The performance evaluation method for in-vehicle applications in the prior art has limitations, lacks accuracy, and it is difficult to fully reflect the static and dynamic performance of the application.
By obtaining the resource attributes of the on-board application in the non-operating state and the operating indicators of the running state, static performance evaluation and dynamic performance evaluation were carried out separately, and combining the respective weight fusion evaluation results of the two, the evaluation model was constructed using the reference values and preset scores of the template application.
It improves the objective accuracy and comprehensiveness of the evaluation results of on-board applications, comprehensively considering the impact of static and dynamic performance on the overall performance of the application, and provides a more comprehensive evaluation.
Smart Images

Figure CN120104458B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the technical field of new energy vehicles, and particularly to a method and device for evaluating in-vehicle applications and a computer-readable storage medium. Background Art
[0002] In a vehicle-mounted system, there are many in-vehicle applications, which cover functions such as vehicle settings, Bluetooth phone, multimedia applications, navigation, and vehicle-mounted assistants, and are installed in the vehicle-mounted system to meet different functional requirements of users. Different in-vehicle applications have different performance manifestations. In the related art, the method for evaluating the performance of an application program usually uses a preset test script to test the performance of the application program, and evaluates the performance of the application program according to various performance data obtained from the test.
[0003] However, the evaluation results of the application program performance evaluation method in the related art have limitations. Summary of the Invention
[0004] Based on this, it is necessary to provide an in-vehicle application evaluation method, device, new energy vehicle, computer-readable storage medium, and computer program product that can improve the accuracy of the evaluation results for the above technical problems.
[0005] In a first aspect, the present application provides an in-vehicle application evaluation method, including:
[0006] Obtain multiple resource attributes of the in-vehicle application in a non-running state; the resource attributes include at least two of the installation package size, the number of redundant resources, the number of redundant files, and the proportion of high-time-consuming resources;
[0007] Based on the resource attributes and at least one evaluation model corresponding to each of the resource attributes, determine the static performance evaluation result of the in-vehicle application;
[0008] Obtain data of multiple running indicators of the in-vehicle application in a running state;
[0009] Based on the data of the running indicators and at least one evaluation model corresponding to each of the running indicators, determine the dynamic performance evaluation result of the in-vehicle application; the evaluation models corresponding to the running indicators are constructed based on the reference values of the running indicators of the template application and the preset scores corresponding to the reference values; the test environment of the reference values of the running indicators of the template application is the same as the test environment of the in-vehicle application;
[0010] According to the weights corresponding to the static performance evaluation result and the dynamic performance evaluation result respectively, fuse the static performance evaluation result and the dynamic performance evaluation result to obtain the evaluation result of the in-vehicle application.
[0011] In combination with the first aspect, in one embodiment, the multiple resource attributes in the non - running state include multiple resource attributes; obtaining the resource attributes of the in - vehicle application in the non - running state includes:
[0012] Obtaining the size of the installation package of the in - vehicle application;
[0013] Based on the decompilation result of the installation package of the in - vehicle application, obtaining the target file information and target resource information of the in - vehicle application;
[0014] The target file information is information characterizing the file redundancy situation of the in - vehicle application; the target resource information is information characterizing the resource redundancy situation and / or the proportion of high - time - consuming resources of the in - vehicle application.
[0015] In combination with the first aspect, in one embodiment, determining the static performance evaluation result of the in - vehicle application based on at least one evaluation model corresponding to each of the resource attributes includes:
[0016] Based on the evaluation model corresponding to the installation package size, determining the comparison result between the installation package size and at least one scoring threshold included in the evaluation model, and determining the performance score of the installation package size from the comparison result;
[0017] Based on the evaluation model corresponding to the target file information, determining the comparison result between the target file information and at least one scoring threshold included in the evaluation model, and determining the performance score of the target file information from the comparison result;
[0018] Based on the evaluation model corresponding to the target resource information, determining the comparison result between the target resource information and at least one scoring threshold included in the evaluation model, and determining the performance score of the target resource information from the comparison result;
[0019] Based on the performance score of the installation package size, the performance score of the target file information, and the performance score of the target resource information, determining the static performance evaluation result of the in - vehicle application;
[0020] Wherein, the evaluation model corresponding to the installation package size, the evaluation model corresponding to the target file information, and the evaluation model corresponding to the target resource information are different from each other.
[0021] In combination with the first aspect, in one embodiment, the data of the running metrics includes the cold start time and multiple stress test metric values, and obtaining the data of multiple running metrics of the in - vehicle application in the running state includes:
[0022] Invoke the preset command-line tool to start the in-vehicle application, and determine the cold start time of the in-vehicle application;
[0023] Perform a stress test on the in-vehicle application according to the preset stress test script to obtain multiple stress test index values of the in-vehicle application.
[0024] Combined with the first aspect, in one embodiment, before determining the dynamic evaluation result of the in-vehicle application based on at least one evaluation model corresponding to the operation index, it further includes:
[0025] Invoke the preset command-line tool to start the template application, and invoke the preset stress test script to perform a stress test on the template application to obtain the cold start time and multiple stress test index values of the template application, which are used as the cold start time reference value and the stress test index reference values of each stress test index respectively;
[0026] Obtain the preset score corresponding to the cold start time reference value of the template application, and the preset scores corresponding to the stress test index reference values of each stress test index;
[0027] According to the cold start time reference value and its corresponding preset score, the cold start score threshold and its corresponding cold start time, determine the cold start score proportion coefficient, and construct the evaluation model corresponding to the cold start time based on the cold start score proportion coefficient;
[0028] According to the stress test index reference value and its corresponding preset score, the stress test index score threshold and its corresponding stress test index value, determine the stress test index score proportion coefficient of each stress test index, and construct the evaluation model corresponding to each stress test index based on the stress test index score proportion coefficient.
[0029] Combined with the first aspect, in one embodiment, determining the dynamic evaluation result of the in-vehicle application based on at least one evaluation model corresponding to each of the operation indexes includes:
[0030] Substitute the cold start time into the evaluation model corresponding to the cold start time, and based on the difference between the cold start time and the cold start score threshold and the cold start score proportion coefficient, obtain the performance score of the cold start time;
[0031] Substitute the stress test index value into the evaluation model corresponding to the stress test index, and based on the difference between the stress test index value and the stress test index score threshold and the stress test index score proportion coefficient, obtain the performance score of the stress test index value;
[0032] Based on the performance score of the cold start time and the performance scores of the stress test index values of each item, determine the dynamic performance evaluation result of the in-vehicle application;
[0033] The evaluation model corresponding to the stress test index is different from the evaluation model corresponding to the cold start time.
[0034] Combined with the first aspect, in one embodiment, determining the dynamic performance evaluation result of the in-vehicle application based on the performance score corresponding to the cold start time and the performance scores of the stress test index values includes:
[0035] According to the weights corresponding to the performance scores of the cold start time and the performance scores of multiple stress test index values, fuse the performance score of the cold start time and the performance scores of multiple stress test index values to obtain the dynamic evaluation result of the in-vehicle application.
[0036] Combined with the first aspect, in one embodiment, the method described in any of the above embodiments further includes:
[0037] Based on the evaluation results of the in-vehicle applications in the in-vehicle system and a preset performance level evaluation model, obtain the performance levels of the in-vehicle applications;
[0038] Display the evaluation results and / or performance levels of multiple in-vehicle applications in the in-vehicle system.
[0039] In a second aspect, the present application further provides an in-vehicle application evaluation device, including:
[0040] A first acquisition module, configured to acquire multiple resource attributes of the in-vehicle application in a non-running state; the resource attributes include at least two of the installation package size, the number of redundant resources, the number of redundant files, and the proportion of high-time-consuming resources;
[0041] A static evaluation module, configured to determine the static performance evaluation result of the in-vehicle application based on the resource attributes and at least one evaluation model corresponding to each of the resource attributes;
[0042] A second acquisition module, configured to acquire data of multiple running indicators of the in-vehicle application in a running state;
[0043] A dynamic evaluation module, configured to determine the dynamic performance evaluation result of the in-vehicle application based on the data of the running indicators and at least one evaluation model corresponding to each of the running indicators; the evaluation models corresponding to the running indicators are constructed based on the reference values of the running indicators of the template application and the preset scores corresponding to the reference values; the test environment of the reference values of the running indicators of the template application is the same as the test environment of the in-vehicle application;
[0044] An application evaluation module, configured to fuse the static performance evaluation result and the dynamic performance evaluation result according to the respective weights of the static performance evaluation result and the dynamic performance evaluation result, so as to obtain the evaluation result of the in-vehicle application.
[0045] In a third aspect, the present application further provides a new energy vehicle, including a memory and a processor, where the memory stores a computer program, and when the processor executes the computer program, the following steps are implemented:
[0046] Obtain multiple resource attributes of the in-vehicle application in a non-running state;
[0047] Based on the resource attributes and at least one evaluation model corresponding to each of the resource attributes, determine the static performance evaluation result of the in-vehicle application; the resource attributes include at least two of the installation package size, the number of redundant resources, the number of redundant files, and the proportion of high-time-consuming resources;
[0048] Obtain data of multiple running metrics of the in-vehicle application in a running state;
[0049] Based on the data of the running metrics and at least one evaluation model corresponding to each of the running metrics, determine the dynamic performance evaluation result of the in-vehicle application; the evaluation models corresponding to the running metrics are constructed based on the reference values of the running metrics of the template application and the preset scores corresponding to the reference values; the test environment of the reference values of the running metrics of the template application is the same as the test environment of the in-vehicle application;
[0050] According to the respective weights of the static performance evaluation result and the dynamic performance evaluation result, fuse the static performance evaluation result and the dynamic performance evaluation result to obtain the evaluation result of the in-vehicle application.
[0051] In a fourth aspect, the present application further provides a computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, the following steps are implemented:
[0052] Obtain multiple resource attributes of the in-vehicle application in a non-running state; the resource attributes include at least two of the installation package size, the number of redundant resources, the number of redundant files, and the proportion of high-time-consuming resources;
[0053] Based on the resource attributes and at least one evaluation model corresponding to each of the resource attributes, determine the static performance evaluation result of the in-vehicle application;
[0054] Obtain data of multiple running metrics of the in-vehicle application in a running state;
[0055] Determine the dynamic performance evaluation result of the in-vehicle application based on the data of the operating metrics and at least one evaluation model corresponding to each of the operating metrics; the evaluation models corresponding to the operating metrics are constructed based on the reference values of the operating metrics of the template application and the preset scores corresponding to the reference values; the test environment of the reference values of the operating metrics of the template application is the same as the test environment of the in-vehicle application;
[0056] According to the weights corresponding to the static performance evaluation result and the dynamic performance evaluation result respectively, fuse the static performance evaluation result and the dynamic performance evaluation result to obtain the evaluation result of the in-vehicle application.
[0057] In a fifth aspect, the present application further provides a computer program product, including a computer program, which when executed by a processor implements the following steps:
[0058] Obtain multiple resource attributes of the in-vehicle application in a non-operating state; the resource attributes include at least two of the installation package size, the number of redundant resources, the number of redundant files, and the proportion of high-time-consuming resources;
[0059] Based on the resource attributes and at least one evaluation model corresponding to each of the resource attributes, determine the static performance evaluation result of the in-vehicle application;
[0060] Obtain the data of multiple operating metrics of the in-vehicle application in an operating state;
[0061] Based on the data of the operating metrics and at least one evaluation model corresponding to each of the operating metrics, determine the dynamic performance evaluation result of the in-vehicle application; the evaluation models corresponding to the operating metrics are constructed based on the reference values of the operating metrics of the template application and the preset scores corresponding to the reference values; the test environment of the reference values of the operating metrics of the template application is the same as the test environment of the in-vehicle application;
[0062] According to the weights corresponding to the static performance evaluation result and the dynamic performance evaluation result respectively, fuse the static performance evaluation result and the dynamic performance evaluation result to obtain the evaluation result of the in-vehicle application.
[0063] The above vehicle-mounted application evaluation method, device, computer device, computer-readable storage medium and computer program product. The method obtains multiple resource attributes (i.e., static attributes) of the vehicle-mounted application in the non-running state. Among them, the resource attributes include at least two of the installation package size, the number of redundant resources, the number of redundant files, and the proportion of high-time-consuming resources. And based on the static attributes and at least one evaluation model corresponding to each static attribute, the static performance evaluation result of the vehicle-mounted application is determined, so as to realize the performance evaluation of the vehicle-mounted application in the non-running state. In addition, data of multiple operation indicators of the vehicle-mounted application in the running state (i.e., dynamic operation data) are also obtained, and based on each dynamic operation data and at least one evaluation model corresponding thereto, the dynamic performance evaluation result of the vehicle-mounted application is determined, so as to realize the performance evaluation of the vehicle-mounted application in the running state; among them, the evaluation model corresponding to each operation indicator is constructed based on the reference value of the operation indicator of the template application and the preset score corresponding to the reference value; the test environment of the reference value of the operation indicator of the template application is the same as the test environment of the vehicle-mounted application. Further, according to the weights corresponding to the static performance evaluation result and the dynamic performance evaluation result respectively, the static performance evaluation result and the dynamic performance evaluation result are fused to obtain the evaluation result of the vehicle-mounted application. This method not only combines the static performance evaluation result and the dynamic evaluation result to obtain a more comprehensive evaluation result of the vehicle-mounted application, but also considers the importance of the static performance evaluation result and the dynamic evaluation result to the overall performance evaluation result of the vehicle-mounted application, improving the objective accuracy of the performance evaluation result. BRIEF DESCRIPTION OF THE DRAWINGS
[0064] In order to more clearly illustrate the technical solutions in the embodiments of the present application or related technologies, the following will briefly introduce the drawings required for use in the description of the embodiments of the present application or related technologies. Obviously, the drawings in the following description are only some embodiments of the present application. For those of ordinary skill in the art, without creative efforts, other related drawings can also be obtained based on these drawings.
[0065] Figure 1 It is a schematic flowchart of the vehicle-mounted application evaluation method in an embodiment;
[0066] Figure 2 It is a schematic flowchart of the construction steps of the evaluation model corresponding to the operation indicator in an embodiment;
[0067] Figure 3 It is a schematic flowchart of the steps for determining the dynamic evaluation result in an embodiment;
[0068] Figure 4 It is a structural block diagram of the performance evaluator of the vehicle-mounted application in an embodiment;
[0069] Figure 5Schematic flowchart of the static evaluation step in an embodiment;
[0070] Figure 6 Schematic flowchart of the dynamic evaluation step in an embodiment;
[0071] Figure 7 Block diagram of the structure of a vehicle-mounted application evaluation device in an embodiment;
[0072] Figure 8 Internal structure diagram of a new energy vehicle in an embodiment. Detailed implementation manners
[0073] In order to make the objectives, technical solutions and advantages of the present application more clear and understandable, the present application will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and are not used to limit the present application.
[0074] As described in the background art, in the application performance evaluation method of the related art, there is a problem that the evaluation result has limitations. After research by the inventor, it is found that the reason for this problem is that, for example, in a vehicle-mounted system based on the Android system, there are vehicle-mounted applications to be evaluated. These applications are usually vehicle settings, Bluetooth phones, multimedia applications, navigation, vehicle-mounted assistants and other vehicle-mounted applications. These applications are installed in the vehicle-mounted system to meet different functional requirements of users and the system running fluency. Therefore, it is necessary to evaluate the performance of each vehicle-mounted application. In the related art, the evaluation of an application program usually performs defect analysis on the code of the application program, or uses a preset test script to test the performance of the application program, and evaluates the performance of the application program according to various performance data obtained from the test. However, these performance evaluation methods still have limitations and lack more accurate evaluation of the application program.
[0075] For the above reasons, the present application provides a vehicle-mounted application evaluation method. By respectively performing static performance evaluation on the static attributes of the vehicle-mounted application and dynamic performance evaluation on the dynamic attributes, and combining the static performance evaluation result and the dynamic performance evaluation result and their respective influence degrees on the application performance, the evaluation result of the vehicle-mounted application is obtained, aiming to improve the accuracy of the evaluation result of the vehicle-mounted application.
[0076] In one embodiment, as Figure 1 shown, a vehicle-mounted application evaluation method is provided. In this embodiment, this method is exemplified by applying it to a preset performance evaluation application. It can be understood that this application can run in the vehicle-mounted system or in an external detection device system outside the vehicle. When evaluating, this external device is connected to the vehicle-mounted system. In this embodiment, this method includes the following steps S102 to step S110. Among them:
[0077] Step S102, obtain multiple resource attributes of the in-vehicle application in the non-running state.
[0078] Among them, the in-vehicle application can be application software installed in the in-vehicle system, such as application software for vehicle settings, Bluetooth phone, multimedia application, navigation, and in-vehicle assistant, etc., which are used to meet different needs of in-vehicle system users.
[0079] Among them, the non-running state can be the state where the in-vehicle application is not started, also known as the stationary state.
[0080] Among them, the resource attribute can be resource-related information that can reflect the performance of the in-vehicle application in the non-running state. For example, the volume size of the in-vehicle application installation package, the number of redundant resources, the number of redundant files, and the proportion of high-time-consuming resources, etc.
[0081] Optionally, when the in-vehicle application to be performance-evaluated is in the non-running state, the performance evaluation application reads multiple resource attributes of the in-vehicle application as the basis for subsequent performance evaluation.
[0082] Step S104, determine the static performance evaluation result of the in-vehicle application based on the resource attribute and at least one evaluation model corresponding to each resource attribute.
[0083] Among them, the evaluation model corresponding to the resource attribute can be a mathematical model constructed after statistical analysis and pattern analysis of the resource attributes of a large number of in-vehicle applications, or an artificial intelligence model obtained by deep learning training of a neural network based on the historical resource attribute data of the in-vehicle application.
[0084] Among them, the static performance evaluation result characterizes the performance evaluation result of the in-vehicle application in the non-running state and is used to reflect the performance of the in-vehicle application in the non-running state.
[0085] Optionally, the performance evaluation application substitutes the resource attribute into at least one evaluation model corresponding to the resource attribute, and performs evaluations such as quantitative scoring or grade classification on the resource attribute according to the evaluation rules of the evaluation model to determine the static performance evaluation result of the in-vehicle application.
[0086] It should be noted that the resource attribute can include multiple resource attributes, each resource attribute corresponds to one evaluation model, different evaluation models for different operation metrics, or each resource attribute can also correspond to multiple evaluation models. For example, evaluation models corresponding to different parameter thresholds are set for each resource attribute. When evaluating, first match the resource attribute with each parameter threshold, so as to correspond to the appropriate evaluation model.
[0087] Step S106, obtain data of multiple operation metrics of the in-vehicle application in the running state.
[0088] Among them, the running state can be the working state in which the in-vehicle application has been started, indicating that the in-vehicle application is in the working state.
[0089] Among them, the running metrics can be numerical values or data used to measure and evaluate the performance of the in-vehicle application in the running state. For example, response time, throughput, resource utilization rate, and latency, etc.
[0090] Optionally, the performance evaluation application starts the in-vehicle application, performs dynamic analysis on the in-vehicle application, reads the log records of the in-vehicle application during operation, or uses tools such as monitoring tools and performance analyzers to obtain data on multiple running metrics of the in-vehicle application in the running state.
[0091] Step S108, based on the data of the running metrics and at least one evaluation model corresponding to each running metric, determine the dynamic performance evaluation result of the in-vehicle application.
[0092] Among them, the evaluation model corresponding to the running metric can be a mathematical model constructed after statistical analysis and pattern analysis of the data of the running metrics of a large number of in-vehicle applications, or an artificial intelligence model obtained by deep learning training of a neural network based on the historical running metric data of the in-vehicle application.
[0093] Among them, the evaluation models corresponding to the respective running metrics are constructed based on the reference values of the running metrics of the template application and the preset scores corresponding to the reference values; the test environment of the reference values of the running metrics of the template application is the same as the test environment of the in-vehicle application.
[0094] Optionally, the performance evaluation application substitutes the data of the running metrics into at least one evaluation model corresponding to each data of the running metrics, and performs evaluation such as quantitative scoring or grade classification on the data of the running metrics according to the evaluation rules of the evaluation model to determine the dynamic performance evaluation result of the in-vehicle application.
[0095] It should be noted that the running metrics can include multiple running metrics, each running metric corresponds to an evaluation model, and different running metrics correspond to different evaluation models.
[0096] Step S110, according to the weights corresponding to the static performance evaluation result and the dynamic performance evaluation result respectively, fuse the static performance evaluation result and the dynamic performance evaluation result to obtain the evaluation result of the in-vehicle application.
[0097] Among them, the weight can be a numerical value used to reflect the importance or influence of the static performance evaluation result or the dynamic performance evaluation result in the overall evaluation result of the in-vehicle application.
[0098] Among them, the in-vehicle application evaluation result can be information reflecting the overall performance level of the in-vehicle application.
[0099] Optionally, the performance evaluation application obtains the preset weights of the static evaluation result and the dynamic evaluation result, and based on the preset weights of the static evaluation result and the dynamic evaluation result, fuses the static performance evaluation result and the dynamic performance evaluation result. It can be understood that the fusion method can be to perform weighted summation on the static performance evaluation result and the dynamic performance evaluation result to obtain the evaluation result of the in-vehicle application. For example, Score_total = 0.3 * Score_static + 0.7 * Score_runtime, where the evaluation result of the in-vehicle application is Score_total, Score_static and 0.3 are the static performance evaluation result and its weight respectively, and Score_runtime and 0.7 are the dynamic performance evaluation result and its weight respectively.
[0100] In the above in-vehicle application evaluation method, the method obtains multiple resource attributes (i.e., static attributes) of the in-vehicle application in the non-running state. Among them, the resource attributes include at least two of the installation package size, the number of redundant resources, the number of redundant files, and the proportion of high-time-consuming resources, and based on the static attributes and at least one evaluation model corresponding to each static attribute, determines the static performance evaluation result of the in-vehicle application, so as to realize the performance evaluation of the in-vehicle application in the non-running state. In addition, it also obtains the data of multiple running indicators of the in-vehicle application in the running state (i.e., dynamic running data), and based on each dynamic running data and at least one evaluation model corresponding to it, determines the dynamic performance evaluation result of the in-vehicle application, so as to realize the performance evaluation of the in-vehicle application in the running state; among them, the evaluation model corresponding to each running indicator is constructed based on the reference value of the running indicator of the template application and the preset score corresponding to the reference value; the test environment of the reference value of the running indicator of the template application is the same as the test environment of the in-vehicle application. Further, according to the weights corresponding to the static performance evaluation result and the dynamic performance evaluation result respectively, fuses the static performance evaluation result and the dynamic performance evaluation result to obtain the evaluation result of the in-vehicle application. This method not only combines the static performance evaluation result and the dynamic evaluation result to obtain a more comprehensive evaluation result of the in-vehicle application, but also considers the importance of the static performance evaluation result and the dynamic performance evaluation result to the overall performance evaluation result of the in-vehicle application, improving the objective accuracy of the performance evaluation result.
[0101] In an exemplary embodiment, the resource attributes in the non-running state include multiple resource attributes; step S102 obtains multiple resource attributes of the in-vehicle application in the non-running state, including:
[0102] Obtain the installation package size of the in-vehicle application; based on the decompilation result of the installation package of the in-vehicle application, obtain the target file information and target resource information of the in-vehicle application.
[0103] Among them, the installation package size can be the volume size of the installation package of the in-vehicle application, which is usually related to the specific application and function of the in-vehicle application, and the unit is bytes.
[0104] Among them, decompilation can be the decompilation of application software, which refers to the process of converting a compiled program (such as an executable file or a library file) back to a form closer to the source code; the decompilation result usually includes pseudocode or high-level language code, metadata, program logic, and resource files, etc.
[0105] Among them, the target file information is the information characterizing the file redundancy situation of the in-vehicle application, such as the number of files with the same name in the SO file (Shared Object file), the number of pictures with the same name in the picture resource folder, and the number of resources defined in the mapping table but not used in the source code, etc.; among them, the target resource information is the information characterizing the resource redundancy situation and / or the proportion of high-time-consuming resources of the in-vehicle application, such as the layout depth of the layout file (interface layout file) and the number of frame animation resource files, etc.
[0106] Optionally, the performance evaluation application reads the specification information of the in-vehicle application to obtain the installation package size of the in-vehicle application, performs a decompilation operation on the installation package of the in-vehicle application to obtain the decompilation result, and further loads and parses the resource files and source code in the decompilation result to obtain the target file information and target resource information of the in-vehicle application. For example, obtain the SO folder, picture resource folder, resource mapping table and source code, layout layout file and drawable (drawable resource) folder from the decompilation result. In the SO folder and picture resource folder, determine the number of SO files with the same name and the number of pictures with the same name; compare and search the resource mapping table and source code to determine the number of resources defined in the mapping table but not used in the source code; load and parse the layout layout file to obtain the layout depth of the layout layout file, and determine the number of layout layout files with a layout depth greater than 2; loop through the files in the drawable folder and find in the files <animation-list>The standard file of a node (an element used by the Android system to define animations in an Extensible Markup Language file) is denoted as a frame animation file, and the number of frame animation files is determined; the number of SO files with the same name and the number of pictures with the same name are determined as target file information, and the number of resources defined in the mapping table but not used in the source code, the number of layout files with a layout depth greater than 2, and the number of frame animation files are determined as target resource information.
[0107] In this embodiment, by obtaining the installation package size, target resource information, and target file information of the in-vehicle application, the target resource information and target file information can respectively reflect the redundant file information, resource redundancy situation, and high-time-consuming resource proportion situation of the in-vehicle application, and these are used as the basis for the static performance evaluation of the in-vehicle application, considering multiple influencing factors such as the installation package size occupancy, redundant resources, redundant files, and high-time-consuming resources of the in-vehicle application, thereby further improving the comprehensiveness and accuracy of the evaluation results of the in-vehicle application.
[0108] In an exemplary embodiment, step S104 determines the static performance evaluation result of the in-vehicle application based on at least one evaluation model corresponding to each resource attribute, including:
[0109] Based on the evaluation model corresponding to the installation package size, determine the comparison result between the installation package size and at least one scoring threshold included in the evaluation model, and determine the performance score of the installation package size from the comparison result; based on the evaluation model corresponding to the target file information, determine the comparison result between the target file information and at least one scoring threshold included in the evaluation model, and determine the performance score of the target file information from the comparison result; based on the evaluation model corresponding to the target resource information, determine the comparison result between the target resource information and at least one scoring threshold included in the evaluation model, and determine the performance score of the target resource information from the comparison result; based on the performance score of the installation package size, the performance score of the target file information, and the performance score of the target resource information, determine the static performance evaluation result of the in-vehicle application.
[0110] Among them, the scoring threshold can be a threshold set based on the statistical analysis results of the resource attributes of a large number of in-vehicle applications. It can be understood that if there are multiple scoring thresholds, it means there are multiple interval ranges divided by the thresholds. The comparison results of the resource attributes with the scoring thresholds are different, that is, the resource attributes are in different interval ranges, and the evaluation principles in the corresponding evaluation models are different; among them, the comparison result can be that the resource attribute is in one of the ranges of the scoring threshold.
[0111] Among them, the performance score can be a score obtained by calculating the resource attribute according to the scoring principle of the evaluation model.
[0112] Among them, the evaluation models corresponding to the installation package size, the target file information, and the target resource information are different from each other.
[0113] Optionally, the performance evaluation application determines the comparison result between the installation package size and at least one scoring threshold included in the evaluation model based on the evaluation model corresponding to the installation package size, and determines the performance score of the installation package size from the comparison result. For example, the full score of the performance score of the installation package size is set to 50 points, and the scoring thresholds of the installation package size are 50 and 150, corresponding to three interval ranges of (0, 50), [50, 150], and (150, ∞), with the unit being MB (megabyte). If the comparison result is that the installation package size is less than 50MB, the performance score is 50 points; if the comparison result is that the installation package size is greater than 150MB, the performance score is 0 points; if the comparison result is that the installation package size is greater than or equal to 50MB and less than or equal to 150MB, the calculation expression of the corresponding performance score in the performance model is: score_1 = 50 - 0.5 * (x1 - 50), and the calculation result is taken as an integer. Among them, score_1 is the performance score of the installation package size, and x1 is the installation package size of the in-vehicle application.
[0114] Optionally, in the same way as the calculation method of the performance score of the installation package size, the performance evaluation application compares the target file information with at least one scoring threshold in the corresponding evaluation model, determines the comparison result between the target file information and at least one scoring threshold, and obtains the performance score of the target file information from the comparison result and the calculation principle corresponding to the evaluation model. For example, the full score of the performance evaluation of the SO file information is 10 points, and the evaluation model corresponding to the SO file information is:
[0115] score_2 = 10 – 2 * (x2 - 1), 1 ≤ x2 ≤ 6
[0116] score_2 = 0, x2 > 6
[0117] Among them, x2 is the number of SO files with the same name, and score_2 is the performance score of the SO file information.
[0118] In addition, the full score of the performance evaluation of the picture resource file information is 10 points, and the evaluation model corresponding to the picture resource file information is:
[0119] score_3 = 10 – (x3 - 1), 1 ≤ x3 ≤ 11
[0120] score_3 = 0, x3 > 11
[0121] Among them, x3 is the number of pictures with the same name, and score_3 is the performance evaluation of the picture resource file information.
[0122] Optionally, the performance evaluation application compares the target resource information with at least one scoring threshold in the corresponding evaluation model, determines the comparison result between the target resource information and the at least one scoring threshold, and obtains the performance score of the target resource information based on the comparison result and the corresponding calculation principle of the evaluation model. For example, the full score of the performance evaluation of redundant source code information is 10 points, and the evaluation model corresponding to the redundant source code information is:
[0123] score_4 = 10 – (x4 - 1), 1 ≤ x4 ≤ 11
[0124] score_4 = 0, x4 > 11
[0125] where x4 is the number of resources defined in the mapping table but not used in the source code, and score_4 is the performance score corresponding to the redundant source code.
[0126] In addition, the full score of the performance evaluation of the layout layout file information is 10 points, and the evaluation model corresponding to the layout layout file information is:
[0127] score_5 = 10 – x5, 0 ≤ x5 ≤ 10
[0128] score_5 = 0, x5 > 11
[0129] where x5 is the number of layout layout files with a layout depth greater than 2, and score_5 is the performance score of the layout layout file information.
[0130] In addition, the full score of the performance evaluation of the frame animation file information is 10 points, and the performance evaluation model corresponding to the frame animation file information is:
[0131] score_6 = 10 – 2 * x6, 0 ≤ x6 ≤ 5
[0132] score_6 = 0, x6 > 5
[0133] where x6 is the number of frame animation files, and score_6 is the performance score corresponding to the frame animation file information.
[0134] Furthermore, the performance evaluation application determines the sum value of the performance scores of the installation package size, the performance scores of the target file information, and the performance scores of the target resource information as the static performance evaluation result of the in-vehicle application. For example, the calculation formula for the static performance evaluation result is:
[0135] Score_static = score_1 + score_2 + score_3 + score_4 + score_5 + score_6
[0136] Among them, Score_static is the static performance evaluation result.
[0137] In this embodiment, through the evaluation models of the installation package size, target file information, and target resource information, the performance scores of various resource attributes are quantified, enabling a more objective and accurate reflection of the advantages and disadvantages of the static performance of in-vehicle applications. In addition, by comprehensively considering the quantified performance scores of resource attributes in multiple aspects, the static performance evaluation result of the in-vehicle application is obtained, further improving the comprehensiveness and accuracy of the performance evaluation result.
[0138] In an exemplary embodiment, the data of the running metrics includes the cold start time and multiple stress test metric values. Step S106 obtains the data of multiple running metrics of the in-vehicle application in the running state, including:
[0139] Call a preset command-line tool to start the in-vehicle application and determine the cold start time of the in-vehicle application; perform a stress test on the in-vehicle application according to a preset stress test script to obtain multiple stress test metric values of the in-vehicle application.
[0140] Among them, the cold start time may refer to the time required for the user to first click the application icon until the application interface is fully displayed (including all visual elements) when the application has not been loaded into the memory. For example, the startup of an Android application includes cold start, hot start, and warm start. Cold start means that the application process does not exist and the Activity does not exist. The system first needs to create a process for the application to be started and then create an activity; hot start means that the application process exists and the Activity to be displayed has not been destroyed, and there is no need to recreate the activity, only need to switch the process from the background to the foreground; warm start means that the application process exists and the activity has been destroyed, and the system needs to recreate the activity.
[0141] Among them, the command-line tool may be a tool for interacting with a computer by inputting instructions through a text interface (Shell). The command-line tool adopted in this embodiment may be an ADB (Android Debug Bridge) command-line tool.
[0142] Among them, the stress test script may be script code for automatically performing stress tests, used to simulate user behaviors, generate traffic, or call test interfaces; among them, the stress test may be a test method for evaluating the performance, stability, and reliability of a system (software / hardware) under extreme stress by simulating high loads and extreme conditions.
[0143] Among them, the stress test metric values characterize the runtime quality of the in-vehicle application under stress testing, including CPU (Central Processing Unit) usage rate, memory occupancy, frame stutter rate of the application display, etc.
[0144] Optionally, the performance evaluation application calls a preset command-line tool to automatically start the in-vehicle application, and determines the cold start time of the in-vehicle application by obtaining the time of "Displayed" (a performance metric used to measure the time when the application interface is first drawn and displayed on the screen). The performance evaluation application calls a preset stress test script to perform multiple stress tests on the in-vehicle application through the Monkey tool (a stress test tool for the Android system), and obtains multiple stress test metric values of the in-vehicle application. It can be understood that the Monkey tool will automatically generate and send user events until the test ends or a certain stop condition is met. The test end condition can be to meet the preset number of tests. When the Monkey tool executes the test, parameters such as the test time, event frequency, and installation package name can be specified by technicians.
[0145] In this embodiment, starting the in-vehicle application through the command-line tool can better automate the performance evaluation process, and obtaining performance data in multiple aspects such as the cold start time and multiple stress test metric values provides data support for the subsequent dynamic performance evaluation of the in-vehicle application, further improving the comprehensiveness and accuracy of the performance evaluation results.
[0146] In an exemplary embodiment, as Figure 2 shown, before step S108 determines the dynamic evaluation result of the in-vehicle application based on at least one evaluation model corresponding to each operation metric, it further includes:
[0147] Step S202, calling a preset command-line tool to start the template application, and calling a preset stress test script to perform a stress test on the template application, obtaining the cold start time of the template application and multiple stress test metric values, which are respectively used as the cold start time reference value and the stress test metric reference values of each stress test metric.
[0148] Among them, the template application can be a preset reference application for testing the performance of other in-vehicle applications.
[0149] Optionally, with the same test principle as that of the in-vehicle reference, the performance evaluation application calls a preset command-line tool to start the template application, and the performance evaluation application also calls a preset stress test script to perform a stress test on the template application, obtaining the cold start time of the template application and multiple stress test index values. The stress test index values also include the CPU usage rate, memory occupancy, frame stuttering rate of the application display, etc. The cold start time of the template application is used as the cold start time reference value, and the multiple stress test index values of the template application are used as the stress test index reference values for each stress test index. It should be noted that the template application includes time-consuming tasks using a thread pool with 5 threads. The time-consuming tasks include network request to load pictures, database operations, picture list display, etc. The test environment of the template application is the same as that of the in-vehicle application. The template application, as a reference application, can isolate the influence brought by the hardware capabilities of the in-vehicle system.
[0150] Step S204: Obtain the preset score corresponding to the cold start time reference value of the template application, and the preset scores corresponding to the reference values of each stress test index.
[0151] Among them, the preset score can be a reference score set by technicians according to the performance quality of the template application.
[0152] Optionally, the performance evaluation application obtains the preset score corresponding to the cold start time reference value of the template application, and the preset scores corresponding to the reference values of each stress test index, laying a foundation for subsequent construction of the evaluation model.
[0153] Step S206: Determine the cold start score proportionality coefficient according to the cold start time reference value and its corresponding preset score, the cold start score threshold and its corresponding cold start time, and construct an evaluation model corresponding to the cold start time based on the cold start score proportionality coefficient.
[0154] Among them, the score threshold can be a threshold set based on the statistical analysis results of the dynamic performance of a large number of in-vehicle applications. It can be understood that there can be multiple score thresholds, which means the threshold range can include multiple ranges. If the comparison results of the operation indicators and the score thresholds are different, the evaluation principles in the corresponding evaluation model are different.
[0155] Among them, the cold start score proportionality coefficient is used to adjust the scoring standard of the evaluation model according to the performance of the template application, so as to isolate the influence of the hardware capabilities of the in-vehicle system on the performance evaluation results.
[0156] Optionally, the performance evaluation application determines the cold start score proportionality coefficient according to the cold start time reference value and its corresponding preset score, the cold start score threshold and its corresponding cold start time, and constructs an evaluation model corresponding to the cold start time based on the cold start score proportionality coefficient and the preset scoring rule. For example, the performance score for the cold start time has a full score of 100 points, the cold start time reference value is time_temp, the score threshold is 0.5 s, and the preset score corresponding to the cold start time reference value is 80 points. Then the cold start score proportionality coefficient is 20 / (time_temp - 0.5).
[0157] Step S208: Determine the stress test index score proportionality coefficient for each stress test index according to the stress test index reference value and its corresponding preset score, the stress test index score threshold and its corresponding stress test index value, and construct an evaluation model corresponding to each stress test index based on the stress test index score proportionality coefficient.
[0158] Optionally, the performance evaluation application determines the stress test index score proportionality coefficient for each stress test index according to the stress test index reference value and its corresponding preset score, the stress test index score threshold and its corresponding stress test index value, and constructs an evaluation model corresponding to each stress test index based on the stress test index score proportionality coefficient and the preset scoring rule. It can be understood that the method for determining the stress test index value score proportionality coefficient is the same in principle as the method for determining the cold start time score proportionality coefficient. For example, the stress test index value is the CPU occupancy rate, the performance score has a full score of 100 points, the stress test index reference value of the CPU occupancy rate is cpu_temp, and one of the score thresholds is 40%. Then the stress test index score proportionality coefficient of the CPU occupancy rate is 20 / (cpu_temp - 40%).
[0159] In this embodiment, by performing a stress test on the template application, taking the cold start time and multiple stress test index values of the template application as reference values, and comprehensively using the score threshold, reference value, and preset score to determine the proportionality coefficient, further constructing a performance evaluation model, and adjusting the scoring standard of the evaluation model according to the performance of the template application, so as to isolate the influence of the hardware capabilities of the in-vehicle system on the performance evaluation results.
[0160] In an exemplary embodiment, as Figure 3 shown, step S108 determines the dynamic evaluation result of the in-vehicle application based on at least one evaluation model corresponding to each operation index, including:
[0161] Step S302: Substitute the cold start time into the evaluation model corresponding to the cold start time, and obtain the performance score of the cold start time based on the difference between the cold start time and the cold start score threshold and the cold start score proportionality coefficient.
[0162] Optionally, the performance evaluation application substitutes the cold start time of the in-vehicle application into the evaluation model corresponding to the cold start time, compares the cold start time with the scoring threshold, and when the comparison result shows that the cold start time is within the range to be calculated, based on the difference between the cold start time and the cold start scoring threshold and the cold start score proportionality coefficient, obtains the performance score of the cold start time; when the comparison result shows that the cold start time is less than or equal to the lower limit of the range to be calculated, the performance score is full marks; when the comparison result shows that the cold start time is greater than or equal to the upper limit of the range to be calculated, the performance score is zero. For example, if the full score of the performance score for the cold start time is 100 points, the evaluation model corresponding to the cold start time is:
[0163] score_time_A = 100 - 20 / (time_temp - 0.5) * (time_A - 0.5), 0.5 < time_A < 3
[0164] score_time_A = 100, time_A ≤ 0.5
[0165] score_time_A = 0, time_A ≥ 3
[0166] Among them, score_time_A is the performance score of the cold start time, 20 / (time_temp - 0.5) is the cold start score proportionality coefficient, time_temp is the cold start time reference value, and time_A is the cold start time of the in-vehicle application.
[0167] Step S304, substitute the stress test index value into the evaluation model corresponding to the stress test index, and based on the difference between the stress test index value and the stress test index scoring threshold and the stress test index score proportionality coefficient, obtain the performance score of the stress test index value.
[0168] Among them, the evaluation model corresponding to the stress test index is different from the evaluation model corresponding to the cold start time.
[0169] Optionally, the performance evaluation application substitutes the stress test index value of the in-vehicle application into the evaluation model corresponding to the stress test index value, compares the stress test index value with the scoring threshold, and when the comparison result shows that the stress test index value is within the range to be calculated, based on the difference between the stress test index value and the scoring threshold of the stress test index value and the stress test index score proportionality coefficient, obtains the performance score of the stress test index value; when the comparison result shows that the stress test index value is less than or equal to the lower limit of the range to be calculated, the performance score is full marks; when the stress test index value is greater than or equal to the upper limit of the range to be calculated, the performance score is zero. For example, if the full score of the performance score for each stress test index value is 100 points, when the stress test index value is the CPU occupancy rate, the corresponding evaluation model is:
[0170] score_cpu_A = 100 - 20 / (cpu_temp - 40%) * (cpu_A - 40%), 40% < cpu_A < 200%
[0171] score_cpu_A = 100, cpu_A ≤ 40%
[0172] score_cpu_A = 0, cpu_A ≥ 200%
[0173] Among them, score_cpu is the performance score of the CPU occupancy rate, cpu_A is the CPU occupancy rate of the in-vehicle application, 20 / (cpu_temp - 40%) is the scoring ratio coefficient of the CPU occupancy rate stress test index, and cpu_temp is the reference value of the CPU occupancy rate stress test index.
[0174] In addition, when the stress test index value is the memory occupancy, the corresponding evaluation model is:
[0175] score_mem_A = 100 - 20 / (mem_temp - 80) * (mem_A - 80), 80 < mem_A < 600
[0176] score_mem_A = 100, mem_A ≤ 80
[0177] score_mem_A = 0, mem_A ≥ 600
[0178] Among them, score_mem_A is the performance score of the memory occupancy, mem_A is the memory occupancy size of the in-vehicle application, with the unit of MB, 20 / (mem_temp - 80) is the scoring ratio coefficient of the memory occupancy stress test index, and mem_temp is the reference value of the memory occupancy stress test index.
[0179] In addition, when the stress test index value is the frame stutter rate of the application display, the corresponding evaluation model is:
[0180] score_frame_A = 100 - 20 / (frame_temp - 0.5%) * (frame_A - 50%), 0.5% < frame_A < 50%
[0181] score_frame_A = 100, frame_A ≤ 0.5%
[0182] score_frame_A = 0, frame_A ≥ 50%
[0183] Among them, score_frame_A is the performance score of the stuttering rate of the application display frame, frame_A is the stuttering rate of the application display frame of the in-vehicle application, 20 / (frame_temp - 80) is the stress test index score ratio coefficient of the stuttering rate of the application display frame, and frame_temp is the reference value of the stress test index of the stuttering rate of the application display frame.
[0184] Step S306: Determine the dynamic performance evaluation result of the in-vehicle application based on the performance score of the cold start time and the performance scores of each stress test index value.
[0185] Optionally, the performance evaluation application combines the performance score of the cold start time and the performance scores of each stress test index value, and determines the combined result as the dynamic performance evaluation result of the in-vehicle application.
[0186] In this embodiment, through the evaluation model of the cold start time and multiple stress test index values, the performance scores of each operation index are quantified, so that the advantages and disadvantages of the dynamic performance of the in-vehicle application can be reflected more objectively and accurately. In addition, the dynamic performance evaluation result of the in-vehicle application is obtained by combining the quantified performance scores of the operation indexes in multiple aspects, which further improves the comprehensiveness and accuracy of the performance evaluation result.
[0187] In an exemplary embodiment, step S306 determines the dynamic performance evaluation result of the in-vehicle application based on the performance score of the cold start time and the performance scores of each stress test index value, including:
[0188] According to the weights corresponding to the performance score of the cold start time and the performance scores of multiple stress test index values, fuse the performance score of the cold start time and the performance scores of multiple stress test index values to obtain the dynamic evaluation result of the in-vehicle application.
[0189] Among them, the weight can represent the influence and importance of the cold start time and each stress test index value on the dynamic performance evaluation result, and can be set according to actual scoring requirements and experience.
[0190] Optionally, the performance evaluation application obtains the weights corresponding to the performance scores of the cold start time and the performance scores of multiple stress test metric values respectively, and performs a weighted sum processing on the performance scores of the cold start time and the performance scores of multiple stress test metric values to obtain the dynamic evaluation result of the in-vehicle application. For example, Score_runtime = 0.7 * (0.1 * score_time_A + 0.3 * score_cpu_A + 0.3 * score_mem_A + 0.3 * score_frame_A), where Score_runtime is the dynamic evaluation result of the in-vehicle application, score_time_A and 0.1 respectively represent the performance score of the cold start time and its weight, score_cpu_A and 0.3 respectively represent the performance score of the CPU occupancy rate and its weight, score_mem_A and 0.3 respectively represent the performance score of the memory occupancy and its weight, and score_frame_A and 0.3 respectively represent the performance score of the frame jitter rate of the application display and its weight.
[0191] In this embodiment, by assigning different weights to different running metrics (such as cold start time, CPU occupancy rate, memory occupancy, and frame jitter rate of the display frame) and performing a weighted sum to obtain the dynamic performance evaluation result of the in-vehicle application, the performance of the in-vehicle application can be evaluated more comprehensively, and the reliability of the performance evaluation is improved.
[0192] In an exemplary embodiment, the method described in any of the above embodiments further includes:
[0193] Based on the evaluation results of each in-vehicle application in the vehicle-mounted system and a preset performance level evaluation model, obtain the performance levels of each in-vehicle application; display the evaluation results and / or performance levels of multiple in-vehicle applications in the vehicle-mounted system.
[0194] Among them, the preset performance level evaluation model can be a performance evaluation result interval range and level mapping table set based on experience, or a classification model obtained by training a neural network based on historical performance evaluation results.
[0195] Among them, the performance level can be used to characterize the quality of the overall performance of the in-vehicle application. For example, the performance levels include unqualified, qualified, good, and excellent, etc.
[0196] Optionally, the performance evaluation application inputs the evaluation results of each in-vehicle application in the in-vehicle system into a preset performance level evaluation model to obtain the performance levels of each in-vehicle application. For example, the performance level evaluation model is as follows: applications with a performance score lower than 60 points have an unqualified performance level; in-vehicle applications with performance evaluation results between [60, 70) have a qualified performance level; in-vehicle applications with performance evaluation results between [70, 90) have a good performance level; and in-vehicle applications with performance evaluation results in the range of [90, 100] have an excellent performance level. Further, the performance evaluation application integrates the evaluation results and / or performance levels of all in-vehicle applications and displays them through the display page of the in-vehicle system. It can be understood that the evaluation results and / or performance levels can be directly displayed on the in-vehicle screen or on the display screen of the external device.
[0197] In this embodiment, through the preset performance level evaluation model, the performance results of the applications are divided into multiple performance levels. This standardized evaluation method makes the performance evaluation process transparent and easy to understand, helping the team and decision-makers quickly obtain the performance status of each application, so as to formulate specific optimization plans.
[0198] In an exemplary embodiment, as Figure 4 shown, a performance evaluator for in-vehicle applications is provided. The performance evaluator is deployed in the in-vehicle system and includes a static evaluation module, a dynamic evaluation module, and a scoring module. Among them:
[0199] The static evaluation module, as Figure 5 shown, provides a schematic diagram of the static evaluation process; it is used to read the in-vehicle applications to be evaluated respectively. The applications to be evaluated are all applications that have been installed in the in-vehicle system. Taking application A.apk as an example. The static evaluation module mainly evaluates the resource usage of the application in the non-running state. The static performance attributes have a relatively small impact on the system performance compared to the running state. According to experience, the proportion is 0.3, and the total static score is 100 points. When finally calculating the application score, the total score is 30 points. Among them, according to the factors affecting the application volume occupancy, the score for the APK package size is 50 points, and the other 5 static influencing factors (target file information and target resource information), including the multi-architecture SO folder (the number of files with the same name in the SO files), the multi-resolution picture resource folder (the number of pictures with the same name in the picture resource folder), the useless resources (the number of resources defined in the mapping table but not used in the source code), the Layout layout level (the layout depth of the layout file), and the frame animation resources (the number of frame animation resource files) are each 10 points. The static performance of the in-vehicle application to be evaluated is scored to obtain the static performance score (static performance evaluation result).
[0200] The dynamic evaluation module, as Figure 6 As shown, a schematic flowchart of dynamic evaluation is provided; it is used to evaluate the performance (operation metrics) of an application during operation. The application under test is run through ADB Shell, and the application A is stress-tested (pressure tested) using the Monkey tool. The test results include cold start speed (cold start time), CPU usage rate (CPU occupancy rate), memory occupancy, and frame stutter rate of the application display. According to the importance of each performance item, in the dynamic monitoring module, the cold start speed accounts for 10 points, and the CPU occupancy rate, memory occupancy, and frame stutter rate of the application display each account for 30 points. The startup speed, CPU occupancy rate, memory occupancy, and frame stutter rate of the template application are obtained by stress-testing the template application using mokey. The template application includes time-consuming tasks using a thread pool with 5 threads. The time-consuming tasks include network request to load pictures, database operations, display of picture lists, etc. The template application serves as a reference application to isolate the influence brought by the hardware capabilities of the in-vehicle system. Assume that the values of the four dynamic performances of the obtained template application are time_temp, cpu_temp, mem_temp, and frame_temp respectively; all the data of the template application are regarded as 80 points to compare the score values of the parameters of other applications. Thus, the dynamic performance score (dynamic performance evaluation result) is obtained.
[0201] A scoring module is used to comprehensively obtain the final score of application A by combining the static performance score and the dynamic performance score, assign corresponding grades such as qualified, unqualified, good, and excellent to the application according to the score, poll each of the above applications under test, and finally obtain the performance scores and performance grades of each application in the in-vehicle system, and display the application name, performance score, and performance grade.
[0202] In this embodiment, the performance of the application is comprehensively evaluated through two dimensions of static and running states and multiple performance factors to comprehensively evaluate the performance of the in-vehicle system applications, so that application developers or testers can intuitively know the performance quality and performance grade of the application.
[0203] It should be understood that although the steps in the flowcharts involved in the above embodiments are sequentially shown according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless there is a clear description in this article, the execution of these steps has no strict order limit, and these steps can be executed in other orders. Moreover, at least a part of the steps in the flowcharts involved in the above embodiments may include multiple steps or multiple stages. These steps or stages are not necessarily executed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be executed alternately or alternately with at least a part of other steps or steps or stages in other steps.
[0204] Based on the same inventive concept, an embodiment of the present application further provides a vehicle-mounted application evaluation device for implementing the vehicle-mounted application evaluation method involved above. The solution for solving the problem provided by this device is similar to the solution described in the above method. Therefore, the specific limitations in one or more embodiments of the vehicle-mounted application evaluation device provided below can refer to the limitations on the vehicle-mounted application evaluation method in the above text, and will not be repeated here.
[0205] In an exemplary embodiment, as Figure 7 shown, a vehicle-mounted application evaluation device 700 is provided, including: a first acquisition module 701, a static evaluation module 702, a second acquisition module 703, a dynamic evaluation module 704, and an application evaluation module 705, where:
[0206] The first acquisition module 701 is configured to acquire multiple resource attributes of the vehicle-mounted application in a non-running state.
[0207] The static evaluation module 702 is configured to determine the static performance evaluation result of the vehicle-mounted application based on the resource attributes and at least one evaluation model corresponding to each resource attribute.
[0208] The second acquisition module 703 is configured to acquire data of multiple running metrics of the vehicle-mounted application in a running state.
[0209] The dynamic evaluation module 704 is configured to determine the dynamic performance evaluation result of the vehicle-mounted application based on the data of the running metrics and at least one evaluation model corresponding to each running metric.
[0210] The application evaluation module 705 is configured to fuse the static performance evaluation result and the dynamic performance evaluation result according to the weights corresponding to the static performance evaluation result and the dynamic performance evaluation result, and obtain the vehicle-mounted application evaluation result.
[0211] Further, in an embodiment, the first acquisition module 701 is further configured to acquire the installation package size of the vehicle-mounted application; based on the decompilation result of the installation package of the vehicle-mounted application, acquire the target file information and target resource information of the vehicle-mounted application; the target file information is information characterizing the file redundancy situation of the vehicle-mounted application; the target resource information is information characterizing the resource redundancy situation and / or the high time-consuming resource ratio situation of the vehicle-mounted application.
[0212] Further, in one embodiment, the static evaluation module 702 is further configured to determine the comparison result between the installation package size and at least one scoring threshold based on the evaluation model corresponding to the installation package size, and determine the performance score of the installation package size from the comparison result; determine the comparison result between the target file information and at least one scoring threshold based on the evaluation model corresponding to the target file information, and determine the performance score of the target file information from the comparison result; determine the comparison result between the target resource information and at least one scoring threshold based on the evaluation model corresponding to the target resource information, and determine the performance score of the target resource information from the comparison result; determine the static performance evaluation result of the in-vehicle application based on the performance scores of the installation package size, the target file information, and the target resource information.
[0213] Further, in one embodiment, the second acquisition module 703 is further configured to call a preset command-line tool to start the in-vehicle application and determine the cold start time of the in-vehicle application; perform a stress test on the in-vehicle application according to a preset stress test script to obtain multiple stress test index values of the in-vehicle application; the stress test index values characterize the runtime quality of the in-vehicle application under the stress test.
[0214] Further, in one embodiment, the dynamic evaluation module 704 is further configured to call a preset stress test script to perform a stress test on the template application to obtain the cold start time and multiple stress test index values of the template application, and use them as the cold start time reference value and the stress test index reference values of each stress test index respectively; obtain the preset scores corresponding to the cold start time reference value of the template application and the preset scores corresponding to the stress test index reference values of each item; determine the cold start score proportionality coefficient according to the cold start time reference value and its corresponding preset score, the cold start score threshold and its corresponding cold start time, and construct an evaluation model corresponding to the cold start time based on the cold start score proportionality coefficient; determine the stress test index score proportionality coefficient according to the stress test index reference value and its corresponding preset score, the stress test index score threshold and its corresponding stress test index value, and construct an evaluation model corresponding to the stress test index value based on the stress test index score proportionality coefficient.
[0215] Further, in one embodiment, the dynamic evaluation module 704 is further configured to substitute the cold start time into the evaluation model corresponding to the cold start time, and obtain the performance score of the cold start time based on the difference between the cold start time and the cold start score threshold and the cold start score proportionality coefficient; substitute the stress test index value into the evaluation model corresponding to the stress test index value, and obtain the performance score of the stress test index value based on the difference between the stress test index value and the stress test index score threshold and the stress test index score proportionality coefficient; determine the dynamic performance evaluation result of the in-vehicle application based on the performance scores of the cold start time and the performance scores of each stress test index value.
[0216] Further, in one embodiment, the dynamic evaluation module 704 is further configured to fuse the performance score of the cold start time and the performance scores of multiple stress test metric values according to the respective weights of the performance score of the cold start time and the performance scores of multiple stress test metric values, so as to obtain a dynamic evaluation result of the in-vehicle application.
[0217] Further, in one embodiment, the application evaluation module 705 is further configured to obtain the performance level of each in-vehicle application based on the evaluation results of each in-vehicle application in the in-vehicle system and a preset performance level evaluation model; and display the performance levels of multiple in-vehicle applications in the in-vehicle system.
[0218] Each module in the above in-vehicle application evaluation device 700 can be implemented in whole or in part by software, hardware, and their combination. The above modules can be embedded in the processor in the computer device in hardware form or be independent of the processor, or can be stored in the memory in the computer device in software form, so that the processor can call and execute the operations corresponding to the above modules.
[0219] In one embodiment, a new energy vehicle 800 is further provided, and its internal structure is as Figure 8 shown, including a memory 801 and a processor 802. A computer program is stored in the memory, and when the processor executes the computer program, the steps in the above method embodiments are implemented.
[0220] In one embodiment, a computer-readable storage medium is provided, on which a computer program is stored, and when the computer program is executed by a processor, the steps in the above method embodiments are implemented.
[0221] In one embodiment, a computer program product is provided, including a computer program, and when the computer program is executed by a processor, the steps in the above method embodiments are implemented.
[0222] Those of ordinary skill in the art can understand that all or part of the processes in the methods of the above embodiments can be completed by instructing relevant hardware through a computer program. The computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above methods. Among them, any reference to a memory, database, or other medium used in the embodiments provided in the present application can include at least one of non-volatile memory and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetoresistive random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM), etc. The databases involved in the embodiments provided in the present application can include at least one of relational databases and non-relational databases. Non-relational databases can include distributed databases based on blockchain, etc., without limitation. The processors involved in the embodiments provided in the present application can be general-purpose processors, central processors, graphics processors, digital signal processors, programmable logic devices, data processing logics based on quantum computing, artificial intelligence (AI) processors, etc., without limitation.
[0223] The technical features of the above embodiments can be combined arbitrarily. For the sake of brevity of description, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, it should be considered to be within the scope recorded in the present application.
[0224] The above-described embodiments merely represent several implementation manners of the present application. The description thereof is relatively specific and detailed, but it should not be construed as a limitation to the patent scope of the present application. It should be noted that for those of ordinary skill in the art, without departing from the concept of the present application, several modifications and improvements can still be made, and these all fall within the protection scope of the present application. Therefore, the protection scope of the present application shall be subject to the appended claims.
Claims
1. A vehicle-mounted application evaluation method, characterized in that, The method includes: Obtaining multiple resource attributes of the in-vehicle application in a non-running state; the resource attributes include at least two of the installation package size, the number of redundant resources, the number of redundant files, and the proportion of high-time-consuming resources; Based on the resource attributes and at least one evaluation model corresponding to each of the resource attributes, determining the static performance evaluation result of the in-vehicle application; the evaluation model is a mathematical model constructed by performing statistical analysis and pattern analysis on the resource attributes of multiple in-vehicle applications, or an artificial intelligence model obtained by performing deep learning training on a neural network based on the historical resource attribute data of the in-vehicle application; Obtaining data of multiple operation indicators of the in-vehicle application in a running state; the data of the operation indicators includes the cold start time and multiple stress test index values; Based on the data of the operation indicators and at least one evaluation model corresponding to each of the operation indicators, determining the dynamic performance evaluation result of the in-vehicle application; the evaluation model corresponding to each of the operation indicators is constructed based on the reference value of the operation indicators of the template application and the preset score corresponding to the reference value; the test environment of the reference value of the operation indicators of the template application is the same as the test environment of the in-vehicle application; According to the weights corresponding to the static performance evaluation result and the dynamic performance evaluation result respectively, fusing the static performance evaluation result and the dynamic performance evaluation result to obtain the evaluation result of the in-vehicle application.
2. The method according to claim 1, characterized in that, The obtaining of multiple resource attributes of the in-vehicle application in a non-running state includes: Obtaining the installation package size of the in-vehicle application; Based on the decompilation result of the installation package of the in-vehicle application, obtaining the target file information and target resource information of the in-vehicle application; The target file information is information characterizing the file redundancy situation of the in-vehicle application; the target resource information is information characterizing the resource redundancy situation and / or the proportion of high-time-consuming resources of the in-vehicle application.
3. The method according to claim 2, wherein Based on at least one evaluation model corresponding to each of the resource attributes, determining the static performance evaluation result of the in-vehicle application includes: Based on the evaluation model corresponding to the installation package size, determining the comparison result between the installation package size and at least one score threshold included in the evaluation model, and determining the performance score of the installation package size from the comparison result; Based on the evaluation model corresponding to the target file information, determining the comparison result between the target file information and at least one score threshold included in the evaluation model, and determining the performance score of the target file information from the comparison result; Based on the evaluation model corresponding to the target resource information, determining the comparison result between the target resource information and at least one score threshold included in the evaluation model, and determining the performance score of the target resource information from the comparison result; Based on the performance score of the installation package size, the performance score of the target file information, and the performance score of the target resource information, determining the static performance evaluation result of the in-vehicle application; Among them, the evaluation models corresponding to the installation package size, the evaluation models corresponding to the target file information, and the evaluation models corresponding to the target resource information are different from each other.
4. The method according to claim 1, characterized in that The obtaining of data on multiple running metrics of the in-vehicle application in the running state includes: Invoking a preset command-line tool to start the in-vehicle application and determining the cold start time of the in-vehicle application; Performing a stress test on the in-vehicle application according to a preset stress test script to obtain multiple stress test metric values of the in-vehicle application.
5. The method according to claim 4, wherein Before determining the dynamic evaluation result of the in-vehicle application based on at least one evaluation model corresponding to each of the running metrics, it further includes: Invoking the preset command-line tool to start the template application and invoking the preset stress test script to perform a stress test on the template application to obtain the cold start time and multiple stress test metric values of the template application, which are respectively used as the cold start time reference value and the stress test metric reference values for each stress test metric. Obtaining the preset score corresponding to the cold start time reference value of the template application and the preset scores corresponding to the stress test metric reference values for each stress test metric. Based on the cold start time reference value and its corresponding preset score, the cold start score threshold and its corresponding cold start time, determining the cold start score proportionality coefficient, and constructing an evaluation model corresponding to the cold start time based on the cold start score proportionality coefficient. Based on the stress test metric reference value and its corresponding preset score, the stress test metric score threshold and its corresponding stress test metric value, determining the stress test metric score proportionality coefficient for each stress test metric, and constructing an evaluation model corresponding to each stress test metric based on the stress test metric score proportionality coefficient.
6. The method according to claim 5, wherein Determining the dynamic evaluation result of the in-vehicle application based on at least one evaluation model corresponding to each of the running metrics includes: Substituting the cold start time into the evaluation model corresponding to the cold start time, and based on the difference between the cold start time and the cold start score threshold and the cold start score proportionality coefficient, obtaining the performance score of the cold start time. Substituting the stress test metric value into the evaluation model corresponding to the stress test metric, and based on the difference between the stress test metric value and the stress test metric score threshold and the stress test metric score proportionality coefficient, obtaining the performance score of the stress test metric value. Based on the performance score of the cold start time and the performance scores of the stress test metric values, determining the dynamic performance evaluation result of the in-vehicle application; The evaluation model corresponding to the stress test metric is different from the evaluation model corresponding to the cold start time.
7. The method according to claim 6, wherein Based on the performance score of the cold start time and the performance scores of the stress test metric values, determining the dynamic performance evaluation result of the in-vehicle application includes: According to the performance score of the cold start time and the weights corresponding to the performance scores of the stress test metric values, fusing the performance score of the cold start time and the performance scores of the stress test metric values to obtain the dynamic evaluation result of the in-vehicle application.
8. The method according to any one of claims 1 to 7, characterized in that, The method further includes: Based on the evaluation results of each of the in-vehicle applications in the in-vehicle system and a preset performance level evaluation model, obtain the performance levels of each of the in-vehicle applications; Display the evaluation results and / or performance levels of multiple in-vehicle applications in the in-vehicle system.
9. An in-vehicle application evaluation device, characterized in that, The device includes: A first acquisition module, configured to acquire multiple resource attributes of an in-vehicle application in a non-running state; the resource attributes include at least two of the installation package size, the number of redundant resources, the number of redundant files, and the proportion of high-time-consuming resources; A static evaluation module, configured to determine the static performance evaluation result of the in-vehicle application based on the resource attributes and at least one evaluation model corresponding to each of the resource attributes; the evaluation model is a mathematical model constructed by performing statistical analysis and pattern analysis on the resource attributes of multiple in-vehicle applications, or an artificial intelligence model obtained by performing in-depth learning training on a neural network based on the historical resource attribute data of the in-vehicle application; A second acquisition module, configured to acquire data of multiple operation indicators of the in-vehicle application in a running state; the data of the operation indicators includes the cold start time and multiple stress test indicator values; A dynamic evaluation module, configured to determine the dynamic performance evaluation result of the in-vehicle application based on the data of the operation indicators and at least one evaluation model corresponding to each of the operation indicators; the evaluation models corresponding to the operation indicators are constructed based on the reference values of the operation indicators of a template application and preset scores corresponding to the reference values; the test environment of the reference values of the operation indicators of the template application is the same as the test environment of the in-vehicle application; An application evaluation module, configured to fuse the static performance evaluation result and the dynamic performance evaluation result according to the weights corresponding to the static performance evaluation result and the dynamic performance evaluation result, to obtain the evaluation result of the in-vehicle application.
10. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 8.
Citation Information
Patent Citations
Vehicle cold starting performance evaluation method and device, electronic equipment and storage medium
CN116843210A
Performance evaluation method and device for vehicle-mounted chip, medium and program product
CN118937949A