System and method for evaluating App memory performance

By collecting data in the first device and simulating real usage scenarios in the second device, combining hierarchical algorithms and large-model analysis, the accuracy of App memory performance evaluation in the prior art is solved, and more reliable performance evaluation and Optimization suggestions.

CN119127643APending Publication Date: 2024-12-13BEIJING MICO WORLD TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411164006.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-08-23
Publication Date
2024-12-13

AI Technical Summary

Technical Problem

It is difficult for the existing technology to accurately evaluate the performance of App memory. Traditional testing methods are limited by the device memory situation and cannot fully simulate real user scenarios, resulting in a deviation from the actual experience.

Method used

By collecting data in the first device and simulating real usage scenarios in the second device, combining hierarchical algorithms and large-model analysis, performance evaluation data is generated, and comprehensive and accurate evaluation of App memory performance is achieved.

Benefits of technology

It improves the accuracy of App memory performance testing, can better simulate real user scenarios, and provides more reliable performance evaluation and optimization suggestions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119127643A_ABST
    Figure CN119127643A_ABST
Patent Text Reader

Abstract

The invention provides a system for evaluating App memory performance, comprising: at least one first device having a memory and installed with an App, the first device being configured to generate and output first data, the first data being related to configuration parameters of the first device; a first server configured to pre-process the first data from the first device, and generate and output the processed first data; at least one second device having a memory and installed with an App, the second device configured to simulate a usage scenario of the App on the first device based on the processed first data, thereby generating and outputting second data, the second data being related to memory performance of the App on the second device; the second server is configured to be capable of generating performance evaluation data according to the second data and completing evaluation of the memory performance of the App on the first equipment; according to the system, the real environment of the user can be better simulated, and the accuracy of App memory performance evaluation is effectively improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of memory performance evaluation, and more specifically, to a system and method for evaluating App memory performance. Background Art

[0002] In today's digital age, mobile applications (Apps) have become an indispensable part of people's daily life, work and study. With the popularity of mobile devices such as smartphones and tablets, the number and functions of Apps are becoming increasingly rich, covering almost every aspect of users' lives, from social entertainment to financial payment to health management. However, as App functions become more powerful and complex, its memory management efficiency has become one of the key factors in measuring user experience and application performance.

[0003] At present, the traditional method of evaluating App memory usage mainly relies on running simulation or actual scenario tests on specific test devices. Although this method can reflect the memory performance of the App to a certain extent, it is limited by the used memory and available memory of the test device, and it is difficult to fully simulate the usage scenario on the user's real device, which may lead to deviations between the test results and the actual user experience, thus affecting the accuracy and reference value of the test results.

[0004] Therefore, how to improve the accuracy of App memory performance testing has become an urgent problem that needs to be solved. Summary of the invention

[0005] In order to solve the existing technical problems, the present application provides a system and method for evaluating App memory performance.

[0006] In a first aspect, an embodiment of the present application provides a system for evaluating App memory performance, including:

[0007] At least one first device, the at least one first device has a memory and an App installed thereon, the first device is configured to generate and output first data, and the first data is related to a configuration parameter of the first device;

[0008] A first server, the first server is configured to pre-process the first data from the first device, generate and output the processed first data;

[0009] At least one second device, the at least one second device having a memory and having an App installed thereon, the second device being configured to simulate a usage scenario of the App on the first device based on the processed first data, thereby generating and outputting second data, the second data being related to the memory performance of the App on the second device;

[0010] The second server is configured to generate performance evaluation data according to the second data to evaluate the memory performance of the App on the first device. Optionally, the first server and the second server are included in the same server.

[0011] Optionally, the first device includes: a mobile phone, a computer, an iPad, a car terminal, and a smart watch.

[0012] Optionally, the preprocessing includes: classifying the first data according to a unique identification code of the first device in the first data.

[0013] Optionally, the first data includes hardware performance data, software performance data, network performance data and / or memory performance data.

[0014] Optionally, the memory performance data includes total memory, available memory, memory used as buffers, memory used as cache, total swap memory, available swap space and / or memory usage.

[0015] Optionally, the second server can generate performance evaluation data according to the second data, and completing the evaluation of the memory performance of the App on the first device further includes:

[0016] preprocessing the second data according to a preset condition to generate processed second data;

[0017] Using a stratification algorithm to perform stratification processing on the processed second data to generate stratified performance data;

