A performance optimization method, device, equipment, storage medium and product
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- BEIJING ZITIAO NETWORK TECH CO LTD
- Filing Date
- 2024-12-31
- Publication Date
- 2026-06-30
AI Technical Summary
Traditional methods cannot guarantee the performance level of business operations after optimization, resulting in wasted optimization resources.
By obtaining the device configuration set of the terminal device, a target optimization function is constructed. The independent variable of the device optimization function is the target performance index, and the dependent variable is the change in the target business index. The function is maximized to obtain the target performance index value, thereby optimizing the performance of the application.
This improved the efficiency of business operations after performance optimization and increased the effective utilization rate of optimized resources.
Smart Images

Figure CN122309115A_ABST
Abstract
Description
Technical Field
[0001] The embodiments of the present invention relate to the field of computer technology, and in particular to a performance optimization method, apparatus, device, storage medium and product. Background Technology
[0002] In today's digital age, applications play a crucial role in people's daily lives, work, and various business scenarios. Currently, application performance optimization relies heavily on human experience. However, faced with increasingly complex terminal systems and diverse performance metrics, traditional methods cannot guarantee the business efficiency level after performance optimization, resulting in a waste of optimization resources. Summary of the Invention
[0003] This invention provides a performance optimization method, apparatus, device, storage medium, and product to address the problem that traditional methods cannot guarantee the performance level of optimized services and improve the effective utilization rate of optimized resources.
[0004] In a first aspect, embodiments of the present invention provide a performance optimization method, the method comprising:
[0005] Obtain the device configuration set of the terminal device to which the application to be optimized belongs; wherein, the device configuration set contains at least one device configuration sequence;
[0006] Based on the device optimization functions corresponding to the at least one device configuration sequence, a target optimization function is constructed; wherein, the independent variable of the device optimization function is the target performance index, and the dependent variable is the change in the target business index;
[0007] Based on the performance index set and the service index set of each device configuration sequence, the target optimization function is maximized to obtain the target performance index value.
[0008] Based on the device configuration set and the target performance index value, the application to be optimized is optimized for performance.
[0009] The performance metric set includes at least two performance metric values of the target performance metric, and the business metric set includes business metric values corresponding to the target business metric and the at least two performance metric values, respectively.
[0010] Secondly, embodiments of the present invention also provide a performance optimization device, the device comprising:
[0011] The device configuration set acquisition module is used to acquire the device configuration set of the terminal device to which the application to be optimized belongs; wherein, the device configuration set contains at least one device configuration sequence;
[0012] The target optimization function construction module is used to construct a target optimization function based on the device optimization functions corresponding to the at least one device configuration sequence; wherein, the independent variable of the device optimization function is the target performance index, and the dependent variable is the change in the target business index;
[0013] The target performance index value determination module is used to maximize the target optimization function based on the performance index set and the service index set of each device configuration sequence to obtain the target performance index value.
[0014] The performance optimization execution module is used to optimize the performance of the application to be optimized based on the device configuration set and the target performance index value.
[0015] The performance metric set includes at least two performance metric values of the target performance metric, and the business metric set includes business metric values corresponding to the target business metric and the at least two performance metric values, respectively.
[0016] Thirdly, embodiments of the present invention also provide an electronic device, the electronic device comprising:
[0017] At least one processor; and
[0018] A memory communicatively connected to the at least one processor; wherein,
[0019] The memory stores a computer program that can be executed by the at least one processor, the computer program being executed by the at least one processor to enable the at least one processor to perform the performance optimization method described in any embodiment of the present invention.
[0020] Fourthly, embodiments of the present invention also provide a computer-readable storage medium storing computer instructions that are used to cause a processor to execute the performance optimization method described in any embodiment of the present invention.
[0021] Fifthly, embodiments of the present invention also provide a computer program product, including a computer program that, when executed by a processor, implements the performance optimization method described in any embodiment of the present invention.
[0022] The technical solution of this invention constructs a target optimization function based on the device optimization function corresponding to the device configuration sequence of the application to be optimized. The independent variable of the device optimization function is the target performance index, and the dependent variable is the change in the target business index. The target performance index value is obtained by maximizing the target optimization function. Based on the device configuration set and the target performance index value, the application to be optimized is optimized. This establishes a relationship model between performance index optimization and business efficiency, achieving the goal of exploring the optimizable space of performance indicators that significantly affect business efficiency. It solves the problem that traditional methods cannot guarantee the level of business efficiency after performance optimization, thereby improving the effective utilization rate of optimization resources. Attached Figure Description
[0023] The above and other features, advantages, and aspects of the various embodiments of the present invention will become more apparent from the accompanying drawings and the following detailed description. Throughout the drawings, the same or similar reference numerals denote the same or similar elements. It should be understood that the drawings are schematic, and the originals and elements are not necessarily drawn to scale.
[0024] Figure 1 A flowchart illustrating a performance optimization method provided in one embodiment of the present invention;
[0025] Figure 2 A flowchart illustrating another performance optimization method provided in one embodiment of the present invention;
[0026] Figure 3 A schematic diagram of a reference fitting function and a control fitting function provided in one embodiment of the present invention;
[0027] Figure 4 This is a schematic diagram illustrating the framework of a performance optimization method provided in one embodiment of the present invention;
[0028] Figure 5 This is a schematic diagram of the structure of a performance optimization device provided in one embodiment of the present invention;
[0029] Figure 6 This is a schematic diagram of the structure of an electronic device provided in one embodiment of the present invention. Detailed Implementation
[0030] Embodiments of the present invention will now be described in more detail with reference to the accompanying drawings. While some embodiments of the invention are shown in the drawings, it should be understood that the invention can be implemented in various forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided to provide a more thorough and complete understanding of the invention. It should be understood that the accompanying drawings and embodiments are for illustrative purposes only and are not intended to limit the scope of protection of the invention.
[0031] It should be understood that the various steps described in the method embodiments of the present invention may be performed in different orders and / or in parallel. Furthermore, the method embodiments may include additional steps and / or omit the steps shown. The scope of the present invention is not limited in this respect.
[0032] The term "comprising" and its variations as used herein are open-ended inclusions, meaning "including but not limited to". The term "based on" means "at least partially based on". The term "one embodiment" means "at least one embodiment"; the term "another embodiment" means "at least one additional embodiment"; the term "some embodiments" means "at least some embodiments". Definitions of other terms will be given in the description below.
[0033] It should be noted that the concepts of "first" and "second" mentioned in this invention are only used to distinguish different devices, modules or units, and are not used to limit the order of functions performed by these devices, modules or units or their interdependencies.
[0034] It should be noted that the terms "a" and "a plurality of" used in this invention are illustrative rather than restrictive. Those skilled in the art should understand that, unless otherwise expressly indicated in the context, they should be understood as "one or more".
[0035] The names of the messages or information exchanged between the multiple devices in the embodiments of the present invention are for illustrative purposes only and are not intended to limit the scope of these messages or information.
[0036] It is understood that before using the technical solutions disclosed in the various embodiments of the present invention, users should be informed of the types, scope of use, and usage scenarios of the personal information involved in the present invention and their authorization should be obtained in accordance with relevant laws and regulations through appropriate means.
[0037] For example, upon receiving a user's active request, a prompt message is sent to the user to explicitly inform them that the requested operation will require the acquisition and use of the user's personal information. This allows the user to independently choose whether to provide personal information to the software or hardware, such as the electronic device, application program, server, or storage medium executing the operation of this invention, based on the prompt message.
[0038] As an optional but non-limiting implementation, in response to a user's active request, sending a prompt message to the user can be done via a pop-up window, where the prompt message can be presented in text format. Furthermore, the pop-up window can also include a selection control allowing the user to choose "agree" or "disagree" to provide personal information to the electronic device.
[0039] It is understood that the above notification and user authorization process is merely illustrative and does not constitute a limitation on the implementation of the present invention. Other methods that comply with relevant laws and regulations may also be applied to the implementation of the present invention.
[0040] Figure 1 This is a flowchart illustrating a performance optimization method according to an embodiment of the present invention. This embodiment is applicable to situations involving performance optimization of information technology equipment. The method can be executed by a performance optimization device, which can be implemented in hardware and / or software. This performance optimization device can be configured in an electronic device, typically a mobile terminal or tablet computer. Figure 1 As shown, the method includes:
[0041] S110. Obtain the device configuration set of the terminal device to which the application to be optimized belongs.
[0042] Specifically, the application to be optimized refers to the application whose performance is to be optimized. For example, the type of application to be optimized can be a social application, an entertainment application, an office application, an e-commerce application, or a life service application, etc. There is no limitation on the type of application to be optimized here, and it can be customized according to the actual optimization needs.
[0043] Specifically, the device configuration set is used to describe the inherent attributes of the terminal device. In this embodiment, the device configuration set includes at least one device configuration sequence, and each device configuration sequence includes parameter values corresponding to at least one device configuration parameter. At least one device configuration parameter has a different value among different device configuration sequences.
[0044] Among them, device configuration parameters represent configuration parameters used to define various attributes of the terminal device, such as performance, operation, storage, and network. In an optional embodiment, for example, the device configuration sequence includes parameter values corresponding to device configuration parameters such as CPU type, graphics processor type, device brand, device model, memory capacity, storage capacity, device size, and system version.
[0045] In another optional embodiment, obtaining the device configuration set of the terminal device to which the application to be optimized belongs includes: obtaining at least two preset configuration parameters of the terminal device to which the application to be optimized belongs, and determining the configuration relevance of each preset configuration parameter to the target performance index; filtering the at least two preset configuration parameters according to the at least two configuration relevances to obtain a device configuration parameter set; and determining the device configuration set according to the value data corresponding to at least one device configuration parameter in the device configuration parameter set.
[0046] Specifically, for each preset configuration parameter, the corresponding value data is obtained, and the performance sampling data corresponding to the target performance index and the value data is obtained. The correlation between the value data and the performance sampling data is calculated to obtain the configuration correlation between the preset configuration parameter and the target performance index.
[0047] Specifically, the performance sampling data includes performance sampling values corresponding to at least one parameter value in the value data. For example, the algorithms used for configuration relevance include, but are not limited to, Pearson correlation coefficient, Spearman rank correlation coefficient, Kendall rank correlation coefficient, or cosine similarity algorithm, etc.
[0048] In one optional embodiment, a device configuration parameter set is obtained by filtering at least two preset configuration parameters based on at least two configuration relevance scores. This includes: selecting preset configuration parameters with configuration relevance scores greater than a relevance threshold as device configuration parameters in the device configuration parameter set, thereby obtaining the device configuration parameter set. For example, the relevance threshold can be 0.7 or 0.6, but is not limited to the example scenario.
[0049] In another optional embodiment, a device configuration parameter set is obtained by filtering at least two preset configuration parameters based on at least two configuration relevances, including: sorting at least two preset configuration parameters based on two configuration relevances, and obtaining the device configuration parameter set based on sorting selection conditions and parameter sorting results.
[0050] For example, the sorting selection criteria are a selection ratio or a selection quantity. The selection ratio represents the ratio between the number of parameters in the device configuration parameter set and the number of parameters in the preset configuration parameters. For example, the selection ratio can be 50% or 60%, and the selection quantity can be 8 or 9, but is not limited to the example scenario.
[0051] Specifically, the value data includes at least one parameter value of the device configuration parameters. For example, suppose at least one device configuration parameter includes the CPU model and the device brand, where there are 6 possible values for the CPU model and 2 possible values for the device brand, then the device configuration set contains 12 device configuration sequences.
[0052] The advantage of filtering configuration parameters is that, from the perspective of the inherent attributes of the terminal device, it reduces the computational load of the performance optimization process while ensuring the business efficiency level after performance optimization.
[0053] S120. Construct a target optimization function based on the device optimization functions corresponding to at least one device configuration sequence.
[0054] Specifically, the device optimization function represents the relationship between the change in the target business indicator and the target performance indicator under the device configuration sequence. In this embodiment, the independent variable of the device optimization function is the target performance indicator, and the dependent variable is the change in the target business indicator.
[0055] Specifically, target performance metrics represent indicators used to quantify the performance of the application to be optimized. For example, target performance metrics could include power consumption, CPU utilization, and temperature. For instance, when the application to be optimized is a video-based social application, target performance metrics could also include frames per second (FPS), first frame loading time, stuttering rate, stuttering duration, camera duration, and beautification duration. There are no limitations on the target performance metrics here; they can be customized according to the application to be optimized.
[0056] Specifically, target business metrics are indicators used to measure the business performance generated by the application to be optimized. For example, when the application to be optimized is a video social application, target business metrics could be playback duration, usage time, number of submissions, and value demand, etc.
[0057] The target business metrics are not limited here; they can be customized based on the target performance metrics. For example, when the target performance metric is power consumption, the target business metric can be playback duration or usage duration; when the target performance metric is camera time, the target business metric can be the number of submissions, but it is not limited to the above examples.
[0058] Specifically, the control variables of the equipment optimization function include the optimization granularity of the target performance index. The optimization granularity represents the degree of difference between the performance index value after optimization and the performance index value before optimization. For example, when the performance index value before optimization is 3, if the optimization granularity is 1, the performance index value after optimization is 4; if the optimization granularity is -1, the performance index value after optimization is 2.
[0059] For example, the device optimization function ΔY for the i-th device configuration sequence i Represented as: ΔY i =y i ′(T)-y i (T), where T represents the performance index value of the target performance index. With a fixed optimization granularity, T can represent either the performance index value before optimization or the performance index value after optimization. i (T) represents the target service indicator value of the i-th device configuration sequence before performance optimization, y i '(T) represents the target service indicator value after performance optimization under the i-th device configuration sequence, ΔY iThis represents the change in the target business metric under the i-th device configuration sequence.
[0060] Specifically, the objective optimization function represents the relationship between the change in the objective business indicators and the objective performance indicators under the device configuration set. The independent variable is the objective performance indicator, and the dependent variable is the statistical value of the change in the objective business indicators.
[0061] In an optional embodiment, a target optimization function is constructed based on the device optimization function corresponding to at least one device configuration sequence, including: when the number of device configuration sequences is one, the device optimization function corresponding to the device configuration sequence is used as the target optimization function.
[0062] In another optional embodiment, constructing a target optimization function based on the device optimization functions corresponding to at least one device configuration sequence includes: when the number of device configuration sequences is at least two, using the summation function corresponding to the device optimization functions corresponding to the at least two device configuration sequences as the target optimization function, or using the mean function corresponding to the device optimization functions corresponding to the at least two device configuration sequences as the target optimization function.
[0063] When the objective optimization function is a summation function, the dependent variable of the objective optimization function is the total change of the objective business indicators under the equipment configuration set. When the objective optimization function is a mean function, the dependent variable of the objective optimization function is the average change of the objective business indicators under the equipment configuration set.
[0064] In one specific embodiment, for example, the objective optimization function Y is represented as:
[0065]
[0066] In another specific embodiment, for example, the objective optimization function Y is expressed as:
[0067] Y = ∑ i∈count(A) ΔY i / count(A)
[0068] Where A represents the device configuration set, and count(A) represents the number of device configuration sequences in the device configuration set.
[0069] S130. Based on the performance index set and the service index set of each device configuration sequence, maximize the objective optimization function to obtain the target performance index value.
[0070] In this embodiment, the performance metric set includes at least two performance metric values of the target performance metric, and the business metric set includes the business metric values corresponding to the target business metric and the at least two performance metric values, respectively.
[0071] For example, assuming the target performance metric is power consumption and the target service metric is playback duration, the performance metric set includes 5% power consumption and 3% power consumption. In the service metric set corresponding to device configuration sequence A, the playback duration corresponding to 5% power consumption is 2 seconds, and the playback duration corresponding to 3% power consumption is 10 seconds. In the service metric set corresponding to device configuration sequence B, the playback duration corresponding to 5% power consumption is 3 seconds, and the playback duration corresponding to 3% power consumption is 6 seconds. Therefore, for the same solution interval (5% power consumption - 3% power consumption), the change in the target service metric corresponding to different device configuration sequences may differ.
[0072] Specifically, the equipment configuration set represents the control variables of the objective optimization function, the performance index set and each business index set serve as constraints on the objective optimization function, limiting the values of the objective performance index and the objective business index. The maximization process involves adjusting the specific values of the objective performance index to maximize the dependent variable of the objective optimization function while satisfying the constraints.
[0073] S140. Optimize the performance of the application to be optimized based on the device configuration set and target performance index values.
[0074] Specifically, the target performance index value represents the performance index value that maximizes the dependent variable of the target optimization function. When the optimization granularity is fixed, the target performance index value can be used to represent the performance index value before performance optimization or the performance index value after performance optimization.
[0075] In one optional embodiment, performance optimization of the application to be optimized is performed based on the device configuration set and the target performance index value, including: performance optimization of the application to be optimized under the device configuration set based on the target performance index value.
[0076] Specifically, based on the target performance index values, the applications to be optimized on the terminal devices equipped with the corresponding device configuration set are screened, and the performance of the screened applications to be optimized is optimized according to the optimization granularity.
[0077] The selected applications to be optimized represent those whose performance on all terminal devices corresponding to the device configuration set meets the target performance metric value. For example, suppose the performance of the application to be optimized on terminal device A meets performance metric value A, and the performance of the application to be optimized on terminal device B meets performance metric value B. If the target performance metric is performance metric value A, then performance optimization is performed on the application to be optimized on terminal device A; if the target performance metric is performance metric value B, then performance optimization is performed on the application to be optimized on terminal device B. The device configuration sequences corresponding to terminal devices A and B can be the same or different.
[0078] In another optional embodiment, the performance optimization of the application to be optimized is performed based on the device configuration set and the target performance index value, including: when the number of device configuration sequences is at least two, determining the change amount of the target business index corresponding to at least two device configuration sequences respectively based on the target performance index value; taking the device configuration sequence corresponding to the largest change amount as the target device configuration sequence, and performing performance optimization on the application to be optimized corresponding to the target device configuration sequence based on the target performance index value.
[0079] Specifically, the target performance index value is substituted into the device optimization function corresponding to at least two device configuration sequences to obtain the change in the target business index corresponding to at least two device configuration sequences.
[0080] Taking the above equipment configuration sequence A and equipment configuration sequence B as examples, the change in the target business indicators corresponding to equipment configuration sequence A and equipment configuration sequence B is 8s and 3s respectively. Therefore, equipment configuration sequence A is taken as the target equipment configuration sequence.
[0081] Specifically, based on the target performance index values, the applications to be optimized on the terminal devices corresponding to the target device configuration sequence are screened, and the performance of the screened applications to be optimized is optimized according to the optimization granularity. Here, the screened applications to be optimized represent those whose performance on all terminal devices corresponding to the target device configuration sequence meets the target performance index values.
[0082] The advantage of filtering device configuration sequences is that performance optimization of applications under all device configuration sequences may lead to the average distribution of optimization resources. However, by filtering device configuration sequences, optimization resources can be concentrated on the device configuration sequences that have the highest business performance response to the target performance indicators, which not only ensures the effective utilization of optimization resources, but also improves the efficiency of performance optimization.
[0083] The technical solution of this embodiment constructs a target optimization function based on the device optimization function corresponding to the device configuration sequence of the application to be optimized. The independent variable of the device optimization function is the target performance index, and the dependent variable is the change in the target business index. The target performance index value is obtained by maximizing the target optimization function. Based on the device configuration set and the target performance index value, the application to be optimized is optimized. This establishes a relationship model between performance index optimization and business efficiency, achieving the goal of exploring the optimizable space of performance indicators that significantly affect business efficiency. It solves the problem that traditional methods cannot guarantee the level of business efficiency after performance optimization, thereby improving the effective utilization rate of optimization resources.
[0084] Figure 2This is a flowchart of another performance optimization method provided in one embodiment of the present invention. This embodiment further refines the "obtaining the device configuration set of the terminal device to which the application to be optimized belongs" in the above embodiment. In this embodiment, obtaining the device configuration set of the terminal device to which the application to be optimized belongs includes: obtaining a preset configuration set of the terminal device to which the application to be optimized belongs; wherein, the preset configuration set contains at least two preset configuration sequences; for each preset configuration sequence, determining the optimization impact of the preset configuration sequence based on a performance indicator set and a business indicator set of the preset configuration sequence; filtering the preset configuration set based on at least two optimization impacts to obtain the device configuration set. Figure 2 As shown, the method includes:
[0085] S210. Obtain the preset configuration set of the terminal device to which the application to be optimized belongs.
[0086] In this embodiment, the preset configuration set includes at least two preset configuration sequences, and each preset configuration sequence contains parameter values corresponding to at least one device configuration parameter. Specifically, at least one device configuration parameter has a different value among the different preset configuration sequences.
[0087] S220. For each preset configuration sequence, determine the optimization impact of the preset configuration sequence based on the performance indicator set and the business indicator set of the preset configuration sequence.
[0088] Specifically, the business metric set of the preset configuration sequence includes the target business metric under the preset configuration sequence and the business metric values corresponding to at least two performance metric values.
[0089] In this embodiment, the optimization impact degree represents the degree of influence of the target performance index on the significant difference between the posterior probability distribution and the prior probability distribution of the preset configuration sequence. The posterior probability distribution represents the probability distribution of the business index value corresponding to the performance index value after performance optimization, and the prior probability distribution represents the probability distribution of the business index value corresponding to the performance index value before performance optimization.
[0090] Specifically, the business indicator set of the preset configuration sequence is optimized, associated, and classified according to the performance indicator set to obtain a priori business indicator set and a posterior business indicator set. Based on the priori business indicator set, a priori probability value is determined, and based on the posterior business indicator set, a posterior probability value is determined. Finally, based on the priori and posterior probability values, the optimization impact of the preset configuration sequence is determined. The priori business indicator set contains business indicator values corresponding to the performance indicator values before performance optimization, and the posterior business indicator set contains business indicator values corresponding to the performance indicator values after performance optimization.
[0091] Table 1 below shows a set of prior business indicators and a set of subsequent business indicators provided in an embodiment of the present invention.
[0092] Table 1 uses power consumption as the target performance indicator and playback duration as the target service indicator as an example.
[0093] power consumption Prior business indicator set Post-test business indicator set 1% 2s 3s 2% 3s 4s 3% 4s 5s 4% 5s 6s
[0094] The prior business metrics set includes playback durations corresponding to power consumption of 1%-4%, and the subsequent business metrics set includes playback durations corresponding to power consumption of 2%-5%. For example, the playback duration corresponding to 2% power consumption in the subsequent business metrics set is the playback duration optimized and associated with the playback duration corresponding to 1% power consumption in the prior business metrics set.
[0095] For example, the algorithms used to optimize the influence degree include, but are not limited to, Bayesian factor, Kullback-Leibler divergence algorithm, Jensen-Shannon divergence algorithm, relative entropy algorithm, and posterior prediction test algorithm.
[0096] Taking the Jensen-Shannon divergence algorithm as an example, the prior probability value p satisfies the formula: p = F(m) / F, where F(m) represents the m-th business indicator value in the prior business indicator set P, and F represents the sum of all business indicator values in the prior business indicator set P. The posterior probability value q satisfies the formula: q = A(m) / A, where A(m) represents the m-th business indicator value in the posterior business indicator set Q, and A represents the sum of all business indicator values in the posterior business indicator set Q.
[0097] For example, optimize the influence D JS (P,Q) satisfy the formula:
[0098]
[0099] Among them, the optimization influence degree D JS (P,Q)∈[0,1].
[0100] S230. Filter the preset configuration set according to at least two optimization influence degrees to obtain the device configuration set.
[0101] In an optional embodiment, the preset configuration set is filtered based on at least two optimization influences to obtain a device configuration set, including: taking the preset configuration sequence that meets the filtering conditions in the preset configuration set as the device configuration sequence in the device configuration set to obtain the device configuration set.
[0102] The selection criteria are either an optimization impact greater than an impact threshold, or an optimization impact greater than an impact threshold and a penetration rate greater than a penetration rate threshold. The penetration rate represents the proportion of the number of terminal devices corresponding to the preset configuration sequence to the total number of terminals corresponding to the preset configuration set.
[0103] For example, the impact threshold can be 0.1 and the penetration threshold can be 6%, but this is not limited to the example scenario.
[0104] The advantage of setting a penetration rate threshold in the screening criteria is that it ensures that optimized resources are distributed on terminal devices corresponding to the device configuration sequence with a high penetration rate, thereby further ensuring the business efficiency level after performance optimization.
[0105] In an optional embodiment, a preset configuration set is filtered based on at least two optimized impact values to obtain a device configuration set, including: using at least two impact value thresholds, filtering the preset configuration set according to at least two optimized impact values to obtain a reference configuration set; wherein, the impact value thresholds correspond one-to-one with the reference configuration sets; for each reference configuration set, a control configuration set is determined based on the preset configuration set and the reference configuration set, and the difference response level between the reference configuration set and the control configuration set is determined based on the business indicator set corresponding to the reference configuration set and the business indicator set corresponding to the control configuration set; the reference configuration set corresponding to the largest difference response level is taken as the device configuration set.
[0106] Specifically, the reference configuration set refers to the configuration set consisting of preset configuration sequences other than the reference configuration set. In this embodiment, the difference response level represents the degree of difference between the response level corresponding to the reference configuration set and the response level corresponding to the reference configuration set, and the response level represents the rate of change of the target business indicator in response to the target performance indicator.
[0107] Specifically, based on the business indicator sets corresponding to the performance indicator set and the reference configuration set, a reference fitting function corresponding to the reference configuration set is determined. Based on the business indicator sets corresponding to the performance indicator set and the reference configuration set, a comparison fitting function corresponding to the comparison configuration set is determined. The absolute value of the slope of the reference fitting function is used as the response level of the reference configuration set, and the absolute value of the slope of the comparison fitting function is used as the response level of the comparison configuration set. The difference between the response level of the reference configuration set and the response level of the comparison configuration set is used as the difference response level of the reference configuration set compared to the comparison configuration set.
[0108] Specifically, the independent variables of the reference fitting function and the control fitting function are the performance index values of the target performance index, and the dependent variable is the business index value of the target business index. A larger absolute value of the slope indicates a greater rate of change in the target business index in response to the target performance index, suggesting that the target business index is more sensitive to the optimization granularity of the target performance index. Conversely, a smaller absolute value of the slope indicates a smaller rate of change in the target business index in response to the target performance index, suggesting that the target business index is less sensitive to the optimization granularity of the target performance index.
[0109] Figure 3This is a schematic diagram of a reference fitting function and a control fitting function provided in one embodiment of the present invention. Specifically, Figure 3 The red curve in the graph represents the curve corresponding to the reference fitting function, and the blue curve represents the curve corresponding to the control fitting function. The horizontal axis of the coordinate axis represents the performance index value, and the vertical axis represents the business index value.
[0110] The advantage of setting multiple impact thresholds is that it ensures that the response level of the device configuration set is significantly higher than that of the control configuration set, improves the interpretability of the performance optimization process, and further guarantees the business efficiency level after performance optimization.
[0111] S240. Construct a target optimization function based on the device optimization functions corresponding to at least one device configuration sequence.
[0112] Based on the above embodiments, optionally, the method further includes: determining the correlation between at least two preset business indicators and the target performance indicator based on the performance sampling data and the business sampling data corresponding to at least two preset business indicators respectively; and taking the preset business indicator corresponding to the largest correlation as the target business indicator.
[0113] In this embodiment, the performance sampling data includes the actual sampled values of the target performance indicators, and the service sampling data includes the actual sampled values of the target service indicators.
[0114] Specifically, the target business metric represents the preset business metric that has the highest sensitivity to the target performance metric. For example, the algorithms used for configuring relevance include, but are not limited to, Pearson correlation coefficient, Spearman rank correlation coefficient, Kendall rank correlation coefficient, or cosine similarity algorithm, etc.
[0115] The advantage of filtering business metrics is that it allows optimization resources to be focused on business efficiency levels that are closely related to target performance metrics, thus achieving efficient utilization of optimization resources.
[0116] Based on the above embodiments, the method may optionally further include: determining the multicollinearity corresponding to at least one combination of performance indicators based on the performance sampling data corresponding to at least two preset performance indicators; taking the combination of performance indicators with multicollinearity greater than the collinearity threshold as the target performance indicator; wherein the combination of performance indicators includes at least two preset performance indicators.
[0117] Specifically, multicollinearity refers to a phenomenon in multiple regression analysis where there is a strong linear correlation between independent variables. Multicollinearity indicates the degree of this linear correlation, and the specific parameter value of the multicollinearity threshold depends on the multicollinearity algorithm used. Examples of multicollinearity algorithms include, but are not limited to, correlation coefficient algorithms, variance inflation factor algorithms, and condition number algorithms.
[0118] Specifically, when there are multiple performance index combinations with multicollinearity greater than the collinearity threshold, for each performance index combination, the performance index combination is used as the target performance index, and the performance optimization method provided in this embodiment is executed.
[0119] Based on the above embodiments, optionally, the method further includes: filtering outliers from the performance sampling data. Specifically, based on the performance sampling data, the mean and standard deviation are determined, the product of the standard deviation and a preset multiple is obtained, the sum of the product and the mean is used as the performance sampling threshold, and performance sampling values whose absolute value is greater than the performance sampling threshold are removed from the performance sampling data.
[0120] The advantage of this setup is that it improves the stability of the performance level of optimized business operations.
[0121] S250. Based on the performance index set and the service index set of each device configuration sequence, the target optimization function is maximized to obtain the target performance index value.
[0122] Based on the above embodiments, optionally, the method further includes: determining an indicator fitting function for the target performance indicator and the target business indicator based on the performance sampling data of the target performance indicator and the business sampling data of the target business indicator; wherein the independent variable of the indicator fitting function is the performance sampling data and the dependent variable is the business sampling data; determining the group interval of the target performance indicator based on the indicator fitting function and the significance level corresponding to the target business indicator, and determining the performance indicator set based on the group interval.
[0123] Specifically, the group interval represents the minimum change in the actual sampled value of the target business indicator that satisfies the significance level before and after performance optimization. Based on the significance level corresponding to the target business indicator, the minimum change in the target business indicator is determined, and then the group interval for the target performance indicator is determined based on the indicator fitting function and the minimum change in the target business indicator.
[0124] In this embodiment, the performance index value represents a group of sampled values of the target performance index, and the business index value represents the statistical value of the actual sampled values corresponding to the target business index and the performance index value. For example, the statistical value can be the average or the median, but is not limited to the example scenario.
[0125] For example, assuming the indicator fitting function is y = kx + b, if the minimum change in the target business indicator is 10, then the group interval Δx = 10 / k. Assuming k = 2, then the group interval Δx = 5. When the target performance indicator is power consumption, then the number of performance indicator values corresponding to power consumption is 20.
[0126] When the sample size of business sampling data is small, it may be possible to find a business sampling value that corresponds to the performance sampling value used to represent the performance optimization. Traditional methods usually solve this by using A / B testing, but A / B testing requires the business side to formulate corresponding experimental strategies, consuming traffic layers and resources, and generally takes anywhere from two weeks to several months to show significance. This embodiment, by grouping the actual sampled values of the target performance indicator, ensures the possibility of finding the business indicator value corresponding to the performance optimization value from the business indicator set, and is more suitable for the scenario of mining the optimization space of the performance indicators provided in this embodiment.
[0127] S260. Optimize the performance of the application to be optimized based on the device configuration set and target performance index values.
[0128] The implementation method of S260 in this embodiment is the same as that in the above embodiments. Figure 1 The S140 shown is the same or similar, and will not be described again in this embodiment.
[0129] Figure 4 This is a schematic diagram illustrating the framework of a performance optimization method according to an embodiment of the present invention. Specifically, in the data preparation stage, performance sampling data corresponding to at least one preset performance indicator and business sampling data corresponding to at least one preset business indicator are acquired, and outlier filtering is performed on each performance sampling data. In a specific embodiment, each preset performance indicator is sequentially used as a target performance indicator, or, based on the performance sampling data corresponding to the performance indicator combination, the multicollinearity of at least two preset performance indicators in the performance indicator combination is determined, and the performance indicator combination with a multicollinearity greater than a collinearity threshold is used as the target performance indicator. Based on the performance sampling data of the target performance indicator and the business sampling data corresponding to at least two preset business indicators, the correlation between at least two preset business indicators and the target performance indicator is determined, and the preset business indicator with the highest correlation is used as the target business indicator.
[0130] In the indicator relationship fitting process, the indicator fitting function between the target performance indicator and the target business indicator is determined based on the performance sampling data of the target performance indicator and the business sampling data of the target business indicator. In the performance indicator grouping process, the group interval of the target performance indicator is determined based on the indicator fitting function and the significance level corresponding to the target business indicator, and the performance indicator set is determined based on the group interval.
[0131] In the data modeling phase, the configuration relevance of each preset configuration parameter to the target performance index is determined. Based on at least two configuration relevances, the device configuration parameters corresponding to the device configuration sequences in the device configuration set are determined. In the sequence mining process, for each preset configuration sequence in the preset configuration set, the prior probability distribution and posterior probability distribution of the preset configuration sequence are determined based on the performance index set and the business index set of the preset configuration sequence. Based on the prior probability distribution and posterior probability distribution, the optimization impact of the preset configuration sequence is determined. Using multiple impact thresholds, the preset configuration set is filtered according to the optimization impact to obtain multiple reference configuration sets. Based on the difference response level, the multiple reference configuration sets are compared and verified to obtain the device configuration set.
[0132] Specifically, based on the device optimization function corresponding to at least one device configuration sequence in the device configuration set, a target optimization function is constructed. Based on the performance index set and the business index set of each device configuration sequence, the target optimization function is maximized to obtain the target performance index value. Based on the target performance index value, the application to be optimized is optimized.
[0133] The technical solution of this embodiment obtains a preset configuration set of the terminal device to which the application to be optimized belongs. For each preset configuration sequence, the optimization impact of the preset configuration sequence is determined according to the performance index set and the business index set of the preset configuration sequence. The preset configuration set is then filtered according to at least two optimization impacts to obtain the device configuration set. This solves the problem of low efficiency in the performance optimization process caused by a large number of device configuration sequences, and makes the performance optimization concentrated on the device configuration sequence with higher optimization impact, thereby further improving the effective utilization rate of optimization resources.
[0134] The following are embodiments of the performance optimization device provided in this invention. This device and the performance optimization method described above belong to the same inventive concept. For details not described in detail in the embodiments of the performance optimization device, please refer to the content about the performance optimization method in the above embodiments.
[0135] Figure 5 This is a schematic diagram of a performance optimization device provided in one embodiment of the present invention. Figure 5 As shown, the device includes: a device configuration set acquisition module 310, a target optimization function construction module 320, a target performance index value determination module 330, and a performance optimization execution module 340.
[0136] The device configuration set acquisition module 310 is used to acquire the device configuration set of the terminal device to which the application to be optimized belongs; wherein the device configuration set contains at least one device configuration sequence.
[0137] The target optimization function construction module 320 is used to construct a target optimization function based on the device optimization functions corresponding to at least one device configuration sequence; wherein, the independent variable of the device optimization function is the target performance index, and the dependent variable is the change in the target business index;
[0138] The target performance index value determination module 330 is used to maximize the target optimization function based on the performance index set and the service index set of each device configuration sequence to obtain the target performance index value.
[0139] The performance optimization execution module 340 is used to optimize the performance of the application to be optimized based on the device configuration set and the target performance index value.
[0140] The performance metrics set contains at least two performance metrics values of the target performance metric, and the business metrics set contains the business metrics values corresponding to the target business metric and the at least two performance metrics values, respectively.
[0141] The technical solution of this embodiment constructs a target optimization function based on the device optimization function corresponding to the device configuration sequence of the application to be optimized. The independent variable of the device optimization function is the target performance index, and the dependent variable is the change in the target business index. The target performance index value is obtained by maximizing the target optimization function. Based on the device configuration set and the target performance index value, the application to be optimized is optimized. This establishes a relationship model between performance index optimization and business efficiency, achieving the goal of exploring the optimizable space of performance indicators that significantly affect business efficiency. It solves the problem that traditional methods cannot guarantee the level of business efficiency after performance optimization, thereby improving the effective utilization rate of optimization resources.
[0142] In an optional embodiment, the performance optimization execution module 340 is specifically used for:
[0143] When the number of device configuration sequences is at least two, determine the change in the target business indicators corresponding to the at least two device configuration sequences based on the target performance indicator value.
[0144] The device configuration sequence corresponding to the largest change is taken as the target device configuration sequence, and the performance of the application to be optimized corresponding to the target device configuration sequence is optimized according to the target performance index value.
[0145] In an optional embodiment, the objective optimization function construction module 320 is specifically used for:
[0146] When there are at least two device configuration sequences, the summation function corresponding to the device optimization function corresponding to the at least two device configuration sequences is used as the target optimization function, or the mean function corresponding to the device optimization function corresponding to the at least two device configuration sequences is used as the target optimization function.
[0147] In an optional embodiment, the device configuration set acquisition module 310 includes:
[0148] The preset configuration set acquisition unit is used to acquire the preset configuration set of the terminal device to which the application to be optimized belongs; wherein, the preset configuration set contains at least two preset configuration sequences;
[0149] The optimization impact determination unit is used to determine the optimization impact of each preset configuration sequence based on the performance index set and the business index set of the preset configuration sequence.
[0150] The preset configuration set filtering unit is used to filter the preset configuration set based on at least two optimization influences to obtain the device configuration set;
[0151] Among them, the optimization impact degree represents the degree of influence of the target performance index on the significant difference between the posterior probability distribution and the prior probability distribution of the preset configuration sequence. The posterior probability distribution represents the probability distribution of the business index value corresponding to the performance index value after performance optimization, and the prior probability distribution represents the probability distribution of the business index value corresponding to the performance index value before performance optimization.
[0152] In one optional embodiment, the preset configuration set filtering unit is specifically used for:
[0153] At least two influence thresholds are used to filter the preset configuration set according to at least two optimized influence values to obtain a reference configuration set; wherein, the influence thresholds correspond one-to-one with the reference configuration sets.
[0154] For each reference configuration set, a reference configuration set is determined based on the preset configuration set and the reference configuration set. The difference response level between the reference configuration set and the reference configuration set is determined based on the business indicator set corresponding to the reference configuration set and the business indicator set corresponding to the reference configuration set.
[0155] Use the reference configuration set corresponding to the largest difference response level as the device configuration set;
[0156] Among them, the difference response level represents the degree of difference between the response level corresponding to the reference configuration set and the response level corresponding to the control configuration set, and the response level represents the rate of change of the target business indicator in response to the target performance indicator.
[0157] In an optional embodiment, the device configuration set acquisition module 310 includes:
[0158] The device configuration set determination unit is used to obtain at least two preset configuration parameters of the terminal device to which the application to be optimized belongs, and to determine the configuration correlation between each preset configuration parameter and the target performance index.
[0159] Based on at least two configuration relevances, at least two preset configuration parameters are filtered to obtain a set of device configuration parameters;
[0160] A device configuration set is determined based on the value data corresponding to at least one device configuration parameter in the device configuration parameter set; wherein, the device configuration sequence contains the parameter values corresponding to at least one device configuration parameter.
[0161] In an optional embodiment, the device further includes:
[0162] The performance metric set determination module is used to determine the metric fitting function between the target performance metric and the target business metric based on the performance sampling data of the target performance metric and the business sampling data of the target business metric; wherein, the independent variable of the metric fitting function is the performance sampling data and the dependent variable is the business sampling data.
[0163] Based on the indicator fitting function and the significance level corresponding to the target business indicator, determine the group interval of the target performance indicator, and determine the performance indicator set based on the group interval.
[0164] Among them, the performance sampling data contains the actual sampled values of the target performance indicators, and the performance indicator values represent the grouping of the sampled values of the target performance indicators. The business sampling data contains the actual sampled values of the target business indicators, and the business indicator values represent the statistical values of the actual sampled values corresponding to the target business indicators and the performance indicator values.
[0165] In an optional embodiment, the device further includes:
[0166] The target business indicator determination module is used to determine the correlation between at least two preset business indicators and the indicators corresponding to the target performance indicator, based on performance sampling data and business sampling data corresponding to at least two preset business indicators.
[0167] Use the preset business indicator with the highest correlation as the target business indicator.
[0168] In an optional embodiment, the device further includes:
[0169] The target performance index determination module is used to determine the multicollinearity corresponding to at least one combination of performance indices based on the performance sampling data corresponding to at least two preset performance indices.
[0170] The performance index combination with multicollinearity greater than the collinearity threshold is used as the target performance index; wherein, the performance index combination contains at least two preset performance indices.
[0171] The performance optimization device provided in the embodiments of the present invention can execute the performance optimization method provided in any embodiment of the present invention, and has the corresponding functional modules and beneficial effects of executing the method.
[0172] The following is for reference. Figure 6 The diagram illustrates a structural schematic of an electronic device (e.g., a terminal device or a server) 400 suitable for implementing embodiments of the present invention. The terminal device in the embodiments of the present invention may include, but is not limited to, mobile terminals such as mobile phones, laptops, digital broadcast receivers, PDAs (personal digital assistants), PADs (tablet computers), PMPs (portable multimedia players), in-vehicle terminals (e.g., in-vehicle navigation terminals), and fixed terminals such as digital TVs and desktop computers. Figure 6 The electronic device shown is merely an example and should not be construed as limiting the functionality and scope of use of the embodiments of the present invention.
[0173] like Figure 6 As shown, electronic device 400 may include a processing device (e.g., a central processing unit, a graphics processor, etc.) 401, which can perform various appropriate actions and processes according to a program stored in read-only memory (ROM) 402 or a program loaded from storage device 406 into random access memory (RAM) 403. RAM 403 also stores various programs and data required for the operation of electronic device 400. Processing device 401, ROM 402, and RAM 403 are interconnected via bus 404. Input / output (I / O) interface 405 is also connected to bus 404.
[0174] Typically, the following devices can be connected to I / O interface 405: input devices 406 including, for example, touchscreens, touchpads, keyboards, mice, cameras, microphones, accelerometers, gyroscopes, etc.; output devices 407 including, for example, liquid crystal displays (LCDs), speakers, vibrators, etc.; storage devices 406 including, for example, magnetic tapes, hard disks, etc.; and communication devices 409. Communication device 409 allows electronic device 400 to communicate wirelessly or wiredly with other devices to exchange data. Although Figure 6 An electronic device 400 with various devices is shown; however, it should be understood that it is not required to implement or possess all of the devices shown. More or fewer devices may be implemented or possessed alternatively.
[0175] In particular, according to embodiments of the present invention, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments of the present invention include a computer program product comprising a computer program carried on a non-transitory computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via a communication device 409, or installed from a storage device 406, or installed from a ROM 402. When the computer program is executed by the processing device 401, it performs the functions defined in the methods of the embodiments of the present invention.
[0176] It should be noted that the computer-readable medium described above in this invention can be a computer-readable signal medium, a computer-readable storage medium, or any combination thereof. A computer-readable storage medium can be, for example,—but not limited to—an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of a computer-readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination thereof. In this invention, a computer-readable storage medium can be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, apparatus, or device. In this invention, a computer-readable signal medium can include a data signal propagated in baseband or as part of a carrier wave, carrying computer-readable program code. Such propagated data signals can take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A computer-readable signal medium can be any computer-readable medium other than a computer-readable storage medium, which can send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device. The program code contained on the computer-readable medium can be transmitted using any suitable medium, including but not limited to: wires, optical fibers, RF (radio frequency), etc., or any suitable combination thereof.
[0177] In some implementations, clients and servers can communicate using any currently known or future-developed network protocol such as HTTP (Hypertext Transfer Protocol) and can interconnect with digital data communication (e.g., communication networks) of any form or medium. Examples of communication networks include local area networks (“LANs”), wide area networks (“WANs”), the Internet (e.g., the Internet of Things), and peer-to-peer networks (e.g., ad hoc peer-to-peer networks), as well as any currently known or future-developed networks.
[0178] The aforementioned computer-readable medium may be included in the aforementioned electronic device; or it may exist independently and not assembled into the electronic device.
[0179] The aforementioned computer-readable medium carries one or more programs that, when executed by the electronic device, cause the electronic device to: acquire at least two Internet Protocol (IP) addresses; send a node evaluation request to a node evaluation device, including at least two IP addresses, wherein the node evaluation device selects an IP address from the at least two IP addresses and returns it; and receive the IP address returned by the node evaluation device; wherein the acquired IP address indicates an edge node in the content delivery network.
[0180] Alternatively, the aforementioned computer-readable medium carries one or more programs that, when executed by the electronic device, cause the electronic device to: receive a node evaluation request including at least two Internet Protocol (IP) addresses; select an IP address from the at least two IP addresses; and return the selected IP address; wherein the received IP address indicates an edge node in the content delivery network.
[0181] Computer program code for performing the operations of this invention can be written in one or more programming languages or a combination thereof, including but not limited to object-oriented programming languages such as Java, Smalltalk, and C++, as well as conventional procedural programming languages such as the "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving remote computers, the remote computer can be connected to the user's computer via any type of network—including a local area network (LAN) or a wide area network (WAN)—or can be connected to an external computer (e.g., via the Internet using an Internet service provider).
[0182] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present invention. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.
[0183] The units described in the embodiments of the present invention can be implemented in software or in hardware. The name of a unit does not necessarily limit the unit itself; for example, the first acquisition unit can also be described as "a unit that acquires at least two Internet Protocol addresses".
[0184] The functions described above in this document can be performed, at least in part, by one or more hardware logic components. For example, exemplary types of hardware logic components that can be used, without limitation, include: Field Programmable Gate Arrays (FPGAs), Application-Specific Integrated Circuits (ASICs), Application Standard Products (ASSPs), System-on-Chip (SoCs), Complex Programmable Logic Devices (CPLDs), and so on.
[0185] In the context of this invention, a machine-readable medium can be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, apparatus, or device. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. Machine-readable media can include, but are not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fibers, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.
[0186] According to one or more embodiments of the present invention, Example 1 provides a performance optimization method, comprising:
[0187] Obtain the device configuration set of the terminal device to which the application to be optimized belongs; wherein, the device configuration set contains at least one device configuration sequence;
[0188] Based on the device optimization functions corresponding to the at least one device configuration sequence, a target optimization function is constructed; wherein, the independent variable of the device optimization function is the target performance index, and the dependent variable is the change in the target business index;
[0189] Based on the performance index set and the service index set of each device configuration sequence, the target optimization function is maximized to obtain the target performance index value.
[0190] Based on the device configuration set and the target performance index value, the application to be optimized is optimized for performance.
[0191] The performance metric set includes at least two performance metric values of the target performance metric, and the business metric set includes business metric values corresponding to the target business metric and the at least two performance metric values, respectively.
[0192] According to one or more embodiments of the present invention, Example 2, based on the method described in Example 1, wherein the performance optimization of the application to be optimized according to the device configuration set and the target performance index value includes:
[0193] When the number of device configuration sequences is at least two, the change in the target business indicator corresponding to the at least two device configuration sequences is determined according to the target performance indicator value.
[0194] The device configuration sequence corresponding to the largest change is taken as the target device configuration sequence, and the performance of the application to be optimized corresponding to the target device configuration sequence is optimized according to the target performance index value.
[0195] According to one or more embodiments of the present invention, Example 3, based on the method described in Example 1, includes constructing a target optimization function according to the device optimization functions corresponding to the at least one device configuration sequence, comprising:
[0196] When the number of device configuration sequences is at least two, the summation function corresponding to the device optimization function corresponding to the at least two device configuration sequences is used as the target optimization function, or the mean function corresponding to the device optimization function corresponding to the at least two device configuration sequences is used as the target optimization function.
[0197] According to one or more embodiments of the present invention, Example 4, based on the method described in any one of Examples 1-3, includes obtaining the device configuration set of the terminal device to which the application to be optimized belongs, comprising:
[0198] Obtain the preset configuration set of the terminal device to which the application to be optimized belongs; wherein, the preset configuration set contains at least two preset configuration sequences;
[0199] For each preset configuration sequence, the optimization impact of the preset configuration sequence is determined based on the performance index set and the business index set of the preset configuration sequence.
[0200] The preset configuration set is filtered based on at least two optimization impact factors to obtain the device configuration set;
[0201] Wherein, the optimization impact degree represents the degree of influence of the target performance index on the significant difference between the posterior probability distribution and the prior probability distribution of the preset configuration sequence, the posterior probability distribution represents the probability distribution of the business index value corresponding to the performance index value after performance optimization, and the prior probability distribution represents the probability distribution of the business index value corresponding to the performance index value before performance optimization.
[0202] According to one or more embodiments of the present invention, Example 5, based on the method described in Example 4, wherein filtering the preset configuration set according to at least two optimization influence degrees to obtain a device configuration set includes:
[0203] At least two influence thresholds are used to filter the preset configuration set according to at least two optimized influence values to obtain a reference configuration set; wherein, the influence thresholds correspond one-to-one with the reference configuration sets;
[0204] For each reference configuration set, a comparison configuration set is determined based on the preset configuration set and the reference configuration set, and the difference response level between the reference configuration set and the comparison configuration set is determined based on the business indicator set corresponding to the reference configuration set and the business indicator set corresponding to the comparison configuration set.
[0205] Use the reference configuration set corresponding to the largest difference response level as the device configuration set;
[0206] Wherein, the difference response level represents the degree of difference between the response level corresponding to the reference configuration set and the response level corresponding to the control configuration set, and the response level represents the rate of change of the target business indicator in response to the target performance indicator.
[0207] According to one or more embodiments of the present invention, Example 6 describes the method according to any one of Examples 1-3, wherein obtaining the device configuration set of the terminal device to which the application to be optimized belongs includes:
[0208] Obtain at least two preset configuration parameters of the terminal device to which the application to be optimized belongs, and determine the configuration relevance of each preset configuration parameter to the target performance index.
[0209] Based on at least two configuration relevances, a set of device configuration parameters is obtained by filtering the at least two preset configuration parameters.
[0210] A device configuration set is determined based on the value data corresponding to at least one device configuration parameter in the device configuration parameter set; wherein, the device configuration sequence contains the parameter values corresponding to the at least one device configuration parameter.
[0211] According to one or more embodiments of the present invention, Example 7 describes the method according to any one of Examples 1-3, the method further comprising:
[0212] Based on the performance sampling data of the target performance indicator and the business sampling data of the target business indicator, an indicator fitting function for the target performance indicator and the target business indicator is determined; wherein, the independent variable of the indicator fitting function is the performance sampling data and the dependent variable is the business sampling data;
[0213] Based on the indicator fitting function and the significance level corresponding to the target business indicator, the group interval of the target performance indicator is determined, and the performance indicator set is determined based on the group interval.
[0214] The performance sampling data includes the actual sampled values of the target performance indicator, and the performance indicator value represents the grouping of the sampled values of the target performance indicator. The business sampling data includes the actual sampled values of the target business indicator, and the business indicator value represents the statistical value of the actual sampled values corresponding to the target business indicator and the performance indicator value.
[0215] According to one or more embodiments of the present invention, Example 8 describes the method according to Example 7, the method further comprising:
[0216] Based on the performance sampling data and the service sampling data corresponding to at least two preset service indicators, determine the correlation between the at least two preset service indicators and the indicators corresponding to the target performance indicator;
[0217] Use the preset business indicator with the highest correlation as the target business indicator.
[0218] According to one or more embodiments of the present invention, Example 9 describes the method according to Example 7, the method further comprising:
[0219] Based on the performance sampling data corresponding to at least two preset performance indicators, determine the multicollinearity corresponding to at least one combination of performance indicators.
[0220] The performance index combination with multicollinearity greater than the collinearity threshold is used as the target performance index; wherein, the performance index combination includes at least two preset performance indices.
[0221] According to one or more embodiments of the present invention, Example 10 provides a performance optimization apparatus, comprising:
[0222] The device configuration set acquisition module is used to acquire the device configuration set of the terminal device to which the application to be optimized belongs; wherein, the device configuration set contains at least one device configuration sequence;
[0223] The target optimization function construction module is used to construct a target optimization function based on the device optimization functions corresponding to the at least one device configuration sequence; wherein, the independent variable of the device optimization function is the target performance index, and the dependent variable is the change in the target business index;
[0224] The target performance index value determination module is used to maximize the target optimization function based on the performance index set and the service index set of each device configuration sequence to obtain the target performance index value.
[0225] The performance optimization execution module is used to optimize the performance of the application to be optimized based on the device configuration set and the target performance index value.
[0226] The performance metric set includes at least two performance metric values of the target performance metric, and the business metric set includes business metric values corresponding to the target business metric and the at least two performance metric values, respectively.
[0227] According to one or more embodiments of the present invention, Example 11 provides an electronic device, comprising:
[0228] At least one processor; and
[0229] A memory communicatively connected to the at least one processor; wherein,
[0230] The memory stores a computer program that can be executed by the at least one processor to enable the at least one processor to perform the performance optimization method described in any one of Examples 1-9.
[0231] According to one or more embodiments of the present invention, Example 12 provides a computer-readable storage medium storing computer instructions for causing a processor to execute the performance optimization method described in any one of Examples 1-9.
[0232] According to one or more embodiments of the present invention, Example 13 provides a computer program product including a computer program that, when executed by a processor, implements the performance optimization method according to any one of Examples 1-9.
[0233] The above description is merely a preferred embodiment of the present invention and an explanation of the technical principles employed. Those skilled in the art should understand that the scope of disclosure in this invention is not limited to technical solutions formed by specific combinations of the above-described technical features, but should also cover other technical solutions formed by arbitrary combinations of the above-described technical features or their equivalents without departing from the above-described concept. For example, technical solutions formed by substituting the above features with (but not limited to) technical features with similar functions disclosed in this invention.
[0234] Furthermore, while the operations are described in a specific order, this should not be construed as requiring these operations to be performed in the specific order shown or in sequential order. In certain circumstances, multitasking and parallel processing may be advantageous. Similarly, while several specific implementation details are included in the above discussion, these should not be construed as limiting the scope of the invention. Certain features described in the context of individual embodiments may also be implemented in combination in a single embodiment. Conversely, various features described in the context of a single embodiment may also be implemented individually or in any suitable sub-combination in multiple embodiments.
[0235] Although the subject matter has been described using language specific to structural features and / or methodological logic, it should be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or actions described above. Rather, the specific features and actions described above are merely illustrative examples of implementing the claims.
Claims
1. A performance optimization method, characterized by, include: Obtain the device configuration set of the terminal device to which the application to be optimized belongs; wherein, the device configuration set contains at least one device configuration sequence; Based on the device optimization functions corresponding to the at least one device configuration sequence, a target optimization function is constructed; wherein, the independent variable of the device optimization function is the target performance index, and the dependent variable is the change in the target business index; Based on the performance index set and the service index set of each device configuration sequence, the target optimization function is maximized to obtain the target performance index value. Based on the device configuration set and the target performance index value, the application to be optimized is optimized for performance. The performance metric set includes at least two performance metric values of the target performance metric, and the business metric set includes business metric values corresponding to the target business metric and the at least two performance metric values, respectively.
2. The method according to claim 1, characterized in that, The step of optimizing the application to be optimized based on the device configuration set and the target performance index value includes: When the number of device configuration sequences is at least two, the change in the target business indicator corresponding to the at least two device configuration sequences is determined according to the target performance indicator value. The device configuration sequence corresponding to the largest change is taken as the target device configuration sequence, and the performance of the application to be optimized corresponding to the target device configuration sequence is optimized according to the target performance index value.
3. The method according to claim 1, characterized in that, The step of constructing a target optimization function based on the device optimization functions corresponding to the at least one device configuration sequence includes: When the number of device configuration sequences is at least two, the summation function corresponding to the device optimization function corresponding to the at least two device configuration sequences is used as the target optimization function, or the mean function corresponding to the device optimization function corresponding to the at least two device configuration sequences is used as the target optimization function.
4. The method according to any one of claims 1-3, characterized in that, The step of obtaining the device configuration set of the terminal device to which the application to be optimized belongs includes: Obtain the preset configuration set of the terminal device to which the application to be optimized belongs; wherein, the preset configuration set contains at least two preset configuration sequences; For each preset configuration sequence, the optimization impact of the preset configuration sequence is determined based on the performance index set and the business index set of the preset configuration sequence. The preset configuration set is filtered based on at least two optimization impact factors to obtain the device configuration set; Wherein, the optimization impact degree represents the degree of influence of the target performance index on the significant difference between the posterior probability distribution and the prior probability distribution of the preset configuration sequence, the posterior probability distribution represents the probability distribution of the business index value corresponding to the performance index value after performance optimization, and the prior probability distribution represents the probability distribution of the business index value corresponding to the performance index value before performance optimization.
5. The method according to claim 4, characterized in that, The step of filtering the preset configuration set based on at least two optimization influence values to obtain the device configuration set includes: At least two influence thresholds are used to filter the preset configuration set according to at least two optimized influence values to obtain a reference configuration set; wherein, the influence thresholds correspond one-to-one with the reference configuration sets; For each reference configuration set, a comparison configuration set is determined based on the preset configuration set and the reference configuration set, and the difference response level between the reference configuration set and the comparison configuration set is determined based on the business indicator set corresponding to the reference configuration set and the business indicator set corresponding to the comparison configuration set. Use the reference configuration set corresponding to the largest difference response level as the device configuration set; Wherein, the difference response level represents the degree of difference between the response level corresponding to the reference configuration set and the response level corresponding to the control configuration set, and the response level represents the rate of change of the target business indicator in response to the target performance indicator.
6. The method according to any one of claims 1-3, characterized in that, The step of obtaining the device configuration set of the terminal device to which the application to be optimized belongs includes: Obtain at least two preset configuration parameters of the terminal device to which the application to be optimized belongs, and determine the configuration relevance of each preset configuration parameter to the target performance index. Based on at least two configuration relevances, a set of device configuration parameters is obtained by filtering the at least two preset configuration parameters. A device configuration set is determined based on the value data corresponding to at least one device configuration parameter in the device configuration parameter set; wherein, the device configuration sequence contains the parameter values corresponding to the at least one device configuration parameter.
7. The method according to any one of claims 1-3, characterized in that, The method further includes: Based on the performance sampling data of the target performance indicator and the business sampling data of the target business indicator, an indicator fitting function for the target performance indicator and the target business indicator is determined; wherein, the independent variable of the indicator fitting function is the performance sampling data and the dependent variable is the business sampling data; Based on the indicator fitting function and the significance level corresponding to the target business indicator, the group interval of the target performance indicator is determined, and the performance indicator set is determined based on the group interval. The performance sampling data includes the actual sampled values of the target performance indicator, and the performance indicator value represents the grouping of the sampled values of the target performance indicator. The business sampling data includes the actual sampled values of the target business indicator, and the business indicator value represents the statistical value of the actual sampled values corresponding to the target business indicator and the performance indicator value.
8. The method according to claim 7, characterized in that, The method further includes: Based on the performance sampling data and the service sampling data corresponding to at least two preset service indicators, determine the correlation between the at least two preset service indicators and the indicators corresponding to the target performance indicator; Use the preset business indicator with the highest correlation as the target business indicator.
9. The method according to claim 7, characterized in that, The method further includes: Based on the performance sampling data corresponding to at least two preset performance indicators, determine the multicollinearity corresponding to at least one combination of performance indicators. The performance index combination with multicollinearity greater than the collinearity threshold is used as the target performance index; wherein, the performance index combination includes at least two preset performance indices.
10. A performance optimization device, characterized in that, include: The device configuration set acquisition module is used to acquire the device configuration set of the terminal device to which the application to be optimized belongs; wherein, the device configuration set contains at least one device configuration sequence; The target optimization function construction module is used to construct a target optimization function based on the device optimization functions corresponding to the at least one device configuration sequence; wherein, the independent variable of the device optimization function is the target performance index, and the dependent variable is the change in the target business index; The target performance index value determination module is used to maximize the target optimization function based on the performance index set and the service index set of each device configuration sequence to obtain the target performance index value. The performance optimization execution module is used to optimize the performance of the application to be optimized based on the device configuration set and the target performance index value. The performance metric set includes at least two performance metric values of the target performance metric, and the business metric set includes business metric values corresponding to the target business metric and the at least two performance metric values, respectively.
11. An electronic device, characterized in that, The electronic device includes: At least one processor; and A memory communicatively connected to the at least one processor; wherein, The memory stores a computer program that can be executed by the at least one processor, the computer program being executed by the at least one processor to enable the at least one processor to perform the performance optimization method according to any one of claims 1-9.
12. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer instructions that cause a processor to execute the performance optimization method according to any one of claims 1-9.
13. A computer program product comprising a computer program that, when executed by a processor, implements the performance optimization method according to any one of claims 1-9.