Operation performance optimization method and apparatus, device, medium, and program product
By evaluating and reducing configurable parameters, and combining them with application and business types, Monte Carlo tree search and transfer learning are used to optimize parameter tuning models, solving the problem of low performance tuning efficiency in general computing scenarios and achieving efficient and accurate performance optimization.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2025-04-10
- Publication Date
- 2026-04-02
AI Technical Summary
In general computing scenarios such as database applications, big data applications, or network applications, optimizing performance by manually adjusting the values of configurable parameters is inefficient, especially since the number of parameters is huge and it is difficult to quickly and accurately adjust them to the estimated maximum performance value.
By determining the evaluation values of multiple configurable parameters, the target parameter set is determined after dimensionality reduction. Parameter values are then estimated based on application and business type. The parameter adjustment model is optimized by combining Monte Carlo tree search algorithm and transfer learning. A closed-loop tuning mechanism is adopted to continuously update the model to improve the accuracy and efficiency of the adjustment.
While ensuring operational performance, it significantly improved the efficiency and accuracy of parameter tuning, reduced the computational load, and ensured the performance optimization effect of application execution.
Smart Images

Figure CN2025088331_02042026_PF_FP_ABST
Abstract
Description
Method, device, equipment, medium and program product for optimizing running performance
[0001] The present application claims priority from the Chinese patent application No. 202411381482.X filed on September 29, 2024, and entitled "Method, device, equipment, medium and program product for optimizing running performance", the whole content of which is incorporated herein by reference. TECHNICAL FIELD
[0002] The present application relates to the technical field of computer, and in particular to a method, device, equipment, medium and program product for optimizing running performance. BACKGROUND
[0003] Currently, for database applications, big data applications or network applications in general computing scenarios, the applications can execute respective business such as adding, deleting, modifying and inquiring. There are multiple configurable parameters in the applications, and the running performance of the applications or the business executed in the applications can be adjusted by adjusting the configurable parameters in combination with the hardware resource status of the running scenario.
[0004] In the related art, the assignment of the configurable parameters in the applications can be adjusted by manual experience to adjust the running performance of the applications, so that the running performance of the applications is improved. Since the number of configurable parameters to be optimized in the applications is huge, the running performance cannot be quickly and accurately adjusted to the estimated maximum value of the running performance by manual experience, resulting in poor efficiency of running performance adjustment. SUMMARY
[0005] Embodiments of the present application provide a method, device, equipment, medium and program product for optimizing running performance, which improve the efficiency of running performance adjustment.
[0006] In a first aspect, the present application provides a method for optimizing running performance, which comprises: determining respective evaluation values of multiple configurable parameters in an application, the evaluation values being used to represent the influence degree of the assignment of the configurable parameters on the running performance of the business executed by the application; determining a target parameter set from the multiple configurable parameters according to the respective evaluation values of the multiple configurable parameters, the target parameter set containing a number of configurable parameters being less than the total amount of the configurable parameters; and estimating a first assignment of the configurable parameters in the target parameter set according to the application and the type of the business executed by the application.
[0007] It can be understood that the influence degree of the assignment of the plurality of configurable parameters on the running performance of the business executed by the application is embodied in the form of the evaluation value, the plurality of configurable parameters are determined as the target parameter set according to the evaluation value of the plurality of configurable parameters, and then the first assignment of the configurable parameters in the target parameter set is estimated according to the type of the business executed by the application. The plurality of configurable parameters of the application are processed by dimension reduction according to the evaluation value, so that the maximum running performance influence degree of the business executed by the application after the first assignment of the configurable parameters in the target parameter set after the dimension reduction is set is small or has no influence, thereby avoiding the process of estimating the assignment of a large number of configurable parameters which have little or no influence on the running performance of the business executed by the application, reducing the calculation load, ensuring the running performance optimization effect, and improving the efficiency of the running performance optimization.
[0008] In a possible implementation, the first assignment of the configurable parameters in the target parameter set is determined according to the application and the type of the business executed by the application, including: determining a target parameter adjustment model according to the application and the type of the business executed by the application; and estimating the first assignment of the configurable parameters in the target parameter set according to the target parameter adjustment model.
[0009] It can be understood that, since the parameter adjustment models corresponding to different types of businesses executed by different applications are different, using a mismatched parameter adjustment model for assignment estimation may cause inaccurate assignment estimation. The first assignment of the configurable parameters in the target parameter set is determined according to the type of the business executed by the application, which can improve the accuracy of the first assignment estimation of the dimension-reduced configurable parameters, thereby ensuring the running performance optimization effect of the business executed by the application.
[0010] In a possible implementation, the target parameter adjustment model is determined according to the application and the type of the business executed by the application, including: obtaining a parameter adjustment sample model if the model library does not include a parameter adjustment model corresponding to the application and the type of the business executed by the application; and updating the parameter adjustment sample model through transfer learning to obtain a target parameter adjustment model corresponding to the application and the type of the business executed by the application.
[0011] It can be understood that the model library exists in the computing device, and the model library can store the parameter adjustment sample model and the parameter adjustment model corresponding to part of the types of the businesses executed by the applications. If it is determined that the model library does not include a parameter adjustment model corresponding to the type of the business executed by the current application, the parameter adjustment sample model can be obtained, and the parameter adjustment sample model is updated through transfer learning to obtain a target parameter adjustment model corresponding to the type of the business executed by the application, thereby ensuring the accuracy of the first assignment estimation of the dimension-reduced configurable parameters, and ensuring the running performance optimization effect of the business executed by the application.
[0012] In a possible implementation, the method further includes: obtaining a performance evaluation result, the performance evaluation result being used to indicate a deviation degree between an actual running performance and an estimated running performance, the actual running performance being a running performance of the application executing the service after the configurable parameter is adjusted to the first assignment, and the estimated running performance being a running performance of the application executing the service estimated after the configurable parameter is adjusted to the first assignment; and updating the target parameter adjustment model according to the performance evaluation result.
[0013] It can be understood that, by obtaining the deviation degree between the actual running performance of the service under the first assignment and the maximum running performance of the service estimated by the model, and iteratively updating the target parameter adjustment model through a negative feedback mechanism of the closed-loop optimization, the estimation result of the target parameter adjustment model is ensured to be more and more accurate, and thus the optimization effect of the running performance of the application executing the service is improved.
[0014] In a possible implementation, the method further includes: determining the target parameter set from the plurality of configurable parameters according to the evaluation values of the plurality of configurable parameters, including: determining the target parameter set from the plurality of configurable parameters according to the evaluation values of the plurality of configurable parameters by using a Monte Carlo tree search algorithm.
[0015] It can be understood that, by using the Monte Carlo tree search algorithm, the influence of the predicted assignment of the combination of the plurality of configurable parameters on the running performance can be determined according to the evaluation values of the plurality of configurable parameters, so that the configurable parameters reserved after the dimensionality reduction can be accurately determined in combination with the coupling relationship of the plurality of configurable parameters, thereby improving the efficiency of the running performance optimization while ensuring the optimization effect of the running performance.
[0016] In a possible implementation, before determining the first assignment of the configurable parameter in the target parameter set according to the type of the service executed by the application, the method further includes: collecting first feature data of the service executed by the application; and determining the type of the application and the service executed by the application according to fuzzy perception based on the first feature data.
[0017] It can be understood that, by determining the type of the application and the service executed by the application according to the fuzzy perception based on the first feature data generated by the application executing the service, the perception accuracy of determining the type of the service executed by the application is ensured.
[0018] In a possible implementation, the fuzzy perception includes membership degree calculation.
[0019] In a possible implementation, the method further includes: collecting hardware information of the application running environment and software information of the application, the software information including a plurality of configurable parameters, and a value of the configurable parameter being a first value; and determining an actual running performance of the service executed by the application according to the hardware information and the software information, the actual running performance being a running performance of the service executed by the application after the configurable parameter is adjusted to the first value.
[0020] It can be understood that by collecting the hardware information of the current application running environment and the software information of the application, the actual running performance of the service executed by the application can be calculated, thereby ensuring the optimization effect of the subsequent running performance and improving the efficiency of the running performance optimization.
[0021] In a second aspect, an embodiment of the present application provides a running performance optimization apparatus, which is used to execute any one of the running performance optimization methods provided in the first aspect.
[0022] In a possible implementation, the embodiment of the present application can divide the running performance optimization apparatus into functional modules according to the method provided in the first aspect. For example, each functional module can be divided according to each function, or two or more functions can be integrated into one processing module. For example, the running performance optimization apparatus can be divided into an evaluation module, a determination module, and a value assignment module according to functions. The possible technical solutions and beneficial effects of each functional module described above can be referred to the technical solutions provided in the first aspect or the corresponding possible implementation of the first aspect, which will not be described herein.
[0023] In a third aspect, an embodiment of the present application provides a computing device, which includes a processor and a memory, the processor being coupled to the memory; the memory is used to store computer instructions, the computer instructions being loaded and executed by the processor to enable the computing device to implement the running performance optimization method described in the above aspect.
[0024] In a fourth aspect, an embodiment of the present application provides a computer readable storage medium, which stores at least one computer program instruction, the computer program instruction being loaded and executed by a processor to implement the running performance optimization method described in the above aspect.
[0025] In a fifth aspect, an embodiment of the present application provides a computer program product, which includes computer instructions stored in a computer readable storage medium. A processor of a computing device reads the computer instructions from the computer readable storage medium, and the processor executes the computer instructions to enable the computing device cluster to execute the running performance optimization method provided in the various optional implementation of the first aspect.
[0026] The detailed description of the second aspect to the fifth aspect and various implementations thereof in the present application can refer to the detailed description in the first aspect and various implementations thereof; and the beneficial effects of the second aspect to the fifth aspect and various implementations thereof can refer to the beneficial effect analysis in the first aspect and various implementations thereof, which will not be repeated here.
[0027] These aspects or other aspects of the present application will be more apparent in the following description. BRIEF DESCRIPTION OF DRAWINGS
[0028] FIG. 1 is a schematic diagram of a running performance optimization scenario according to an example embodiment;
[0029] FIG. 2 is a schematic diagram of a system architecture according to an example embodiment;
[0030] FIG. 3 is a schematic diagram of a hardware architecture of a computing device according to an example embodiment;
[0031] FIG. 4 is a schematic diagram of a flow of a running performance optimization method according to an example embodiment;
[0032] FIG. 5 is a schematic diagram of a flow architecture of a running performance optimization for application execution service according to an example embodiment;
[0033] FIG. 6 shows a schematic diagram of a structure of a running performance optimization apparatus 500 according to an example embodiment of the present application. DETAILED DESCRIPTION
[0034] In order to make the purpose, technical solutions and advantages of the present application clearer, the embodiments of the present application will be further described in detail below with reference to the drawings.
[0035] In the present document, “multiple” refers to two or more. “And / or” describes the association relationship of the associated objects, which means that there can be three relationships, for example, A and / or B can represent the following three cases: A exists alone, A and B exist together, and B exists alone. The character “ / ” generally represents an “or” relationship between the front and rear associated objects.
[0036] In addition, in the description of the present application, “multiple” refers to two or more, unless otherwise specified. “At least one of the following (one)” or similar expressions refers to any combination of these items, including any combination of single item (one) or multiple items (one). For example, at least one of a, b, or c can represent a, b, c, a-b, a-c, b-c, or a-b-c, where a, b, and c can be single or multiple.
[0037] In addition, in order to clearly describe the technical solutions of the embodiments of the present application, in the embodiments of the present application, the terms "first", "second", and the like are used to distinguish the same or similar items with basically the same functions and effects. Those skilled in the art can understand that the terms "first", "second", and the like do not limit the quantity and execution order, and the terms "first", "second", and the like do not necessarily mean different. Meanwhile, in the embodiments of the present application, the words "exemplary" or "for example" are used to represent an example, illustration or description. Any embodiment or design scheme described as "exemplary" or "for example" in the embodiments of the present application should not be interpreted as more preferred or more advantageous than other embodiments or design schemes. Rather, the words "exemplary" or "for example" are intended to present the relevant concept in a specific manner, for ease of understanding.
[0038] First, the application scenarios of the embodiments of the present application are exemplarily introduced.
[0039] The applications currently running in the computer system and the subordinate business types of the applications are various. As the demand for the running performance of the business is higher and higher, but the actual hardware resources in the computer system are limited, there is a contradiction between the performance demand of the business and the limited resources in the running environment.
[0040] In the related art, one case can be that an initial parameter set is obtained, the initial parameter set includes parameters that need to be tuned, an initial assignment is set for each parameter that needs to be tuned, the assignment of each parameter that needs to be tuned is adjusted in each round, and then the actual running is determined to determine the running performance, and then the next round of adjustment of the parameter assignment is performed. Since the number of parameters that need to be tuned is large, and the range of the assignment is large, the number of iterations of the tuning is huge, the accuracy and the generalization are poor, thereby resulting in poor tuning efficiency.
[0041] In order to solve the problems of large parameter volume that needs to be configured in the running performance optimization process of the business executed by the application, insufficient samples that can be used for acceleration modeling in a limited time, and poor dynamicity, the problem of dynamicity is that when the environment changes, including workload change, hardware configuration change and software version change, the optimal parameter configuration will no longer be applicable, and a new optimization strategy needs to be proposed. After periodically collecting the running performance of the business executed by the application, each configurable parameter can be evaluated, the importance of each configurable parameter can be evaluated, and the number of adjustable configurable parameters can be reduced under the condition that the difference in running performance is small, so as to reduce the parameter volume that needs to be configured.
[0042] Therefore, the embodiment of the present application provides a running performance optimization method. The computing device can determine respective evaluation values of a plurality of configurable parameters in an application, the evaluation values can be used to represent the influence degree of the assignment of the configurable parameters on the running performance of the service executed by the application, and then determine a target parameter set from the plurality of configurable parameters according to the respective evaluation values of the plurality of configurable parameters; and determine a first assignment of the configurable parameters in the target parameter set according to the type of the service executed by the application, so that the application adjusts the target parameters according to the first assignment, and reduces the dimension of the configurable parameters, thereby improving the efficiency of the running performance optimization.
[0043] For example, FIG. 1 is a schematic diagram of a running performance optimization scenario provided by the embodiment of the present application. In the scenario of optimizing the running performance of an application or the running performance of a service, as shown in FIG. 1, there is a computer system 10 and a running performance optimization system 20 in the computer system 10. In terms of hardware, the computer system 10 can include one or more hardware devices, for example, the hardware device can be a computer device, a server or a mobile terminal, and the running performance optimization system 20 in the computer system 10 can be a storage medium equipped with a communication interface, a software program and a computing model, for example, including but not limited to an optical disc, a mobile hard disk, a U disk and the like; or the running performance optimization system 20 can also be a software program supported by the hardware device of the computer system 10.
[0044] Optionally, at least one application in a general computing scenario runs in the hardware device of the computer system 10, that is, the application 1, the application 2 and the like can run in the computer system 10; the application 1 can execute the service 1, the service 2, the service 3 and the like, and the application 2 can execute the service 1, the service 2, the service 3 and the like.
[0045] The application can include a database application (for example, a redis database, a mysql database) in a general computing scenario, and can also be a big data application and a network application. Each application can execute a plurality of services, and the services can be different types of function services such as writing, querying, modifying and deleting. For example, the services executed in the database application can be service operations such as adding, deleting, modifying and querying data or tables in the database.
[0046] Optionally, the hardware device of the computer system 10 running the application requiring the running performance optimization of the service can perform data transmission with the running performance optimization system 20.
[0047] Exemplarily, the running performance optimization system 20 can access the hardware device in which the application running in need of business running performance optimization is located in the computer system 10 through a hardware form such as an optical disc, a mobile hard disk, a U disk, or the like, or the running performance optimization system 20 can be a program plug-in in a software system in which the hardware device in which the application running in need of business running performance optimization is located in the computer system 10 runs, and the running performance optimization system 20 can run through a basic input output system (BIOS) or an operating system.
[0048] In addition, if the application running in need of business running performance optimization runs on a hardware device in another computer system, the hardware device in which the running performance optimization system 20 runs in the computer system 10 supports direct or indirect data transmission with the hardware device in the other computer system.
[0049] That is, if the running performance optimization system 20 supports data interaction with the hardware device in which the application running in need of business running performance optimization is located, the running performance optimization system 20 can optimize the running performance of the business executed by the application.
[0050] The following is an exemplary introduction to the system architecture of the embodiment of the present application.
[0051] Specifically, FIG. 2 is a schematic diagram of a system architecture provided by the embodiment of the present application. As shown in FIG. 2, the application running in need of business running performance optimization can interact with the running performance optimization system 20, and the running performance optimization system 20 can include a data acquisition module, a parameter dimension reduction module, a fuzzy perception module, a transfer learning module, a closed-loop optimization module, and a storage medium. The running performance optimization system 20 can run in the computer system 10 as shown in FIG. 1, access the hardware device in the computer system 10 in the form of hardware or run on the hardware device in the computer system 10 in the form of software, and the specific implementation form of the running performance optimization system 20 is described in the embodiment shown in FIG. 1, which will not be described here.
[0052] The data collection module can collect raw data of hardware information and software information from the to-be-optimized application and business, and obtain evaluation values of configurable parameters, feature data of effective applications, and feature data of effective businesses by extracting the raw data. The fuzzy perception module can be used to receive the feature data of effective applications and the feature data of effective businesses, and determine the type of the application and the type of the business through fuzzy perception of the feature data set. The parameter dimension reduction module can be used to receive the evaluation values, and reduce the dimension of the configurable parameters according to the evaluation values. Specifically, the dimension of the configurable parameters can be reduced through Monte Carlo tree search. The transfer learning module can be used to determine whether there is a parameter adjustment model corresponding to the type of the current application and the business executed by the application in the model library of the parameter adjustment model. If not, a new parameter adjustment model is retrained based on transfer learning. The closed-loop optimization module can be used to determine the performance evaluation result based on the actual running performance fed back by the application and the estimated running performance output by the running performance optimization system 20, and perform closed-loop optimization control according to the performance evaluation result. If the running performance corresponding to the assignment of the configurable parameters newly output by the running performance optimization system 20 is better than the running performance corresponding to the unadjusted assignment, the corresponding parameter adjustment model in the model library is refreshed. The storage medium can be used to store the model for fuzzy perception, the related information of the configurable parameters for optimization, and the parameter adjustment model for optimizing the configurable parameters, and can realize information interaction between the storage medium and the related modules.
[0053] Hereinafter, the hardware architecture of the embodiment of the present application is exemplarily introduced.
[0054] For example, taking the running performance optimization system 20 as an example which accesses the computer system 10 in the form of a computing device, FIG. 3 is a schematic diagram of a hardware architecture of a computing device provided by an embodiment of the present application. As shown in FIG. 3, the computing device 30 at least includes a memory 31, a processor 32, and a bus 33.
[0055] The memory 31 can be used to store the logic code corresponding to the running performance optimization method provided by the embodiment of the present application, or in other words, the memory 31 can store the logic code corresponding to the step executed by the computing device 30 described in the following embodiments. The memory 31 can also include the storage medium as shown in FIG. 2, which is used as a model library to store the parameter adjustment model.
[0056] The processor 32 can be used to run the logic code.
[0057] Optionally, the computing device 30 can be a terminal device or a server, wherein the terminal device can include a computer, a mobile terminal, a tablet computer, a notebook computer, a desktop computer, an all-in-one machine, an augmented reality (AR) device, a virtual reality (VR) device, a mixed reality (MR) device, an extended reality (ER) device, a personal digital assistant (PDA), an ultra-mobile personal computer (UMPC), and the like. The server can include a cluster server, and the like.
[0058] Optionally, the memory 31 can include a random access memory (RAM), a read-only memory (ROM), and the like.
[0059] Optionally, the processor 32 can be a central processing unit (CPU) or other general-purpose processor, an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA), a digital signal processing (DSP), or other programmable logic device, a discrete gate or transistor logic, a discrete hardware component, and the like. The general-purpose processor can be a microprocessor or any conventional processor, and the like.
[0060] Optionally, the bus 33 can be a peripheral component interconnect (PCI) bus or a peripheral component interconnect express (PCIe) bus, and the like. For ease of representation, only one line is used in FIG. 3, but it does not mean that there is only one bus or only one type of bus. The bus 33 can include a path for transmitting information between various components (e.g., the memory 31, the processor 32) of the computing device 30.
[0061] In addition, the computer system 10 shown in FIG. 1 can also be implemented in the structure of the computing device shown in FIG. 3. In one case, if the running performance optimization system 20 is also implemented in the structure of the computing device shown in FIG. 3, the computing device corresponding to the computer system 10 can interact with the computing device corresponding to the running performance optimization system 20, and the processor in the computing device corresponding to the running performance optimization system 20 can invoke and execute the program instructions of the running performance optimization method stored in the memory, so that the computing device corresponding to the running performance optimization system 20 executes the running performance optimization method. In another case, if part of the running performance optimization system 20 is implemented in a storage medium, such as an optical disc, a mobile hard disk, a U disk, etc., another part of the running performance optimization system 20 can be implemented by the processor in the computing device corresponding to the computer system 10, and the processor in the computing device corresponding to the computer system 10 can invoke and execute the program instructions of the running performance optimization method stored in the storage medium, so that the computing device corresponding to the running performance optimization system 20 executes the running performance optimization method.
[0062] It should be noted that the application scenarios and system architectures described in the embodiments of the present application are for more clearly illustrating the technical solutions of the embodiments of the present application, and do not constitute a limitation on the technical solutions provided by the embodiments of the present application. Those skilled in the art can know that the technical solutions provided by the embodiments of the present application are also applicable to similar technical problems as the system architecture evolves and new business scenarios appear.
[0063] FIG. 4 is a flow diagram of a running performance optimization method provided by an embodiment of the present application. The running performance optimization method can be executed by the running performance optimization system 20 shown in FIG. 1 or FIG. 2, or by the computing device 30 shown in FIG. 3. The running performance optimization method includes the following steps:
[0064] S201, determining respective evaluation values of a plurality of configurable parameters in an application.
[0065] In the embodiments of the present application, the running performance optimization system can determine respective evaluation values of the configurable parameters in the currently running application. The evaluation values can be used to represent the influence degree of the assignment of the configurable parameters on the running performance of the business executed by the application.
[0066] In the embodiments of the present application, the running performance optimization system can determine respective evaluation values of the configurable parameters in the currently running application. The evaluation values can be used to represent the influence degree of the assignment of the configurable parameters on the running performance of the business executed by the application.
[0067] Specifically, if the collected running performance corresponding to the configurable parameter a at the assignment a1 is m1, the running performance corresponding to the assignment a2 is m2, and the running performance corresponding to the assignment a3 is m3, the influence degree of the configurable parameter a on the running performance is determined according to the assignment change from a1 to a2 to a3 and the change of the running performance from m1 to m2 to m3, and the evaluation value corresponding to the configurable parameter a is determined according to the influence degree. The greater the evaluation value, the greater the influence degree on the running performance, and the smaller the evaluation value, the smaller the influence degree on the running performance.
[0068] For example, if the collected running performance corresponding to the configurable parameter b at the assignment b1, the running performance corresponding to the configurable parameter b at the assignment b2, and the running performance corresponding to the configurable parameter b at the assignment b3 change within a specified range, that is, the degree of change of the running performance with the assignment of the configurable parameter b is small, it can be determined that the evaluation value of the configurable parameter b is small. That is, the degree of change and the evaluation value can be positively correlated.
[0069] The running performance optimization system can calculate the actual running performance of the application executing the business according to the hardware information of the application running environment and the software information of the application executing the business.
[0070] The running performance optimization system collects the original data of the hardware information and the software information from the application with the to-be-optimized running performance. The hardware information can include the CPU, memory, hard disk, GPU, etc. in the hardware environment where the application runs. For example, the frequency, voltage, and computing power of the CPU. The original data of the software information can include the fixed software information of the application, such as version information, and can also include software information for representing the business execution, such as the load during the execution of the business, and can also include the configurable parameters in the application and the current assignment of the configurable parameters.
[0071] That is, the running performance optimization system can collect the hardware information of the application running environment and the software information of the application. The software information includes a plurality of configurable parameters. According to the hardware information and the software information, the actual running performance of the application executing the business can be determined.
[0072] Since the running performance optimization system needs to obtain the actual running performance of the application executing the business after the configurable parameters in the target parameter set are assigned in each round of the subsequent running performance optimization system, the running performance optimization system compares the actual running performance with the estimated running performance, and updates the algorithm model used for assigning the configurable parameters in the target parameter set in the next round, the running performance optimization system can determine the actual running performance of the application executing the business according to the collected hardware information and software information.
[0073] The hardware information is irrelevant to the running application and is a fixed parameter value of the hardware in the environment of running the application, such as a frequency point, voltage, and provided computing power of a processor. The software information can include fixed software information for the application, such as version information of the application; can also include software information reflecting a business execution condition in the application, such as a load condition of the application when executing a business; and can also include a current assignment of some configurable parameters in the application, such as a read-write operation ratio supported by the application. The running performance of the application executing a business can be a performance index of a processor when the application executes a business, and the performance index of the processor can be a number of instructions executed by the processor per clock cycle.
[0074] For example, if the collected software information includes that the CPU occupancy rate of the application executing a business reaches 80%, and the collected hardware information includes a frequency point, voltage, and provided computing power of the CPU, the computing device multiplies the provided computing power of the CPU by 80% to represent the performance index of the CPU when processing the business, where the performance index can be represented by a number of instructions executed per clock cycle (IPC).
[0075] In a possible implementation, the running performance optimization system can collect first characteristic data of a business executed by the application, perform fuzzy perception according to the first characteristic data, and determine a type of the application and a type of the business executed by the application.
[0076] The first characteristic data is characteristic data generated when the application executes a business, and characteristic data generated by different applications executing different types of businesses is different. The fuzzy perception includes multiple manners, such as membership degree calculation, cluster analysis, neural network algorithm, similarity calculation, and the like.
[0077] For a case where the used fuzzy perception manner is a membership degree calculation manner, the computing device can take the business executed by the tunable application as a fuzzy set, adopt a triangular, bell-shaped, or Gaussian membership function, and calculate a membership degree of the business executed by the tunable application. The business type with the highest membership degree is taken as the type of the business executed by the application perceived.
[0078] In addition, the running performance optimization system can also collect second characteristic data of the application, first perform fuzzy perception according to the second characteristic data to determine a type of the application, and then perform fuzzy perception according to the type of the application and the second characteristic data to determine a type of a business executed by the application.
[0079] That is, the running performance optimization system can first perform fuzzy perception according to the second characteristic data to determine a type of the application, and then perform fuzzy perception according to the first characteristic data to determine a type of a business.
[0080] Specifically, the fuzzy perception can include two levels of application perception and service perception, wherein the application perception cycle is a first cycle, and the service perception cycle can be a second cycle, that is, can be synchronized with the collection cycle of their respective feature data sets.
[0081] In a possible implementation, the fuzzy perception module in the running performance optimization system can perform fuzzy perception (such as cluster analysis, membership calculation, etc.) according to the received preprocessed application feature data and service feature data, and calculate the application type and the service type.
[0082] In a possible implementation, the running performance optimization system can collect feature data in the application running process according to a first cycle, and can also collect feature data of services executed in the application according to a second cycle. Since the feature data generated after the application running changes less, and the feature data generated by the services executed in the application changes more frequently, in order to collect more comprehensive feature data, it is necessary to set the first cycle to be greater than the second cycle, that is, to satisfy that the collection of service feature data is more frequent than the collection of application feature data.
[0083] The first cycle can be k times of the second cycle, and k is a positive integer greater than 1.
[0084] For example, after the application is started, various services such as read / write services will frequently appear. The feature data of the application can include the current process name, and the feature data of the service can include read features or write features. The feature data of the application is collected with a time length A as a cycle, and the feature data of the service is collected with a time length L as a cycle (A>L, A=kL, k=2, 3, 4…).
[0085] In a possible implementation, the running performance optimization system can preprocess the acquired feature data of the application and the feature data of the service to obtain effective feature data of the application and effective feature data of the service.
[0086] That is, the types of the feature data of the application and the feature data of the service acquired for different types of applications or services are the same, and since the types of the feature data related to the running performance of different types of applications or services are different, preprocessing is needed to obtain the effective feature data set of the application and the effective feature data set of the service.
[0087] For example, before the service 1 executed in the application 1 is started, the value of the feature data p of the application collected before the service 1 is started and the value of the feature data p of the application collected after the service 1 is started have no change, and the feature data p of the application can be determined as invalid feature data of the application, and vice versa.
[0088] S202, determining a target parameter set from the plurality of configurable parameters according to the evaluation value of each of the plurality of configurable parameters.
[0089] In the embodiments of the present application, the running performance optimization system can perform dimension reduction on the configurable parameters of the application according to the evaluation value of each of the plurality of configurable parameters, determine part of the configurable parameters as the target parameter set from the plurality of configurable parameters, and the number of configurable parameters in the target parameter set is less than the total number of configurable parameters, so as to achieve the purpose of dimension reduction of the configurable parameters.
[0090] In a possible implementation, the running performance optimization system can reduce the dimension of the configurable parameters that need to be adjusted for tuning the running performance according to the received evaluation value of the configurable parameters by using the Monte Carlo tree search algorithm.
[0091] That is, by using the Monte Carlo tree search algorithm, the running performance optimization system can determine the target parameter set from the plurality of configurable parameters according to the evaluation value of each of the plurality of configurable parameters.
[0092] For example, the running performance optimization system performs statistical experiments on the configurable parameters by using the Monte Carlo tree search algorithm according to the received evaluation value of the configurable parameters, and performs assignment experiments on the combinations of the plurality of configurable parameters in each configurable parameter, so as to reduce the number of configurable parameters in the selected configurable parameter combination (target parameter set) as much as possible under the premise of little influence on the running performance index.
[0093] The way in which the Monte Carlo tree search algorithm is applied in the dimension reduction process of the configurable parameters is as follows: the configurable parameters are taken as the nodes of the Monte Carlo tree, the evaluation value of each configurable parameter is taken as the initial value size (v) of each node, the optimal child node is recursively selected, and finally a leaf node is reached. The pros and cons of the node can be judged by using the upper confidence bound (UCB) algorithm, and the calculation formula of the UCB is as follows.
[0094] wherein S i is the current node, is the average value size of the current node, c is a constant and can be set to 2, N is the total number of explorations, and n i is the number of explorations of the current node.
[0095] The UCB value of all nodes can be calculated by the above UCB formula, and the child node with the maximum UCB value is selected for iteration. If the current leaf node is not a terminal node, one or more child nodes can be created, one of which is selected for expansion, the output of the simulation is run from the expanded node, and then the simulation result is used for back propagation to update the current node sequence.
[0096] That is, the Monte Carlo tree search algorithm is applied to the dimensionality reduction process of configurable parameters, the simulation results of each branch are calculated according to the above steps (the case where the running performance is lower than the specified threshold indicates that the simulation result is a failure, and the case where the running performance is higher than the specified threshold indicates that the simulation result is a success), and finally the branch with the smallest number of configurable parameters is selected as the target parameter set, so as to ensure that the number of adjustable parameters selected is as small as possible under the premise of little influence on the running performance index.
[0097] In S203, the first assignment of the configurable parameters in the target parameter set is determined according to the application and the type of the service executed by the application.
[0098] In the embodiments of the present application, the running performance optimization system can determine the first assignment of the configurable parameters in the target parameter set according to the application and the type of the service executed by the application, and the first assignment is the assignment of the configurable parameters in the target parameter set when the estimated running performance is the maximum. Thus, the service executed by the application is optimized in running performance.
[0099] In a possible implementation, the running performance optimization system determines the target parameter adjustment model according to the application and the type of the service executed by the application, and estimates the first assignment of the configurable parameters in the target parameter set according to the target parameter adjustment model.
[0100] Since the target parameter adjustment model is a model for optimizing the configurable parameters in the target parameter set with the target of adjusting the running performance of the service executed by the application to be higher than the current running performance of the service executed by the application, in an ideal state, the first assignment of the configurable parameters in the target parameter set when the running performance is the maximum can be estimated by the target parameter adjustment model.
[0101] The target parameter adjustment model can be an algorithm model for obtaining the assignment of the configurable parameters in the target parameter set when the running performance of the service is optimized, or even the maximum. The model can be a mathematical model or a neural network model. The parameter adjustment model for each type of service executed by each application can be different, so the corresponding target parameter adjustment model needs to be determined according to the type of the service executed by the application, and the first assignment of the configurable parameters in the target parameter set when the running performance of the service executed by the application is optimized, or even the maximum, can be estimated according to the target parameter adjustment model.
[0102] The parameter adjustment model can be pre-stored in a model library, which can be in a storage medium in the running performance optimization system.
[0103] In a possible implementation, if the parameter adjustment model corresponding to the type of the service executed by the application is not included in the model library, a parameter adjustment sample model is obtained, the parameter adjustment sample model is updated through transfer learning to obtain the target parameter adjustment model corresponding to the type of the service executed by the application.
[0104] Since the types of applications and the types of services executed in the applications are various, it is impossible to store the parameter adjustment model corresponding to each type of service executed by each type of application in the model library. Therefore, if the target parameter adjustment model corresponding to the type of the service executed by the application is not found in the model library, the computing device needs to perform transfer learning according to the parameter adjustment model existing in the current model library, so as to update the existing parameter adjustment model to the target parameter adjustment model.
[0105] That is, after determining the type of the service executed by the application, the computing device can determine whether the parameter adjustment model corresponding to the current application or the type of the service exists in the model library, and if not, retrain the parameter adjustment model based on transfer learning.
[0106] Specifically, the computing device can select the corresponding parameter adjustment model from the model library according to the type of the application and the type of the service. If the parameter adjustment model corresponding to the type exists in the model library, the parameter adjustment model of the type is retrained according to the dimension-reduced configurable parameter sample, the estimated running performance index, and the hardware information and software information, and the first assignment of the dimension-reduced adjustable parameter when the running performance of the service is optimal is output by calling the retrained parameter adjustment model. If the parameter adjustment model corresponding to the type does not exist, the parameter adjustment model of the type can be constructed by using the parameter adjustment model sample and the dimension-reduced adjustable parameter sample, the estimated running performance index, and the hardware information and software information, and the first assignment of the dimension-reduced adjustable parameter when the running performance of the service is optimal is output by calling the newly constructed parameter adjustment model of the type. Or if the parameter adjustment model corresponding to the type does not exist, the existing parameter adjustment model can be updated through transfer learning by using the existing parameter adjustment model and the dimension-reduced adjustable parameter sample, the estimated running performance index, and the hardware information and software information, to obtain the parameter adjustment model of the type, and the first assignment of the dimension-reduced adjustable parameter when the running performance of the service is optimal is output by calling the parameter adjustment model of the type updated through transfer learning.
[0107] For example, in different specifications of virtual machines, such as a 4-core 8G virtual machine, a parameter adjustment model for tuning parameters is trained, and an 8-core 16G virtual machine is not applicable to the parameter adjustment model for tuning configurable parameters trained in the 4-core 8G virtual machine. Migration learning or incremental learning is needed to update the existing parameter adjustment model to adapt to the scenario of the 8-core 16G virtual machine.
[0108] In a possible implementation, the running performance optimization system can obtain a performance evaluation result, which can be used to indicate the deviation degree of the actual running performance and the estimated running performance. The computing device updates the target parameter adjustment model through the performance evaluation result.
[0109] The actual running performance is the running performance of the application executing the business after the configurable parameter is adjusted to the first assignment, and the estimated running performance is the estimated running performance of the application executing the business after the configurable parameter is adjusted to the first assignment. Specifically, the estimated running performance is the running performance optimized by the target parameter adjustment model, or even the maximum running performance.
[0110] That is, the running performance optimization system can perform closed-loop tuning control based on the feedback performance evaluation result. If the running performance corresponding to the newly assigned configurable parameter is better than the running performance before the assignment, the corresponding parameter adjustment model in the model library is updated.
[0111] If the application continuously executes the business, the running performance optimization system can continuously optimize the running performance of the application executing the business. The first assignment of the configurable parameters in the target parameter set output by the parameter adjustment model of the running performance optimization system is set in the application each time, and the application will feed back the actual running performance of the application executing the business to the computing device after setting the configurable parameters according to the first assignment. If the actual running performance is improved compared with the running performance before reassignment, the target parameter adjustment model in the model library can be updated or stored in the model library. If the actual running performance is not improved or even decreased compared with the running performance before reassignment, the target parameter adjustment model outputting the first assignment can be deleted. The running performance optimization system re-performs a new round of first assignment calculation according to the above steps. In the case that the actual running performance is improved compared with the running performance before reassignment and the actual running performance does not reach the estimated maximum running performance, the computing device determines the deviation degree of the actual running performance and the estimated running performance, updates the target parameter adjustment model according to the deviation degree, stores the updated target parameter model in the model library, and waits for the next round of first assignment calculation and model update. Through the iterative update of the target parameter adjustment model, the running performance of the application executing the business can be closer and closer to the estimated optimized or even maximum running performance, that is, the first assignment of the configurable parameters in the target parameter set can be adjusted multiple times to continuously optimize the running performance of the application executing the business.
[0112] For example, FIG. 5 is a flow architecture diagram of the application execution business running performance optimization related to an embodiment of the application. As shown in FIG. 5, if the computer system runs the application A, the application A can execute the business 1 and the business 2. Taking adjusting the business performance of the application A executing the business 1 as an example.
[0113] First, the hardware information, the software information when the application A executes the business 1, the application characteristic data (second characteristic data) and the business characteristic data (first characteristic data) generated by the application executing the business process are acquired by running the data acquisition module in the performance optimization system 30 (S31), the hardware information here is irrelevant to the running application, it is the fixed parameter value of the hardware on the computing device running the application, the software information here can include the fixed software information of the application A, such as version information; It can also include software information reflecting the business execution situation, such as the load situation when executing the business 1; It can also include the current value of some configurable parameters in the application A, such as the read-write operation ratio supported by the application A, the data acquisition module extracts the running performance indicators of the business 1 from the acquired information, calculates the evaluation value of the configurable parameters, and pre-processes the characteristic data (S32), such as the software information acquired can include that the CPU occupancy rate of the business 1 reaches 80%, the hardware information can include the frequency, voltage and computing power provided by the CPU, so multiplying 80% represents the performance indicator of the CPU when processing the business 1. Among them, the pre-processing is to eliminate the useless features, and only the features required by the current application are taken as effective features.
[0114] Then, the data acquisition module transmits the evaluation value to the parameter dimension reduction module, the parameter dimension reduction module searches and simulates according to the received evaluation value of the configurable parameters by using the Monte Carlo tree search algorithm, ensures that the number of selected adjustable parameters is reduced as much as possible on the premise of little influence on the running performance indicators, and realizes the dimension reduction of the configurable parameters that need to be optimized (S33). At the same time, the data acquisition module can also send the effective feature data set to the fuzzy perception module, the fuzzy perception module clusters according to the received pre-processed application characteristic data and business characteristic data, and calculates the application type and business type (S34). Specifically, membership calculation can be used.
[0115] Then, the fuzzy perception module determines whether the parameter adjustment model corresponding to the service 1 executed by the application A is stored in the storage medium. If the corresponding parameter adjustment model exists, the corresponding parameter adjustment model is acquired from the model library of the storage medium. If the corresponding parameter adjustment model does not exist, the parameter adjustment sample model is acquired from the model library of the storage medium, and the parameter adjustment sample model is sent to the transfer learning module. The transfer learning module can perform transfer learning on the parameter adjustment sample model according to the reduced configurable parameters, the estimated running performance indicators, and the hardware information and software information, to obtain the target parameter adjustment model corresponding to the type (S35). The first assignment of the configurable parameters in the target parameter set when the running performance of the service 1 is optimal is output to the computer system 10 through the target parameter adjustment model. The application A configures the corresponding configurable parameters according to the first assignment. Then, the application A executes the service 1, and the running performance of the service 1 after the first assignment is fed back to the running performance optimization system. The closed-loop optimization module performs closed-loop optimization control according to the running performance of the service 1 after the first assignment. If the running performance corresponding to the configurable parameters after the new assignment is better than the running performance corresponding to the configurable parameters after the old assignment, the corresponding target parameter adjustment model in the model library of the storage medium is refreshed (S36).
[0116] In summary, the influence degree of the assignment of the plurality of configurable parameters on the running performance of the service executed by the application is visualized in the form of evaluation values. The partial configurable parameters are determined as the target parameter set from the plurality of configurable parameters according to the evaluation values of the plurality of configurable parameters. Then, the first assignment of the configurable parameters in the target parameter set is estimated according to the type of the service executed by the application. The plurality of configurable parameters of the application are reduced by the evaluation values, so that the maximum running performance influence degree of the service executed by the application after the first assignment of the configurable parameters in the target parameter set after the reduction is set is small or has no influence. Therefore, the process of estimating the assignment of the configurable parameters with small or no influence on the running performance of the service executed by the application is avoided, the computational load is reduced, the running performance optimization effect is ensured, and the efficiency of the running performance optimization is improved.
[0117] The above mainly introduces the scheme of the embodiments of the present application from the perspective of the method. It can be understood that, in order to realize the above functions, the running performance optimization device comprises at least one of the corresponding hardware structure and the software module for executing each function. Those skilled in the art should easily realize that, in combination with the units and algorithm steps of the examples described in the embodiments disclosed in the present application, the present application can be realized in the form of hardware or the combination of hardware and computer software. Whether a certain function is realized by hardware or computer software driven hardware depends on the specific application and design constraints of the technical scheme. The professional technicians can use different methods to realize the described functions for each specific application, but such implementation should not be considered beyond the scope of the present application.
[0118] The embodiment of the present application can divide the functional units of the running performance optimization apparatus according to the above method examples. For example, each functional unit can be divided according to each function, or two or more functions can be integrated in one processing unit. The integrated unit can be realized in the form of hardware or in the form of a software functional unit. It should be noted that the division of the units in the embodiment of the present application is illustrative, and is only a logical function division. In actual implementation, another division manner can be used.
[0119] For example, FIG. 6 shows a structural schematic diagram of a running performance optimization apparatus 500 provided by an example embodiment of the present application. The running performance optimization apparatus 500 is applied to a computing device, or the running performance optimization apparatus 500 can be a computing device. The running performance optimization apparatus 500 includes:
[0120] An evaluation module 510 is configured to determine respective evaluation values of a plurality of configurable parameters in an application, wherein the evaluation values are used to represent the influence degree of the assignment of the configurable parameters on the running performance of a service executed by the application.
[0121] A determination module 520 is configured to determine a target parameter set from the plurality of configurable parameters according to the respective evaluation values of the plurality of configurable parameters, wherein the target parameter set contains a number of configurable parameters less than the total number of configurable parameters.
[0122] An assignment module 530 is configured to estimate a first assignment of the configurable parameters in the target parameter set according to the application and the type of the service executed by the application.
[0123] For example, in combination with FIG. 4, the evaluation module 510 can be configured to perform S201 shown in FIG. 4, the determination module 520 can be configured to perform S202 shown in FIG. 4, and the assignment module 530 can be configured to perform S203 shown in FIG. 4.
[0124] In a possible implementation, the assignment module 530 is further configured to determine a target parameter adjustment model according to the application and the type of the service executed by the application, and estimate the first assignment of the configurable parameters in the target parameter set according to the target parameter adjustment model.
[0125] In a possible implementation, the assignment module 530 is further configured to obtain a parameter adjustment sample model if the parameter adjustment model corresponding to the application and the type of the service executed by the application is not included in the model library, and update the parameter adjustment sample model through transfer learning to obtain the target parameter adjustment model corresponding to the application and the type of the service executed by the application.
[0126] In a possible implementation, the apparatus further includes:
[0127] a model updating module configured to acquire a performance evaluation result, the performance evaluation result being used to indicate a deviation degree between an actual running performance and an estimated running performance, the actual running performance being a running performance of the application in executing a service after the application adjusts the configurable parameters to the first assignment, and the estimated running performance being an estimated running performance of the application in executing the service after the application adjusts the configurable parameters to the first assignment; and update the target parameter adjustment model according to the performance evaluation result.
[0128] In a possible implementation, the determining module 520 is further configured to determine the target parameter set from the plurality of configurable parameters according to the evaluation values of the plurality of configurable parameters respectively by using a Monte Carlo tree search algorithm.
[0129] In a possible implementation, the apparatus further includes:
[0130] a type awareness module configured to collect first feature data of the service executed by the application before the first assignment of the configurable parameter in the target parameter set is estimated according to a type of the service executed by the application, and determine the application and the type of the service executed by the application according to fuzzy awareness of the first feature data.
[0131] In a possible implementation, the apparatus further includes:
[0132] a performance acquiring module configured to collect hardware information of an application running environment and software information of the application, the software information including the plurality of configurable parameters, and the assignment of the configurable parameter being the first assignment, and determine the actual running performance of the service executed by the application according to the hardware information and the software information.
[0133] For example, in combination with FIG. 1 and FIG. 2, the functions of part or all of the evaluation module 510, the determining module 520, and the assignment module 530 in the running performance optimization apparatus can be implemented by the running performance optimization system 20 in FIG. 1 and FIG. 2 or can be implemented by the computing device 30 in FIG. 3.
[0134] Specifically, the evaluation module 510 in the running performance optimization apparatus can be implemented by the data collection module in FIG. 2, the determining module 520 can be implemented by the parameter dimension reduction module in FIG. 2, and the assignment module 530 can be implemented by the fuzzy awareness module, the transfer learning module, the closed-loop tuning module, and the corresponding target parameter adjustment model in the storage medium in FIG. 2.
[0135] In summary, the influence degree of the assignment of the plurality of configurable parameters on the running performance of the service executed by the application is embodied in the form of the evaluation value, the partial configurable parameters are determined as the target parameter set from the plurality of configurable parameters according to the evaluation value of the plurality of configurable parameters, and then the target assignment of the configurable parameters in the target parameter set is estimated according to the type of the service executed by the application when the running performance is maximum. The plurality of configurable parameters of the application are processed by the evaluation value, so that the target assignment of the configurable parameters in the target parameter set after the dimension reduction processing is set, and the maximum influence degree of the running performance of the service executed by the application is small or has no influence, thereby avoiding the process of estimating the assignment of the configurable parameters which have little or no influence on the running performance of the service executed by the application, reducing the calculation load, ensuring the optimization effect of the running performance, and improving the efficiency of the running performance optimization.
[0136] The specific description of the optional mode can be referred to the foregoing method embodiments, and will not be described here. In addition, the explanation and beneficial effect of any one of the foregoing running performance optimization apparatuses can be referred to the corresponding method embodiments, and will not be described here.
[0137] The embodiment of the present application further provides a computer program product containing instructions. The computer program product can be software or a program product containing instructions, which can run on a computing device or be stored in any available medium. When the computer program product runs on at least one computing device, the at least one computing device executes the running performance optimization method.
[0138] The embodiment of the present application further provides a computer readable storage medium. The computer readable storage medium can be any available medium that can be stored by a computing device or a data storage device such as a data center containing one or more available media. The available medium can be a magnetic medium (for example, a floppy disk, a hard disk, a magnetic tape), an optical medium (for example, a DVD), or a semiconductor medium (for example, a solid state disk) and the like. The computer readable storage medium includes instructions for instructing the computing device to execute the digital resource management method, or for instructing the computing device to execute the running performance optimization method.
[0139] Finally, it should be noted that: the above embodiments are only used to illustrate the technical solutions of the present application, and not to limit them; although the present application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that: it can still modify the technical solutions recorded in the foregoing embodiments, or make equivalent replacement for part of the technical features; and these modifications or replacements do not make the essence of the corresponding technical solutions deviate from the protection scope of the technical solutions of the embodiments of the present application.
Claims
1. A method for operational performance optimization, characterized by, The method comprises: determining respective evaluation values of a plurality of configurable parameters in an application, the evaluation values being used to represent the influence degree of the assignment of the configurable parameters on the running performance of the service executed by the application; determining a target parameter set from the plurality of configurable parameters according to the respective evaluation values of the plurality of configurable parameters, the target parameter set containing a number of configurable parameters less than the total number of configurable parameters; estimating a first assignment of the configurable parameters in the target parameter set according to the application and the type of the service executed by the application.
2. The method of claim 1, wherein, The determination of the first assignment of the configurable parameters in the target parameter set according to the application and the type of the service executed by the application comprises: determining a target parameter adjustment model according to the application and the type of the service executed by the application; estimating the first assignment of the configurable parameters in the target parameter set according to the target parameter adjustment model.
3. The method of claim 2, wherein, The determination of the target parameter adjustment model according to the application and the type of the service executed by the application comprises: if the parameter adjustment model corresponding to the application and the type of the service executed by the application is not included in a model library, obtaining a parameter adjustment sample model; updating the parameter adjustment sample model through transfer learning to obtain the target parameter adjustment model corresponding to the application and the type of the service executed by the application.
4. The method according to any one of claims 1 to 3, characterized in that, The method further comprises: obtaining a performance evaluation result, the performance evaluation result being used to indicate the deviation degree between an actual running performance and an estimated running performance, the actual running performance being the running performance of the service executed by the application after the configurable parameters are adjusted to the first assignment, and the estimated running performance being the running performance of the service executed by the application estimated after the configurable parameters are adjusted to the first assignment; updating the target parameter adjustment model through the performance evaluation result.
5. The method according to any one of claims 1 to 4, characterized in that, The determination of the target parameter set from the plurality of configurable parameters according to the respective evaluation values of the plurality of configurable parameters comprises: determining the target parameter set from the plurality of configurable parameters according to the respective evaluation values of the plurality of configurable parameters through a Monte Carlo tree search algorithm.
6. The method according to any one of claims 1 to 5, characterized in that, Before the estimation of the first assignment of the configurable parameters in the target parameter set according to the type of the service executed by the application, the method further comprises: collecting first feature data of the service executed by the application; determining the application and the type of the service executed by the application through fuzzy perception according to the first feature data.
7. The method according to any one of claims 1 to 6, characterized in that, The method further comprises: collecting hardware information of the application running environment and software information of the application, the software information including the plurality of configurable parameters, and the assignment of the configurable parameters being the first assignment; determining an actual running performance of the service executed by the application according to the hardware information and the software information, the actual running performance being the running performance of the service executed by the application after the configurable parameters are adjusted to the first assignment.
8. An operation performance optimization apparatus characterized by comprising: The device comprises: An evaluation module is configured to determine evaluation values of a plurality of configurable parameters in an application, the evaluation values being used to represent an influence degree of assignment values of the configurable parameters on a running performance of a service executed by the application; A determination module is configured to determine a target parameter set from the plurality of configurable parameters according to the evaluation values of the plurality of configurable parameters, the target parameter set containing a number of configurable parameters being less than a total number of configurable parameters; An assignment module is configured to estimate a first assignment of a configurable parameter in the target parameter set according to the application and a type of the service executed by the application.
9. The apparatus of claim 8, wherein, The assignment module is further configured to determine a target parameter adjustment model according to the application and the type of the service executed by the application, and estimate the first assignment of the configurable parameter in the target parameter set according to the target parameter adjustment model.
10. The apparatus of claim 9, wherein, The assignment module is further configured to obtain a parameter adjustment sample model if the application and the type of the service executed by the application do not correspond to a parameter adjustment model in a model library, and update the parameter adjustment sample model through transfer learning to obtain the target parameter adjustment model corresponding to the application and the type of the service executed by the application.
11. The apparatus of any one of claims 8 to 10, wherein, The apparatus further comprises: A model updating module is configured to obtain a performance evaluation result, the performance evaluation result being used to indicate a deviation degree between an actual running performance and an estimated running performance, the actual running performance being a running performance of the service executed by the application after the configurable parameters are adjusted to the first assignment, and the estimated running performance being an estimated running performance of the service executed by the application after the configurable parameters are adjusted to the first assignment, and update the target parameter adjustment model according to the performance evaluation result.
12. The apparatus of any one of claims 8 to 11, wherein, The determination module is further configured to determine the target parameter set from the plurality of configurable parameters according to the evaluation values of the plurality of configurable parameters through a Monte Carlo tree search algorithm.
13. The apparatus of any one of claims 8 to 12, wherein, The apparatus further comprises: A type perception module is configured to collect first feature data of the service executed by the application before estimating the first assignment of the configurable parameter in the target parameter set according to the type of the service executed by the application, and determine the application and the type of the service executed by the application according to fuzzy perception based on the first feature data.
14. The apparatus of any one of claims 8 to 13, wherein, The apparatus further comprises: A performance obtaining module is configured to collect hardware information of an application running environment and software information of the application, the software information including the plurality of configurable parameters, and assignment values of the configurable parameters being the first assignment, and determine an actual running performance of the service executed by the application according to the hardware information and the software information, the actual running performance being a running performance of the service executed by the application after the configurable parameters are adjusted to the first assignment.
15. A computing device, comprising: The computing device includes a processor and a memory, and the processor of the computing device is configured to execute instructions stored in the memory of the computing device, so that the computing device performs the running performance optimization method according to any one of claims 1 to 7.
16. A computer-readable storage medium, characterized in that, comprising computer program instructions which, when executed by a cluster of computing devices, cause the cluster of computing devices to perform the run-time performance optimization method of any of claims 1-7.
17. A computer program product, characterised in that, The computer program product comprises instructions which, when executed by a cluster of computing devices, cause the cluster of computing devices to perform the run-time performance optimization method of any of claims 1-7.
Citation Information
Patent Citations
Database parameter adjustment method and device and computer readable storage medium
CN113064879A
Database parameter configuration optimization method and device, electronic equipment and storage medium
CN116401232A
Software system configuration tuning method and device based on transfer learning
CN116679981A
Parameter optimization method and device, equipment and storage medium
CN117371496A
Index calculation optimization system based on AI
CN117687891A