[0018] The second server uses the large model to analyze the hierarchical performance data and generates performance evaluation data.

[0019] Optionally, the tiering algorithm is to tier the processed second data into three tiers according to a memory usage parameter in the processed second data:

[0020] Low load: memory usage is less than 40%;

[0021] Medium load: Memory usage is greater than or equal to 40% and memory usage is less than 70%;

[0022] High load: Memory usage is greater than or equal to 70%.

[0023] Optionally, the method further includes: a second server performing statistical analysis on the performance evaluation data, and generating visual charts of the performance evaluation data to facilitate user understanding of the analysis.

[0024] Optionally, the method further includes: the second server analyzing the performance evaluation data, and if the performance evaluation data meets a preset condition, sending performance abnormality information to a first device having a mapping relationship with the performance evaluation data.

[0025] In a second aspect, an embodiment of the present application provides a method for evaluating App memory performance, including:

[0026] Provide at least one first device, wherein the at least one first device has a memory and an App installed thereon, and the first device is configured to generate and output first data, wherein the first data is related to a configuration parameter of the first device;

[0027] Providing a first server, the first server is configured to pre-process the first data from the first device, generate and output the processed first data;

[0028] Provide at least one second device, the at least one second device having a memory and an App installed thereon, the second device being configured to simulate a usage scenario of the App on the first device based on the processed first data, thereby generating and outputting second data, the second data being related to the memory performance of the App on the second device;

[0029] A second server is provided, and the second server is configured to generate performance evaluation data according to the second data to complete the evaluation of the memory performance of the App on the first device.

[0030] Optionally, the first server and the second server are included in the same server.

[0031] Optionally, the first device includes: a mobile phone, a computer, an iPad, a car terminal, and a smart watch.

[0032] Optionally, the preprocessing includes: classifying the first data according to a unique identification code of the first device in the first data.

[0033] Optionally, the first data includes hardware performance data, software performance data, network performance data and / or memory performance data.

[0034] Optionally, the memory performance data includes total memory, available memory, memory used as buffers, memory used as cache, total swap memory, available swap space and / or memory usage.

[0035] Optionally, the second server can generate performance evaluation data according to the second data, and completing the evaluation of the memory performance of the App on the first device further includes:

[0036] preprocessing the second data according to a preset condition to generate processed second data;

[0037] Using a stratification algorithm to perform stratification processing on the processed second data to generate stratified performance data;

[0038] The second server uses the large model to analyze the hierarchical performance data and generates performance evaluation data.

[0039] Optionally, the tiering algorithm is to tier the processed second data into three tiers according to a memory usage parameter in the processed second data:

[0040] Low load: memory usage is less than 40%;

[0041] Medium load: Memory usage is greater than or equal to 40% and memory usage is less than 70%;

[0042] High load: Memory usage is greater than or equal to 70%.

[0043] Optionally, the method further comprises:

[0044] The second server performs statistical analysis on the performance evaluation data and generates visual charts of the performance evaluation data to facilitate user understanding of the analysis.

[0045] Optionally, the method further comprises:

[0046] The second server analyzes the performance evaluation data, and if the performance evaluation data meets a preset condition, sends performance abnormality information to the first device having a mapping relationship with the performance evaluation data.

[0047] In the technical solution of this application, the user's first data is collected through the first device, and a simulation environment is set for the second device based on the first data, which can not only simulate the actual memory usage of real users to the greatest extent, but also conduct comprehensive testing through automated processes to obtain more accurate evaluation information. Multiple different operating environments are set for the second device based on multiple first data to realize the operation of an App in different memory environments and achieve a comprehensive evaluation of the App's memory performance. BRIEF DESCRIPTION OF THE DRAWINGS

[0048] In order to more clearly illustrate the technical solutions in the embodiments of the present application or the background technology, the drawings required for use in the embodiments of the present application or the background technology will be described below.

[0049] Figure 1 A signaling diagram of a system for evaluating App memory performance provided by an embodiment of the present application is shown.

[0050] Figure 2 A signaling diagram showing a system for evaluating App memory performance provided by an embodiment of the present application and the merger of a first server and a second server.

[0051] Figure 3 A flow chart of a method for generating performance evaluation data based on performance data provided in an embodiment of the present application is shown.

[0052] Figure 4A schematic flow chart of a method for evaluating App memory performance including a visual chart provided in an embodiment of the present application is shown.

[0053] Figure 5 A flow chart of a method for evaluating App memory performance including an abnormal information reminder step provided in an embodiment of the present application is shown. DETAILED DESCRIPTION

[0054] In the description of the embodiments of the present invention, those skilled in the art should know that the embodiments of the present invention can be implemented as methods, devices, electronic devices, computer-readable storage media, and computer program products. Therefore, the embodiments of the present invention can be specifically implemented in the following forms: complete hardware, complete software (including firmware, resident software, microcode, etc.), a combination of hardware and software. In addition, in some embodiments, the embodiments of the present invention can also be implemented in the form of a computer program product in one or more computer-readable storage media, and the computer-readable storage medium contains computer program code.

[0055] The above-mentioned computer-readable storage medium may adopt any combination of one or more computer-readable storage media. Computer-readable storage media include: electrical, magnetic, optical, electromagnetic, infrared or semiconductor systems, devices or devices, or any combination of the above. More specific examples of computer-readable storage media include: portable computer disks, hard disks, random access memories (RAM), read-only memories (ROM), erasable programmable read-only memories (EPROM), flash memories, optical fibers, compact disk read-only memories (CD-ROM), optical storage devices, magnetic storage devices or any combination of the above. In an embodiment of the present invention, a computer-readable storage medium may be any tangible medium containing or storing a program, which may be used by or in combination with an instruction execution system, device, or device.

[0056] The computer program code contained in the above-mentioned computer-readable storage medium can be transmitted using any appropriate medium, including: wireless, wire, optical cable, radio frequency (RF) or any suitable combination thereof.

[0057] The computer program code for performing the operation of the embodiments of the present invention can be written in assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine-related instructions, microcode, firmware instructions, state setting data, integrated circuit configuration data, or in one or more programming languages ​​or a combination thereof, wherein the programming language includes an object-oriented programming language, such as Java, Smalltalk, C++, and also includes a conventional procedural programming language, such as C language or a similar programming language. The computer program code can be executed completely on the user's computer, partially on the user's computer, as an independent software package, partially on the user's computer, partially on a remote computer, and completely on a remote computer or server. In the case of a remote computer, the remote computer can be connected to the user's computer or to an external computer through any type of network, including a local area network (LAN) or a wide area network (WAN).

[0058] The embodiments of the present invention describe the provided methods, devices, and electronic devices through flowcharts and / or block diagrams.

[0059] It should be understood that each box in the flowchart and / or block diagram and the combination of boxes in the flowchart and / or block diagram can be implemented by computer-readable program instructions. These computer-readable program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer or other programmable data processing device to produce a machine, and these computer-readable program instructions are executed by a computer or other programmable data processing device to produce a device that implements the functions / operations specified by the boxes in the flowchart and / or block diagram.

[0060] These computer-readable program instructions may also be stored in a computer-readable storage medium that enables a computer or other programmable data processing device to work in a specific manner. In this way, the instructions stored in the computer-readable storage medium produce an instruction device product including functions / operations specified in the blocks in the flowchart and / or block diagram.

[0061] Computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device, so that a series of operational steps are performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, thereby enabling the instructions executed on the computer or other programmable data processing apparatus to provide a process for implementing the functions / operations specified in the blocks in the flowchart and / or block diagram.

[0062] With the rapid development of information technology, the optimization of computer memory performance is becoming more and more important. The memory evaluation system in the prior art is usually divided into two methods: online evaluation and offline evaluation. The online evaluation is specifically to use a sampling scheme in the user's real use environment, report the evaluation data to the server, and analyze it through the server to obtain the relevant data of the specific user, so as to observe the changes in performance indicators. This method can reflect the authenticity of user data, but for extreme scenarios or special scenarios, it is impossible to perform regular automatic presentation, the obtained data is relatively scattered, and because the specific situation of real users is complex and changeable, it is not easy to evaluate the real optimization effect. The offline evaluation is specifically to use a test environment, usually using local devices, manually running or automatically running the test process to simulate the use scenario of real users, and observe the performance data based on local data and analysis tools. Because this method uses a test environment, it cannot simulate the data diversity in the real environment, and it is often impossible to obtain accurate test data when testing out of the real environment.

[0063] Therefore, how to obtain the evaluation results of real users' memory performance has become an urgent problem that needs to be solved.

[0064] The embodiments of the present invention are described below in conjunction with the accompanying drawings in the embodiments of the present invention.

[0065] Figure 1 FIG. 4 shows a signaling diagram of a system for evaluating App memory performance provided by an embodiment of the present invention. Figure 1 As shown, the system includes the following devices:

[0066] At least one first device, the at least one first device has a memory and an App installed thereon, the first device is configured to generate and output first data, and the first data is related to a configuration parameter of the first device;

[0067] A first server, the first server is configured to pre-process the first data from the first device, generate and output the processed first data;

[0068] At least one second device, the at least one second device having a memory and having an App installed thereon, the second device being configured to simulate a usage scenario of the App on the first device based on the processed first data, thereby generating and outputting second data, the second data being related to the memory performance of the App on the second device;

[0069] The second server is configured to generate performance evaluation data based on the second data to complete the evaluation of the memory performance of the App on the first device. Mobile phone memory (RAM Random Access Memory) is a volatile storage medium used to temporarily store applications and data that are currently running or about to be run on the mobile phone. RAM is very fast and can read and write data quickly, which is crucial to the performance of the mobile phone. When the phone is turned off or powered off, the data in the RAM will be cleared. The larger the RAM capacity of a mobile phone, the more applications can usually run simultaneously, and the overall performance of the system will be smoother.

[0070] In some embodiments, the first device may be a mobile device, such as a mobile phone, a tablet computer, a computer, a laptop computer, a vehicle-mounted terminal, an electronic watch, and other electronic devices that can install App applications. The second device may also be an electronic device as described above, preferably, the second device is an electronic device with strong performance and operability, such as a computer or a laptop computer.

[0071] In some embodiments, preferably, preprocessing includes classifying the first data according to the unique identification code of the first device in the first data, screening the classified first data, and calculating the average value to reduce the overall amount of the first data; preferably, parameters such as device type and model can also be used as classification criteria, and statistical analysis can be performed on the data to remove first data with higher similarity.

[0072] In some embodiments, Figure 2 As shown, the first server and the second server are set in the same server device. It should be understood that the first server and the second server in the technical solution are only different in the specific functions implemented, thereby distinguishing them as two logical execution entities. Therefore, the first server and the second server can be set in the same server device or separately, and the above setting methods are all within the protection scope of this application.

[0073] In some embodiments, the object for collecting the configuration parameters of the first device may be an App installed on the first device, or may be a part of the functions integrated in the App. The App is installed on the electronic device of the real user. When the user's electronic device is running, the App collects the configuration parameters of the electronic device, generates the first data, and reports it to the first server. Preferably, the configuration parameters include the hardware parameters of the first device and the operating parameters related to the memory during the operation.

[0074] There are various ways to obtain configuration parameters, which are directly related to the operating system of the electronic device. For example, based on the Android system, the way to obtain configuration parameters is to obtain detailed information about the device's hardware and system by accessing the yoke API provided by the Android SDK, including the Android system version, storage space, and the maximum value allowed for uplink and downlink of the network. Memory-related information can be obtained by reading the / proc / meminfo file and parsing it to obtain detailed data related to memory usage. Of course, obtaining relevant information requires the corresponding access rights. To obtain basic information about Windows, you can use Windows API, PowerShell scripts, or .NET Framework / Core class libraries to encode and obtain it. Among them, total memory and available memory can be obtained directly from the MEMORYSTATUSEX structure, and buffer and cache memory are not directly obtained through a single API in Windows. Windows uses a complex memory management mechanism, including file cache and standby list (StandbyList), which are generally regarded as recyclable resources. Therefore, you can estimate the used memory (including memory used by applications, memory used by the kernel, and memory used as cache) by calculating the difference between total physical memory and available physical memory. Memory usage can be obtained by calculating the ratio of used memory to total physical memory.

[0075] The first server receives the first data sent by the first device and pre-processes the first data. In some embodiments, the pre-processing operation optionally includes classifying the first data according to the unique identification code of the first device, and the first data contains the unique identification of the client, which is used to distinguish and record the source of the first data, and to return the message to the first device later as a message query credential. Preferably, the first data of the same electronic device are screened, and similar data are deleted or averaged to reduce the number of subsequent tests. After the first server completes the pre-processing operation of the first data, the sorted data is generated according to the prescribed format. The first server distributes the processed first data to the second device. The number of the second device can be one or more, and the specific distribution method of the first server sending the processed first data to the second device is related to the specific number of the second device and the test performance of the second device. Preferably, for the system type and system version in the first data, a device with the same or similar system type and version in the second device is selected as a test device. The second device receives the processed first data sent by the first server, and simulates the use scenario of the first device according to the above-mentioned processed first data. The above-mentioned use scenario includes system available memory, system used memory, etc. Preferably, the simulation of the memory usage scenario can be simulated by creating and operating a large object, or by setting relevant parameters of the virtual machine. Simulating the operating environment of the first device according to the specific parameters in the first data is conducive to improving the approximation of the real operating environment on the simulation line. After the simulation of the usage scenario of the second device is completed, the automated testing process is executed and the second data is generated. The specific steps of the automated testing process are generally the operating procedures for the normal operation of the App. Preferably, the testing process includes testing steps for large memory consumption; preferably, the automated testing process includes testing steps with the nature of stress testing, such as frequent switching of live broadcast rooms for video live broadcast software. The second device sends the above-mentioned second data to the second server, and the second server performs statistical analysis on the received second data to generate performance evaluation data for the App running on different devices.

[0076] In some embodiments, optionally, the first data includes hardware performance data, software performance data, network performance data and memory performance data. Preferably, the hardware performance data can be a combination of one or more of the above data. Preferably, the first data is accessed through the / proc file system of the Linux kernel, and can also be obtained through command line tools such as top, vmstat, iostat, etc. Collecting hardware data, software data, network data and memory data is conducive to better simulating the real operating environment of the user's electronic device.

[0077] In some embodiments, optionally, the memory performance data includes total memory, available memory, memory used as buffer, memory used as cache, total swap memory, available swap space, and memory usage. Preferably, the memory performance data may be one or a combination of the above contents.

[0078] Total Memory (MemTotal): This is the total memory size in the system, usually in KB. It represents the total amount of physical memory on the device, excluding any swap space. This is a very important metric because it defines the maximum amount of physical memory that the system can use.

[0079] Available Memory (MemFree): This is the amount of physical memory in the system that is not currently in use. It includes truly free memory, but does not include memory cached by the system to improve performance. This value fluctuates with the system's workload and is usually much smaller than MemTotal because the operating system will try to use memory for caching and buffering.

[0080] Memory used as buffers (Buffers): This is the amount of memory used by the operating system as buffers for block devices. These buffers are used to temporarily store data to speed up read and write operations to disks and other block devices. Buffers are often used for I / O operations on block devices to improve system performance.

[0081] Cached memory: This is the amount of memory used by the operating system to cache file system data. This cached data can be accessed quickly without having to be read from disk again, thereby improving system performance. This value includes the memory used by the page cache and swap cache.

[0082] Total swap space (SwapTotal): This is the total swap space size in the system, including all swap partitions and swap files. Swap space is used to expand physical memory. When physical memory is insufficient, the system can swap some memory pages to the swap space on the disk to free up physical memory.

[0083] Swap Free: This is the amount of swap space currently unused in the system. It indicates the amount of free space that can be used for swapping. When physical memory is exhausted, the system uses swap space to temporarily store inactive memory pages.

[0084] Memory usage: refers to the usage of system memory, including used memory and free memory.

[0085] In some embodiments, Figure 3 As shown, optionally, the second server generates performance evaluation data according to the second data, and the step of completing the evaluation of the memory performance of the App on the first device includes:

[0086] preprocessing the second data according to a preset condition to generate processed second data;

[0087] Using a stratification algorithm to perform stratification processing on the processed second data to generate stratified performance data;

[0088] The second server uses the large model to analyze the hierarchical performance data and generates performance evaluation data.

[0089] Since the first device is an electronic device of a real user who installs or sets the above-mentioned App, its operating environment is relatively complex, involving various types of electronic devices, such as vehicle-mounted devices, mobile phones, tablets, and even various simulators. The operating system and system performance of the device are also different. Therefore, the second data obtained by the test are also diverse. However, with the increase in the number of users and the number of collection times, there will be second data of the same device or similar values ​​in all the second data. Testing and evaluating all the same or similar data will waste server resources and have no practical value. Therefore, it is necessary to pre-process the second data to generate processed second data. Preferably, after receiving the second data, the second server compares it with the original second data in the second server according to the various technical features of the second data to determine whether the second data has the same or similar performance data. If it exists, it is directly stored in the library, and the relevant statistical quantity is increased without subsequent evaluation processing; if it does not exist, it is stored in the library and evaluated. Preferably, the work of judging the similarity of the second data is completed by the large model. Preferably, the same or similar data is merged and the quantity is counted to make data reserves for subsequent performance evaluation.

[0090] Before evaluating the processed second data, it is necessary to perform stratified statistics on the processed second data to generate stratified performance data. The stratified performance data can better highlight the impact of a certain indicator on the evaluation result and prepare for subsequent statistical analysis.

[0091] The hierarchical performance data is input into the big model, and the big model analyzes the hierarchical performance data according to the preset statement to generate performance evaluation data. Preferably, the big model is a big model that has been fine-tuned and trained. It should be understood that this application does not make specific restrictions on the big model, and any big model that can realize the analysis and evaluation of the hierarchical performance data is within the protection scope of this application.

[0092] In some embodiments, optionally, the tiering algorithm is to tier the processed second data into three tiers according to a memory usage parameter in the processed second data:

[0093] Low load: memory usage is less than 40%;

[0094] Medium load: Memory usage is greater than or equal to 40% and memory usage is less than 70%;

[0095] High load: Memory usage is greater than or equal to 70%.

[0096] The performance evaluation standard can be measured by some performance indicators, such as memory usage, available memory, etc. The higher the memory usage, the greater the possibility of jamming or other abnormalities during the use of the App, and the worse the user experience. Therefore, memory usage is an important indicator for evaluating the memory performance of the App. When the memory usage is less than 40%, it is a low load. In this case, sufficient memory resources can be used, and sufficient space is reserved for the operation of the App. When the memory usage is greater than or equal to 40% and less than 70%, it is a medium load. The available memory resources are limited, so the probability of jamming or other situations that affect the user experience during the use of the App is increased. When the memory usage is greater than or equal to 70%, it is a high load. The available memory resources are relatively small, so the probability of jamming or other situations that affect the user experience during the use of the App is greatly increased. The performance data is filtered and layered according to different device loads, and labels corresponding to the load conditions are set to provide data basis for subsequent large model calculation performance evaluation data.

[0097] When stratifying the data, it is also necessary to consider weighted calculation of the stratified data. Preferably, the weighted calculation adopts the analytic hierarchy process (AHP Analytic Hierarchy Process). AHP is a multi-criteria decision-making method for solving complex decision-making problems. The method was proposed by Professor Thomas L. Saaty, an American operations researcher, in the early 1970s and was initially applied to research projects of the US Department of Defense. AHP decomposes the decision-making problem into different components, and aggregates and combines the factors at different levels according to the mutual correlation and affiliation between the factors to form a multi-level analysis structure model, thereby performing qualitative and quantitative analysis.

[0098] The specific steps of AHP include: constructing a hierarchical structure, determining the target layer, criterion layer and solution layer of the decision problem, such as taking the device type or device model of the electronic device as the solution layer. Constructing a judgment matrix, constructing a judgment matrix of the criterion layer according to the relative importance of the device features; for example, constructing a judgment matrix according to the performance of features such as total memory and memory usage. Calculating feature weights, performing consistency checks and weight calculations on the criterion layer judgment matrix to obtain the weights of each feature. Calculating a comprehensive score, performing consistency checks and weight calculations on the solution judgment matrix to obtain the scores of each performance data on each feature. Multiplying the feature score by the corresponding feature weight to obtain the weighted score of each performance data. Evaluating the solution, and evaluating the performance data as a whole according to the weighted score.

[0099] In some embodiments, Figure 4 As shown, optionally, the method for evaluating the memory performance of an App also includes: a second server performs statistical analysis on the performance evaluation data, and generates a visual chart of the performance evaluation data to facilitate user understanding and analysis. The final evaluation score, including the scores of each technical feature item, is presented to the end user in a two-dimensional or three-dimensional form through linear graphs, bar graphs, pie charts, etc., so that the user can understand the evaluation results more intuitively. The developer or maintainer of the App can directly find the key points of the problem based on the final graphical evaluation results, and optimize the relevant content of the App memory usage in a targeted manner.

[0100] In some embodiments, Figure 5 As shown, optionally, the method for evaluating the memory performance of an App also includes: the second server analyzes the performance evaluation data, and if the performance evaluation data meets the preset conditions, the performance exception information is sent to the client in the first device that has a mapping relationship with the performance evaluation data. When the second device performs the automated testing process, due to the diversity of the operating environment, some abnormal information is inevitably generated. The abnormal information and other information related to the abnormal information can be input into the large model through the large model, and the large model performs in-depth analysis to generate solutions or optimization suggestions for the abnormal information. It should be understood that this solution is a solution for memory optimization of electronic devices, not an optimization solution for Apps. The optimization solution is used to locate the device source of the first data through the device ID in the performance data, and the second server sends the memory optimization solution to the first device, and the first device prompts the user to view the relevant abnormal information and the corresponding memory optimization solution.

[0101] In some embodiments, preferably, the first server and the second server can be set in the same server device.

[0102] Example 1

[0103] The client is installed on the first device, and the client obtains the memory information of the first device, including the total memory and available memory, through the / proc file system of the Linux kernel. The first data is collected for ten first devices, and the collected first data includes the device unique identifier, the total memory, and the available memory. After the first data is collected, it is sent to the first server. The first server classifies the first data according to the device unique identifier of the first data, calculates the average of the total memory and the available memory in all the first data of the same device, generates the processed first data, and sends the processed first data to the second device. The second device receives the processed first data sent by the first server, and simulates the total memory by creating a virtual machine and simulates the available memory by creating a large object. After the environment simulation is completed, the operation process of the App is executed. The App is a video live broadcast software, and the test process includes: frequently switching live broadcast content, switching networks to test the recovery of live broadcast data, etc. After the second device executes the test process, the second data is generated, and the second data includes the memory usage rate and the App memory ratio. The second server receives the above second data and pre-processes the above second data through a large model, including data classification statistics by device type, presetting scoring weights for each detection result item, data deduplication, etc. The second data is preprocessed to generate processed second data, and the processed second data is input into the big model, and the big model generates performance evaluation data for the App. Based on the above performance evaluation data, a visual evaluation result is generated, including a pie chart showing the percentage of devices using the App, a pie chart showing the percentage of total memory of devices using the App, a line chart showing the linear change of the memory usage of the App on a second device, a line chart showing the linear change of the memory usage of the App on a second device, and optimization opinions and suggestions on the App calculated by the big model.

[0104] Those skilled in the art can clearly understand that for the convenience and simplicity of description, only the above-mentioned functional units and module divisions are used as examples for illustration. In actual applications, the above-mentioned functional allocations can be completed by the same or different functional units and modules as needed, that is, the internal structure of the device is divided into different functional units or modules to complete all or part of the functions described above. For example, the first server and the second server are set on the same server device, and the server can complete the first task of receiving the first data from the first device to complete the preprocessing of the first data to generate the processed first data, and can also complete the second task of generating performance evaluation data based on the second data from the second device to complete the evaluation of the memory performance of the App on the first device. However, it is easy to understand that the above-mentioned first task can be completed by, for example, the first server, and the second task can be completed by the second server.

[0105] In the above embodiment, the method is described based on a series of steps, but the present invention is not limited to the order of the steps, but some steps can be performed simultaneously with other steps, or can be performed in a different order from other steps. In addition, it should be understood by those skilled in the art that these steps are not mutually exclusive, and other steps can be added to the flow chart or some steps can be deleted without affecting the scope of the present invention.

[0106] The above is only a specific implementation of the embodiment of the present invention, but the protection scope of the embodiment of the present invention is not limited thereto. Any technician familiar with the technical field can easily think of changes or substitutions within the technical scope disclosed in the embodiment of the present invention, which should be included in the protection scope of the embodiment of the present invention. Therefore, the protection scope of the embodiment of the present invention should be based on the protection scope of the claims.

Claims

1. A system for evaluating App memory performance, characterized in that: include: At least one first device, the at least one first device having a memory and having the App installed thereon, the first device being configured to generate and output first data, the first data being related to a configuration parameter of the first device; a first server, wherein the first server is configured to pre-process the first data from the first device, generate and output processed first data; at least one second device, the at least one second device having a memory and having the App installed thereon, the second device being configured to simulate a usage scenario of the App on the first device based on the processed first data, thereby generating and outputting the second data, wherein the second data is related to the memory performance of the App on the second device; The second server is configured to generate performance evaluation data according to the second data, so as to complete the evaluation of the memory performance of the App on the first device.

2. The system according to claim 1, characterized in that The first server and the second server are included in the same server.

3. The system according to any one of claims 1 to 2, characterized in that: The first device includes: a mobile phone, a computer, an iPad, a car terminal or a smart watch.

4. The system according to any one of claims 1 to 2, characterized in that: The preprocessing includes: classifying the first data according to the unique identification code of the first device in the first data.

5. The system according to any one of claims 1 to 2, characterized in that: The first data includes hardware performance data, software performance data, network performance data and / or memory performance data.

6. The system according to claim 5, characterized in that The memory performance data includes total memory, available memory, memory used as buffer, memory used as cache, total swap memory, available swap space and / or memory usage.

7. The system according to any one of claims 1 to 2, characterized in that: The second server generates performance evaluation data according to the second data to complete the evaluation of the memory performance of the App on the first device, further comprising: preprocessing the second data according to a preset condition to generate processed second data; Performing hierarchical processing on the processed second data using a hierarchical algorithm to generate hierarchical performance data; The second server uses the large model to analyze the hierarchical performance data to generate performance evaluation data.

8. The system according to any one of claims 1 to 2, characterized in that: The stratification algorithm is to divide the processed second data into three levels according to the memory usage parameter in the processed second data: Low load: memory usage is less than 40%; Medium load: Memory usage is greater than or equal to 40% and memory usage is less than 70%; High load: Memory usage is greater than or equal to 70%.

9. The system according to any one of claims 1 to 2, characterized in that: Also includes: The second server performs statistical analysis on the performance evaluation data and generates visual charts of the performance evaluation data to facilitate user understanding and analysis.

10. The system according to any one of claims 1 to 2, characterized in that: Also includes: The second server analyzes the performance evaluation data, and if the performance evaluation data meets a preset condition, sends performance abnormality information to the first device having a mapping relationship with the performance evaluation data.

11. A method for evaluating App memory performance, characterized in that: include: Provide at least one first device, the at least one first device having a memory and having the App installed thereon, the first device being configured to generate and output first data, wherein the first data is related to a configuration parameter of the first device; Providing a first server, wherein the first server is configured to pre-process the first data from the first device, generate and output processed first data; providing at least one second device, the at least one second device having a memory and having the App installed thereon, the second device being configured to simulate a usage scenario of the App on the first device based on the processed first data, thereby generating and outputting the second data, wherein the second data is related to the memory performance of the App on the second device; A second server is provided, wherein the second server is configured to generate performance evaluation data according to the second data to complete the evaluation of the memory performance of the App on the first device.

12. The method according to claim 11, characterized in that The first server and the second server are included in the same server.

13. The method according to any one of claims 11 to 12, characterized in that: The first device includes: a mobile phone, a computer, an iPad, a car terminal or a smart watch.

14. The method according to any one of claims 11 to 12, characterized in that: The preprocessing includes: classifying the first data according to the unique identification code of the first device in the first data.

15. The system according to any one of claims 11 to 12, characterized in that: The first data includes hardware performance data, software performance data, network performance data and / or memory performance data.

16. The method according to claim 15, characterized in that The memory performance data includes total memory, available memory, memory used as buffer, memory used as cache, total swap memory, available swap space and / or memory usage.

17. The method according to any one of claims 11 to 12, characterized in that: The second server generates performance evaluation data according to the second data to complete the evaluation of the memory performance of the App on the first device, further comprising: preprocessing the second data according to a preset condition to generate processed second data; Performing hierarchical processing on the processed second data using a hierarchical algorithm to generate hierarchical performance data; The second server uses the large model to analyze the hierarchical performance data to generate performance evaluation data.

18. The method according to any one of claims 11 to 12, characterized in that: The stratification algorithm is to divide the processed second data into three levels according to the memory usage parameter in the processed second data: Low load: memory usage is less than 40%; Medium load: Memory usage is greater than or equal to 40% and memory usage is less than 70%; High load: Memory usage is greater than or equal to 70%.

19. The method according to any one of claims 11 to 12, characterized in that: Also includes: The second server performs statistical analysis on the performance evaluation data and generates visual charts of the performance evaluation data to facilitate user understanding and analysis.

20. The method according to any one of claims 11 to 12, characterized in that Also includes: The second server analyzes the performance evaluation data, and if the performance evaluation data meets a preset condition, sends performance abnormality information to the first device having a mapping relationship with the performance evaluation data.