Method and system for optimizing graphics rendering performance for high-dimensional configuration space

By combining an improved evolutionary algorithm with a performance prediction model, the problem of optimizing mobile terminal graphics rendering systems in high-dimensional parameter spaces has been solved, achieving Pareto optimality in both high performance and rendering quality, and improving the operational stability and user experience of mobile terminals.

CN121960217BActive Publication Date: 2026-07-03HANGZHOU DIANZI UNIV +1
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202610407029.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2026-03-31
Publication Date
2026-07-03
Estimated Expiration
2046-03-31

AI Technical Summary

Technical Problem

Existing mobile terminal graphics rendering systems struggle to efficiently find the optimal balance between performance and rendering quality in high-dimensional parameter spaces. Traditional optimization methods are time-consuming and labor-intensive, and it is difficult to achieve a globally optimal solution, especially when multiple objectives conflict, making it difficult to balance performance metrics.

Method used

By employing an improved evolutionary algorithm combined with a performance prediction model, and through multi-objective optimization problem modeling and a penalty function mechanism, the graphics rendering parameters are optimized to achieve a Pareto optimal solution.

Benefits of technology

It improves the operating efficiency and adaptability of the graphics rendering system, significantly enhances the performance and user experience of mobile terminals, optimizes efficiency and accuracy, and is compatible with various hardware configurations and application scenarios.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121960217B_ABST
    Figure CN121960217B_ABST
Patent Text Reader

Abstract

This invention discloses a method and system for optimizing graphics rendering performance in high-dimensional configuration spaces, belonging to the field of graphics rendering technology. The method first models the optimization of the rendering system's configuration parameters as a multi-objective optimization problem, generating an initial population. Then, it uses a performance prediction model to evaluate the performance index value of each individual, and combines this with a penalty function to construct an objective function vector. During the evolutionary process, a tournament selection strategy based on crowding distance and ranking is adopted, generating offspring through crossover and mutation. Subsequently, by updating ideal points, calculating convergence and distribution indices, and combining corner point solutions to select individuals, the next generation population is constructed. This process iterates until termination, ultimately obtaining a non-dominated solution set as the recommended configuration scheme for graphics rendering performance optimization. This invention is adaptable to various rendering engines and application scenarios, and can significantly improve the operational stability and user experience of mobile terminal graphics rendering systems.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the field of computer software engineering and mobile graphics computing technology, and specifically relates to a method and apparatus for optimizing graphics rendering performance in high-dimensional configuration spaces, which is particularly suitable for configuration optimization scenarios of graphics rendering systems based on the Android operating system on mobile terminals (such as smartphones and tablets). Background Technology

[0002] With the iterative upgrades of mobile computing hardware, mobile graphics rendering systems based on the Android operating system (covering various large-scale 3D game engines such as Unreal Engine and Unity, as well as AR / VR interactive applications) have the ability to process high-fidelity images. However, such systems face extremely high configuration complexity, involving a parameter space that is not only highly dimensional but also strongly coupled—from the underlying hardware resource scheduling (such as CPU / GPU frequency locking and memory bandwidth allocation), to the intermediate rendering pipeline configuration (such as resolution scaling, lighting and shadow rendering levels, and anti-aliasing algorithm selection), and then to the upper-level scene content complexity (such as texture precision and geometric level of detail (LOD)), changes in parameters in each dimension will have a non-linear effect on the final rendering performance.

[0003] In the pursuit of the ultimate user experience, the core challenge lies in finding the optimal balance between graphics quality and performance within the limited computing power and power consumption constraints of mobile devices. This requires fine-grained control over key performance indicators such as DrawCall throughput, GPU shader load, memory bandwidth usage, and CPU logical frame latency. Traditional optimization methods often rely on manual experience or simple exhaustive testing. However, when faced with a vast search space composed of numerous parameter combinations, this approach is not only time-consuming and labor-intensive but also struggles to find the globally optimal solution amidst the conflicting goals of "high image quality," "high frame rate," and "low power consumption."

[0004] While existing technologies utilize evolutionary algorithms to assist parameter search, conventional algorithms often exhibit drawbacks when dealing with the specific non-convex optimization problem of mobile graphics rendering. These drawbacks include slow convergence, susceptibility to local optima, and loss of population diversity. Particularly when faced with strict real-time constraints (such as maintaining a stable 60 FPS), existing methods struggle to effectively handle complex boundary conditions and lack adaptive adjustment mechanisms for the characteristics of the Android graphics stack. Consequently, the resulting configurations often only achieve suboptimal solutions, failing to fully unleash the hardware's potential. Therefore, there is an urgent need for a graphics rendering performance optimization scheme that can efficiently traverse high-dimensional parameter spaces, accommodate multiple performance constraints, and possess rapid convergence capabilities. Summary of the Invention

[0005] This invention aims to address the shortcomings of existing performance tuning methods for mobile terminal graphics rendering systems. Specifically, these shortcomings include: a vast combination space of multiple configuration items, making it difficult to efficiently discover the optimal configuration through manual or simple tuning methods; the multimodal nature of performance indicators, making it difficult for a single tuning strategy to address multi-dimensional performance requirements; and the lack of sufficient performance prediction capabilities in traditional tuning methods, leading to high tuning iteration costs and low optimal solution search efficiency. This invention, based on existing configuration items, focuses on the combined application of evolutionary algorithms and performance prediction models. Through evolutionary algorithms, it fine-tunes configuration items, efficiently searches for and finds better Pareto solutions, achieving precise performance tuning of mobile terminal graphics rendering systems and providing a reliable basis for optimizing configuration parameters. The specific technical solution adopted in this invention is as follows:

[0006] In a first aspect, the present invention provides a method for optimizing graphics rendering performance in a high-dimensional configuration space, comprising the following steps:

[0007] S1. Model the configuration parameter optimization problem of the graphics rendering system as a multi-objective optimization problem. Use all configuration items as decision vectors, generate a series of configuration item vectors by sampling the value space, and add them as individuals to the initial population.

[0008] S2. Use the performance evaluation subroutine to evaluate the performance of each individual in the current population: First, input the configuration item vector of the individual into the pre-trained performance prediction model to obtain all performance index values, and at the same time calculate all penalty function values. Then, the complete objective function vector corresponding to the individual is formed by all performance index values ​​and penalty function values.

[0009] S3. Using a tournament selection strategy based on crowding distance and ranking, select parent individuals from the current population to enter the mating pool, then generate offspring individuals through crossover and mutation operations, and call the performance evaluation subroutine to re-evaluate the performance. Finally, merge the offspring population with the parent population to form a mixed population.

[0010] S4. Update the ideal point of the mixed population and select the corner solutions of each performance index function term. Calculate the Euclidean distance from the complete objective function vector to the ideal point as the convergence index of each individual. Calculate the similarity of the complete objective function vector as the distribution index between two individuals.

[0011] S5. Construct the next generation population by selecting all corner solutions and individuals from the mixed population by combining distribution and convergence indices.

[0012] S6. Iterate through S3~S5 until the termination condition is met, and obtain the non-dominated solution set in the current population as the final recommended configuration scheme for optimizing graphics rendering performance.

[0013] As a preferred embodiment of the first aspect mentioned above, the multi-objective optimization problem includes two types of optimization objectives: the first type of optimization objective is to minimize performance indicators, and the second type of optimization objective is to minimize penalty functions. The performance indicators include at least one of memory usage, CPU usage percentage, average video memory read rate, average video memory write rate, CPU speed, number of times the CPU calls the GPU, GPU busy time, and GPU frequency. The penalty functions include hard constraint penalties for disabling configurations in the graphics rendering system and soft constraint penalties for configuration parameters that are within the feasible region but deviate from the empirically optimal range.

[0014] As a preferred embodiment of the first aspect above, the graphics rendering system is a graphics rendering system deployed on a mobile terminal, wherein the configuration items for adding the decision vector include enumerated parameters and continuous parameters. The enumerated parameters include at least one of anti-aliasing strategy, shadow switch, robust cache switch, shader cache switch, and resource mask switch. The continuous parameters include at least one of number of light sources, shader cache size, shader cache time, and number of special effects particles.

[0015] As a preferred embodiment of the first aspect above, in S2, the performance prediction model built into the performance evaluation subroutine adopts either the DeepPerf model or the RSFIN model.

[0016] As a preferred embodiment of the first aspect above, in S3, the method for generating a progeny population through selection, crossover, and mutation operations is as follows:

[0017] First, for the current population, calculate the minimum value of all individuals in the population in each optimization objective dimension to form the ideal point;

[0018] Then, calculate the direction vector of the complete objective function vector of each individual in the current population relative to the ideal point, and then calculate the cosine distance from each individual to other individuals in the current population based on the direction vector. Taking each individual in the current population as the center individual, select the top-k neighbor individuals with the smallest cosine distance relative to the center individual, and calculate the sum of the cosine distances of these neighbor individuals as the crowding degree of the center individual. Then, select a preset number of parent individuals as the parent population to enter the mating pool, based on the selection principle of prioritizing the highest ranking and then the largest crowding degree. By default, each individual in the initial population is set to have the same ranking.

[0019] Finally, the parent population in the mating pool is subjected to crossover operation with a preset probability, so that the configuration item vectors of two individuals are generated into offspring individuals by binary crossover or simulated binary crossover; then, the generated offspring individuals are subjected to mutation operation with a preset probability, and the configuration item parameters are subjected to polynomial mutation or random perturbation.

[0020] As a preferred embodiment of the first aspect above, the specific implementation method of S4 is as follows:

[0021] S41. For the mixed population, calculate the minimum value of all individuals in the population in each optimization objective dimension to form the ideal point; at the same time, select the individual with the smallest objective value in each optimization objective dimension as the corner solution.

[0022] S42. Calculate the Euclidean distance from the complete objective function vector of each individual in the mixed population to the ideal point as the convergence index of the individual. Calculate the Euclidean distance between the complete objective function vectors of any two individuals in the mixed population and use it as a distribution index to measure the similarity between the two individuals.

[0023] As a preferred embodiment of the first aspect above, the specific method for constructing the next generation population in S5 is as follows:

[0024] S51. First, add all the corner points of the mixed population to the next generation population and set their ranking to the highest level.

[0025] S52. Determine whether the current size of the next generation population has reached the preset value. If it has, terminate the iteration and output the next generation population directly. If it has not yet reached the preset value, select the subset of individuals that can be added to the next generation population in this round from the mixed population according to the dual-condition screening principle. Then select the individual with the smallest convergence index from the subset of individuals and add it to both the next generation population and the auxiliary label subset.

[0026] The dual-condition screening principle requires that both the similarity condition and the dominance condition be met simultaneously. The similarity condition is that the distribution index of the screened individual relative to the existing individuals in the auxiliary marker subset is not less than the distribution threshold of this round. The dominance condition is that the screened individual is not Pareto-dominated by the existing individuals in the auxiliary marker subset.

[0027] S53. Repeat S52 continuously until the current size of the next generation population reaches the preset value, then terminate the iteration. If no more individual subsets can be selected but the current size of the next generation population has not yet reached the preset value, then end the current round and enter the next iteration round. Continue to repeat S52 by clearing the auxiliary marker subset and lowering the distribution threshold until the next generation population with the preset size is obtained. For non-corner point individuals that join the next generation population, they need to be ranked according to the iteration round in which they join the next generation population. The individuals that join the next generation population in the first iteration round are ranked at the highest level, and the rankings of individuals that join the next generation population in other iteration rounds gradually decrease.

[0028] As a preferred embodiment of the first aspect above, in S53, the distribution threshold of the next iteration round is set each time an iteration round is entered. A distribution threshold relative to the previous iteration is required. Exponential decay is performed, with the exponent being the ratio of the current size of the next generation population to the preset size, divided by a negative number of the total number of the optimization target.

[0029] Secondly, the present invention provides a graphics rendering performance optimization system for high-dimensional configuration spaces, comprising:

[0030] The configuration item input module is used to obtain all configuration items in the graphics rendering system of the mobile terminal and the value range of each configuration item;

[0031] The parameter optimization module is used to output the final recommended configuration scheme for graphics rendering performance optimization based on the information obtained by the configuration item input module and according to the graphics rendering performance optimization method for high-dimensional configuration space as described in any of the first aspects above.

[0032] The performance optimization module is used to send the final recommended configuration scheme output by the parameter optimization module to the graphics rendering system of the mobile terminal to optimize the graphics rendering performance.

[0033] Thirdly, the present invention provides a computer electronic device, which includes a memory and a processor;

[0034] The memory is used to store computer programs;

[0035] The processor is configured to, when executing the computer program, implement the graphics rendering performance optimization method for high-dimensional configuration space as described in any of the first aspects above.

[0036] This invention, by improving the evolutionary algorithm and combining performance prediction with a penalty mechanism, achieves Pareto optimality in system performance indicators and rendering quality while satisfying hard constraints, thereby improving the operating efficiency and adaptability of mobile terminal graphics rendering systems. Compared with existing technologies, this invention has the following beneficial effects:

[0037] 1. High optimization accuracy. The parameter optimization problem is modeled as a multi-objective optimization problem. By combining a performance prediction model and a penalty function mechanism, it can accurately predict the performance corresponding to the parameter configuration, and effectively avoid invalid configurations through hard and soft constraints, thus achieving Pareto optimality of performance and rendering quality.

[0038] 2. Improved Efficiency. An improved evolutionary algorithm is adopted, which accelerates convergence through a hybrid initialization strategy, maintains population diversity based on a selection strategy of crowding distance and ranking, and a dynamic threshold adjustment mechanism, thereby improving the algorithm's evolutionary efficiency and the coverage of the optimal solution.

[0039] 3. High adaptability. Designed for Android mobile systems and mainstream graphics rendering engines, it supports multiple parameter types including enumerated, continuous, and discrete, making it adaptable to different hardware configurations and application scenarios with wide versatility.

[0040] 4. Excellent practicality. Experimental verification shows that the parameter configuration generated by the method of this invention outperforms existing ACTGAN methods in multiple performance dimensions such as CPU speed, memory usage, and GPU busy time, and can significantly improve the operational stability and user experience of mobile terminal graphics rendering systems. Attached Figure Description

[0041] Figure 1 This is a schematic diagram illustrating the steps of a graphics rendering performance optimization method for high-dimensional configuration spaces in an embodiment of the present invention;

[0042] Figure 2 This is a schematic diagram of the module composition of a graphics rendering performance optimization system for high-dimensional configuration space in an embodiment of the present invention;

[0043] Figure 3 This is a schematic diagram of the structure of a computer electronic device in an embodiment of the present invention;

[0044] Figure 4 This is an iterative loop flowchart of the graphics rendering performance optimization method for high-dimensional configuration space in an embodiment of the present invention;

[0045] Figure 5 This is a schematic diagram comparing the effects of the method of the present invention and the comparative method in terms of average memory usage.

[0046] Figure 6 This is a schematic diagram comparing the effects of the method of the present invention and the comparative method in terms of average video memory write speed.

[0047] Figure 7 This is a schematic diagram comparing the performance of the method of the present invention and the comparative method in terms of average video memory read speed.

[0048] Figure 8 This is a schematic diagram comparing the effects of the method of the present invention and the comparative method in terms of average memory usage per pixel.

[0049] Figure 9 This is a schematic diagram comparing the performance of the method of the present invention and the comparative method in terms of average GPU busy time.

[0050] Figure 10 This is a schematic diagram comparing the effects of the method of the present invention and the comparative method in terms of average CPU rotation speed.

[0051] Figure 11 This is a schematic diagram comparing the effectiveness of the method of the present invention and the comparative method in terms of average CPU usage percentage.

[0052] Figure 12 This diagram illustrates the comparison between the method of the present invention and the comparative method in terms of the average number of CPU calls to the GPU. Detailed Implementation

[0053] To make the objectives, technical solutions, and advantages of this invention clearer, the invention will be further described in detail below with reference to the accompanying drawings.

[0054] Conversely, this invention encompasses any substitutions, modifications, equivalent methods, and solutions made within the spirit and scope of the invention as defined in the claims. Furthermore, to provide a better understanding of the invention, certain specific details are described in detail below. However, those skilled in the art will fully understand the invention even without these detailed descriptions.

[0055] This invention provides a method for optimizing graphics rendering performance in a high-dimensional configuration space. This method can be applied to graphics rendering systems deployed on mobile terminals (such as smartphones, tablets, and other portable devices). In a typical application scenario, the graphics rendering system runs on the Android operating system, and its core component is a graphics rendering engine (such as Unreal Engine, Unity, or Cocos), which is usually packaged in an application package (APK). The graphics rendering system contains a series of configurable parameters (i.e., decision variables), and the adjustment of these parameters has a direct nonlinear mapping relationship with the system's operating performance (such as frame rate and memory), hardware resource consumption, and image rendering quality. The core concept of this invention is to model the graphics rendering parameter optimization problem as a multi-objective optimization problem, use an improved evolutionary algorithm to automatically optimize the configurable parameters, and combine a performance prediction model and a penalty function mechanism to achieve Pareto optimality of system performance indicators and rendering quality under the premise of satisfying hard constraints.

[0056] The following section provides a detailed introduction to the specific implementation of the above-mentioned graphics rendering performance optimization method for high-dimensional configuration spaces.

[0057] As shown in Figure 1, in a preferred embodiment of the present invention, the specific implementation steps of the above-mentioned graphics rendering performance optimization method for high-dimensional configuration space are shown in S1~S6.

[0058] The specific methods for S1 to S6 are described in detail below.

[0059] S1. Model the configuration parameter optimization problem of the graphics rendering system as a multi-objective optimization problem. Use all configuration items as decision vectors, generate a series of configuration item vectors by sampling the value space, and add them as individuals to the initial population.

[0060] It should be noted that the specific optimization objective of the target optimization problem in this invention needs to be designed according to the actual optimization requirements, and the configuration items used as decision vectors in this invention also need to be determined according to the actual graphics rendering system to be optimized.

[0061] As one implementation of this invention, the multi-objective optimization problem includes two types of optimization objectives: the first type is minimizing performance indicators, and the second type is minimizing penalty functions. The performance indicators include at least one of memory usage, CPU usage percentage, average video memory read rate, average video memory write rate, CPU rotation speed, number of times the CPU calls the GPU, GPU busy time, and GPU frequency. The penalty functions include hard constraint penalties for disabling configurations in the graphics rendering system and soft constraint penalties for configuration parameters that are within the feasible region but deviate from the empirically optimal range.

[0062] Specific penalty constraints need to be designed based on the actual scenario. Generally, they are used to enforce constraints on configuration combinations that are not allowed in industrial scenarios or workloads that exceed reasonable limits. The following is a brief description of the specific forms of hard constraint penalties and soft constraint penalties.

[0063] (1) Hard constraint penalty: For configuration combinations that are not allowed in industrial scenarios (e.g., anti-aliasing algorithms not supported by specific mobile terminals, or certain parameter combinations that cause the engine to crash / become inoperable), the penalty value is set to a maximum constant. This is to ensure that the individual is quickly eliminated in Pareto comparisons. The hard constraint penalty function can be defined as:

[0064]

[0065] (2) Soft constraint penalty: For configuration item parameters that are within the feasible region but deviate from the empirically optimal range The parameters are configured using a quadratic penalty, where "the greater the deviation, the greater the penalty." For the i-th configuration item parameter... The soft constraint penalty function can be defined as:

[0066]

[0067] in, This refers to the empirically optimal range for this configuration parameter, which must fall within the range of values ​​for that parameter. For example, the empirically optimal range for the number of special effects particles. The range is [30, 80], and the upper and lower limits are [0, 100].

[0068] In addition, as one implementation of this invention, the graphics rendering system is a graphics rendering system deployed on a mobile terminal. The core component of the graphics rendering system is a graphics rendering engine, which is encapsulated in an application package and contains various configurable parameters. These parameters have a non-linear mapping relationship with system performance, hardware consumption, and rendering quality. This invention improves optimization accuracy through performance prediction and constraint penalty mechanisms, improves convergence efficiency through improved evolutionary algorithms, and adapts to various rendering engines and application scenarios, significantly improving the operational stability and user experience of the mobile terminal graphics rendering system. The configuration items added to the decision vector include both enumerated and continuous parameters. The enumerated parameters include at least one of anti-aliasing strategy, shadow switch, robustness cache switch, shader cache switch, and resource mask switch, while the continuous parameters include at least one of number of light sources, shader cache size, shader cache time, and number of special effect particles.

[0069] Therefore, if the decision vector consisting of all configurable parameters is denoted as:

[0070]

[0071] Where N is the total number of configuration items in the decision vector. Any i-th configuration item in the decision vector... All are subject to the constraints of their value range, that is ,in and These represent the lower and upper bounds of the value range for the i-th configuration item, respectively. The configuration items in the decision vector can choose one of the following parameters or a combination thereof:

[0072] Anti-aliasing strategy: an enumerated parameter that corresponds to different anti-aliasing algorithms, such as MSAA and FXAA;

[0073] Shadow switch: An enumerated parameter that determines whether the light creates a shadow;

[0074] Robustness cache switch: An enumerated parameter that determines whether or not a robust cache can be used;

[0075] Shader cache switch: An enumerated parameter that determines whether to enable or disable shader caching;

[0076] Resource mask switch: An enumerated parameter that indicates whether the resource mask is enabled or disabled.

[0077] Number of light sources: A continuous parameter that represents the number of dynamic light sources in the scene;

[0078] Shader cache size: A continuous parameter used to control the amount of cache that the shader can use;

[0079] Shader cache duration: A continuous parameter used to control the maximum duration of shader cache.

[0080] Special effects particle quantity: A continuous parameter used to control the density of particle effects.

[0081] Since the complete objective function of a multi-objective optimization problem consists of a series of optimization objective terms (including performance index function terms and penalty function terms), let M be the number of performance indices to be optimized and P be the number of penalty function terms, then the total dimension of the objective function is T = M + P. To ensure that the optimization direction is consistent in the final multi-objective optimization, all optimization objective terms in the complete objective function need to be uniformly transformed into a minimization problem. The final complete objective function can be expressed as:

[0082]

[0083] in, Let x represent the feasible solution space of decision vector x. Let T represent the objective function corresponding to the i-th optimization objective term, and T be the total number of optimization objectives in the multi-objective optimization problem, which is the sum of the number of performance index function terms M and the number of penalty function terms P.

[0084] Each configuration item's parameter value is constrained by a preset value range. The specific value range needs to be determined based on actual manufacturer parameters, experience, or standards. When generating the initial population, each configuration item needs to sample a value from its own value range. The configuration item vector composed of the sampled values ​​of all configuration items is considered an individual; therefore, each individual in the population corresponds to a set of configuration item vectors. Assume the population size is... Then each individual in the population is denoted as The configuration item vector corresponding to this individual is denoted as The initial population can be represented as:

[0085]

[0086] Configuration Item Vector Each element in You can randomly select from the range of values ​​set for this configuration item.

[0087] It should be noted that the initial population can be generated completely randomly, or a hybrid initialization strategy can be used, in which some individuals are set to configuration schemes based on prior knowledge (such as historical best configurations, hardware manufacturer recommended configurations, etc.) to accelerate algorithm convergence.

[0088] S2. Use the performance evaluation subroutine to evaluate the performance of each individual in the current population: First, input the configuration item vector of the individual into the pre-trained performance prediction model to obtain all performance index values, and at the same time calculate all penalty function values. Then, the complete objective function vector corresponding to the individual is formed by all performance index values ​​and penalty function values.

[0089] As one implementation of this invention, the performance prediction model built into the performance evaluation subroutine can be any model capable of predicting graphics rendering performance index values ​​based on configuration item vectors, such as the DeepPerf model or the RSFIN model. Furthermore, after calculating the M performance index values ​​and P penalty function values ​​for each individual, they can be combined to form the complete objective function vector for that individual.

[0090]

[0091] in, There are M performance index values. There are P penalty function values ​​(including hard constraint / soft constraint penalty terms).

[0092] S3. Using a tournament selection strategy based on crowding distance and ranking, select parent individuals from the current population to enter the mating pool, generate offspring individuals through crossover and mutation operations, and call the performance evaluation subroutine to re-evaluate the performance. Then, merge the offspring population with the parent population to form a mixed population.

[0093] The selection, crossover, and mutation operations in this invention are all standard operations in evolutionary algorithms. However, the specific selection, crossover, and mutation methods in each stage need to be designed for the current graphics rendering performance optimization scenario. As one implementation of this invention, a method for generating a progeny population through selection, crossover, and mutation operations is as follows:

[0094] First, for the current population, calculate the minimum value of all individuals in the population in each optimization objective dimension to form the ideal point;

[0095] Then, calculate the direction vector of the complete objective function vector of each individual in the current population relative to the ideal point, and then calculate the cosine distance from each individual to other individuals in the current population based on the direction vector. Taking each individual in the current population as the center individual, select the top-k neighbor individuals with the smallest cosine distance relative to the center individual, and calculate the sum of the cosine distances of these neighbor individuals as the crowding degree of the center individual. Then, select a preset number of parent individuals as the parent population to enter the mating pool, based on the selection principle of prioritizing the highest ranking and then the largest crowding degree. By default, each individual in the initial population is set to have the same ranking.

[0096] Finally, the parent population in the mating pool is subjected to crossover operation with a preset probability, so that the configuration item vectors of two individuals are generated into offspring individuals by binary crossover or simulated binary crossover; then, the generated offspring individuals are subjected to mutation operation with a preset probability, and the configuration item parameters are subjected to polynomial mutation or random perturbation.

[0097] It should be noted that the preset probabilities for crossover and mutation operations are parameters that can be adjusted based on actual conditions. Generally, the number of offspring individuals generated after crossover and mutation operations is controlled to be the same as the number of parent individuals, that is, the size of the offspring population is the same as the size of the parent population. Therefore, if the size of the parent population is... The resulting mixed population Scale .

[0098] S4. Update the ideal point of the mixed population and select the corner solutions of each performance index function term. Calculate the Euclidean distance from the complete objective function vector to the ideal point as the convergence index of each individual. Calculate the similarity of the complete objective function vector as the distribution index between two individuals.

[0099] As one implementation of this invention, step S4 can be specifically implemented through the following sub-steps:

[0100] S41. For the mixed population, calculate the minimum value of all individuals in the population in each optimization objective dimension to form an ideal point; at the same time, select the individual with the smallest objective value in each optimization objective dimension as the corner point solution.

[0101] It should be noted that the ideal point Essentially, it's a vector composed of T minimum values, where the k-th dimension of the vector is... The objective value can be obtained by minimizing the k-th optimization objective value for all individuals in the population, as expressed by the formula:

[0102]

[0103] Therefore, the ideal point can be represented as .

[0104] S42. Calculate the Euclidean distance from the complete objective function vector of each individual in the mixed population to the ideal point as the convergence index of the individual. Calculate the Euclidean distance between the complete objective function vectors of any two individuals in the mixed population and use it as a distribution index to measure the similarity between the two individuals.

[0105] It should be noted that the convergence metric mentioned above needs to be calculated for each individual, while the distribution metric is calculated for any two individuals within the mixed population. In other words, the distribution metric between each individual and other individuals needs to be calculated. These convergence and distribution metrics will serve as two auxiliary evaluation indicators for subsequent environmental selection steps to determine the next generation of the population.

[0106] S5. Construct the next generation population by selecting all corner solutions and individuals from the mixed population by combining distribution and convergence indices.

[0107] It should be noted that the next generation population is a subset selected from the mixed population, and its population size remains the same as that of the previous parent population. Consistent. All T corner points in the mixed population are directly added to the next generation population, while the rest... Individual samples need to be screened by combining distribution and convergence indices, with the screening direction being to maximize the distribution index and minimize the convergence index.

[0108] As one implementation of this invention, the specific method for screening based on corner solutions and combining distribution and convergence indices to construct the next generation population is as follows:

[0109] S51. First, add all the corner points of the mixed population to the next generation population and set their ranking to the highest level.

[0110] S52. Determine whether the current size of the next generation population has reached the preset value. If it has, terminate the iteration and output the next generation population directly. If it has not yet reached the preset value, select the subset of individuals that can be added to the next generation population in this round from the mixed population according to the dual-condition screening principle. Then select the individual with the smallest convergence index from the subset of individuals and add it to both the next generation population and the auxiliary label subset.

[0111] The above dual-condition screening principle requires that both the similarity condition and the dominance condition be met simultaneously. The similarity condition is that the distribution index of the screened individual relative to the existing individuals in the auxiliary marker subset is not less than the distribution threshold of this round. The dominance condition is that the screened individual is not Pareto-dominated by the existing individuals in the auxiliary marker subset.

[0112] S53. Repeat S52 continuously until the current size of the next generation population has reached the preset value and then terminate the iteration. If no more individual subsets can be selected but the current size of the next generation population has not yet reached the preset value, then end the current round and enter the next iteration round. Continue to repeat S52 by clearing the auxiliary marker subset and lowering the distribution threshold until the next generation population with the preset size is obtained.

[0113] It should be noted that each individual joining the next generation population needs to be assigned a ranking. Corner nodes are all assigned the highest ranking, while non-corner nodes are assigned a ranking according to their iteration in the next generation population. Individuals joining the next generation population in the first iteration are also assigned the highest ranking, and the ranking of individuals joining in subsequent iterations gradually decreases. For example, assuming that the ranking level is 1 as the highest, and then decreases sequentially to level 2, level 3, level 4, and so on, then all T corner nodes and individuals selected in the first round are assigned a ranking of 1, and individuals selected in the nth round are assigned a ranking of n, where n = 2, 3, 4, ...

[0114] Furthermore, whether to proceed to the next iteration round depends on whether the current size of the next generation population has reached the preset value and whether a subset of individuals can be selected. If a subset of individuals cannot be selected but the current size of the next generation population has not yet reached the preset value, then the current round ends and the next iteration round begins. Each time an iteration round begins, the distribution threshold used in the next round needs to be lowered. This allows more individuals to meet the dual-condition screening principle. As one implementation of this invention, to better control the threshold decay, the distribution threshold for the next iteration round is... A distribution threshold relative to the previous iteration is required. Exponential decay is performed, with the exponent being the power of the next generation population. Current size and preset size ratio Divide by the negative of the total number of optimization targets T, i.e. .

[0115] S6. Iterate through S3~S5 until the termination condition is met, and obtain the non-dominated solution set in the current population as the final recommended configuration scheme for optimizing graphics rendering performance.

[0116] It should be noted that the termination condition in this invention can be adjusted and optimized according to actual needs, and is generally set to reach a preset maximum number of iterations. Once the preset maximum number of iterations is reached, all individuals in the latest obtained population can be output as the non-dominated solution set, and these individuals can all serve as the final recommended configuration scheme for graphics rendering performance optimization. Since different individuals produce different optimal performance dimensions, in practical applications, the final configuration scheme applied to the terminal device can be further selected from these individuals based on optimization requirements.

[0117] It should be noted that the method steps shown in S1 to S6 above can essentially be implemented in the form of computer programs or software functional modules.

[0118] Therefore, based on the same inventive concept, such as Figure 2As shown, the present invention also provides a graphics rendering performance optimization system for a high-dimensional configuration space, corresponding to the graphics rendering performance optimization method for a high-dimensional configuration space provided in the above embodiments, which includes:

[0119] The configuration item input module is used to obtain all configuration items in the graphics rendering system of the mobile terminal and the value range of each configuration item;

[0120] The parameter optimization module is used to output the final recommended configuration scheme for optimizing graphics rendering performance based on the information obtained by the configuration item input module and according to the graphics rendering performance optimization method for high-dimensional configuration space as described in the previous embodiments.

[0121] The performance optimization module is used to send the final recommended configuration scheme output by the parameter optimization module to the graphics rendering system of the mobile terminal to optimize the graphics rendering performance.

[0122] It should be noted that the above configuration input module, parameter optimization module, and performance optimization module are all software function modules, and their corresponding functions can be implemented by writing code and calling the interfaces provided by the terminal device.

[0123] Furthermore, based on the same inventive concept, such as Figure 3 As shown, the present invention also provides a computer electronic device corresponding to the graphics rendering performance optimization method for high-dimensional configuration space provided in the above embodiments, which includes a memory and a processor;

[0124] The memory is used to store computer programs;

[0125] The processor is configured to implement the aforementioned method for optimizing graphics rendering performance in a high-dimensional configuration space when executing the computer program.

[0126] Furthermore, the logical instructions in the aforementioned memory can be implemented as software functional units and, when sold or used as independent products, can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, in essence, or the part that contributes to the prior art, or a portion of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present invention.

[0127] Therefore, based on the same inventive concept, the present invention provides a computer-readable storage medium corresponding to a method for optimizing graphics rendering performance in a high-dimensional configuration space. The storage medium stores a computer program, which, when executed by a processor, can realize the aforementioned method for optimizing graphics rendering performance in a high-dimensional configuration space.

[0128] Therefore, based on the same inventive concept, the present invention provides a computer program product, including a computer program / instruction, which, when executed by a processor, can realize the graphics rendering performance optimization method for high-dimensional configuration space as described above.

[0129] Specifically, in the computer-readable storage medium of the above three embodiments, the stored computer program is executed by a processor, which can perform the aforementioned steps S1 to S6.

[0130] It is understood that the aforementioned storage media may include random access memory (RAM) or non-volatile memory (NVM), such as at least one disk storage device. Furthermore, the storage media may also be various media capable of storing program code, such as USB flash drives, external hard drives, magnetic disks, or optical discs.

[0131] It is understood that the processors mentioned above can be general-purpose processors, including central processing units (CPUs), network processors (NPs), etc.; they can also be digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components.

[0132] It should also be noted that those skilled in the art will understand that, for the sake of convenience and brevity, the specific working process of the system described above can be referred to the corresponding process in the foregoing method embodiments, and will not be repeated here. In the embodiments provided in this application, the division of steps or modules in the system and method is merely a logical functional division, and there may be other division methods in actual implementation. For example, multiple modules or steps may be combined or integrated together, and a module or step may also be split.

[0133] The present invention will further demonstrate the detailed implementation process and technical effects of the graphics rendering performance optimization method for high-dimensional configuration space shown in steps S1 to S6 on a specific dataset through a specific embodiment, so as to facilitate understanding of the essence of the present invention.

[0134] Example

[0135] The steps in this embodiment are the same as those in the graphics rendering performance optimization method for high-dimensional configuration spaces shown in steps S1 to S6 above. The definitions of parameter variables and basic principles will not be repeated in this embodiment. The following mainly shows the specific implementation details, parameter settings and implementation results of each step in this embodiment. For ease of description, the method shown in steps S1 to S6 will be referred to as the method of this invention, and the English abbreviation is EA-TRS-FIM.

[0136] like Figure 4 The diagram illustrates the iterative loop of the graphics rendering performance optimization method for high-dimensional configuration spaces in this embodiment. The specific steps are as follows:

[0137] Step 1: Population initialization for evolutionary algorithm

[0138] Before executing the evolutionary algorithm, it is necessary to formally define the parameter optimization problem of the graphics rendering system and complete the preparation work for population initialization. The specific sub-steps are as follows:

[0139] Step 1.1: Definition of Multi-Objective Optimization Problem

[0140] In this embodiment, the graphics rendering system is a graphics rendering engine running on the Android operating system, and its parameter optimization problem is formally defined as a multi-objective optimization problem. Let the decision vector composed of all configurable parameters be: , where N is the total number of configuration items. Each configuration item in the decision vector All are subject to the constraints of their value range, that is ,in and These represent the lower and upper limits of the i-th configuration item, respectively.

[0141] In this embodiment, N=22, and all 22 configuration items are: anti-aliasing mode, whether to enable shadows, lighting mode, shader model, number of light sources, number of special effect particles, number of triangles, texture size, resolution, whether special effect particles exist, number of CPU cores, whether to restart after pre-compilation, shader cache size, shader cache time, whether shader cache is enabled, whether resource mask is enabled, shader cache startup method, symbol set model type, whether the rendering pipeline cache is available for shader rendering cache, robust cache, whether absolute subscript is enabled, and total device memory size.

[0142] In this embodiment, the number of performance metrics to be optimized is M=8. The eight performance metrics are average memory used per pixel, average CPU rotation speed, average GPU busy time, average video memory read rate, average video memory write rate, average CPU percentage, average memory usage, and average number of CPU calls to the GPU.

[0143] In this embodiment, the number of penalty function terms P=2, consisting of one hard constraint penalty function and one soft constraint penalty function, which are set as follows:

[0144] (1) Hard constraint penalty:

[0145] The anti-aliasing algorithm cannot be FSAA; the corresponding hard constraint penalty function formula is:

[0146]

[0147] where constant Set to e 21 .

[0148] (2) Soft constraint penalties:

[0149] If the lighting mode is 2, the number of special effect particles should be as small as possible (less than 120). The corresponding soft constraint penalty function formula is:

[0150]

[0151] In the formula: This refers to the number of special effects particles.

[0152] Step 1.2 Population Initialization

[0153] Define the initial population as:

[0154]

[0155] in, This is the preset population size. For each individual in the population... Generate its configuration item vector Each element in the configuration item vector The upper and lower limits set therefrom Randomly selected from the options.

[0156] For different types of configuration parameters, upper and lower limits of their value ranges need to be set before sampling the initial population, for example:

[0157] Enumerated parameters (such as anti-aliasing algorithms): First, perform numerical encoding, and use the encoding range as the upper and lower limits. For example, if the anti-aliasing strategy is encoded as: 0=off, 1=FXAA, 2=TAA, 3=MSAA_2x, 4=MSAA_4x, then the value range of this parameter is $[0,4]$.

[0158] Continuous parameters (such as the number of light sources): set upper and lower limits according to the specific project. For example, the range of the number of light sources is $[5,10]$, and the range of the number of special effect particles is $[0,100]$.

[0159] Discrete parameters (such as shadow quality level): set upper and lower limits based on engine support levels or hardware capabilities, and sample within a discrete set.

[0160] In this embodiment, the initial population is generated completely randomly. After generation, the performance of each individual in the initial population can be evaluated and its objective function vector calculated according to step 2.

[0161] Step 2: Individual multi-objective performance evaluation

[0162] This step is a general evaluation subroutine that can be used to evaluate the performance of individuals in the initial population in step 1. It can also be called by other steps in the subsequent iterative optimization process to quantify the performance of individuals in different populations (to obtain the complete objective function vector corresponding to the individual). The evaluation process is as follows:

[0163] Step 2.1 Performance Indicator Prediction

[0164] Obtain the configuration vector for each individual in the current population to be evaluated. . Configure the vector Input the data into a pre-trained performance prediction model (DeepPerf model or RSFIN model) to obtain M=8 performance metric predictions.

[0165] Step 2.2 Calculation of the penalty function value

[0166] Examine the configuration item vector for each individual. Determine whether a hard or soft constraint is triggered, and calculate the corresponding penalty value vector according to the hard constraint penalty function and soft constraint penalty function defined in step 1 above. If the individual fully satisfies all hard and soft constraint conditions, the corresponding penalty function value is 0.

[0167] Step 2.3 Calculate the objective function.

[0168] The predicted M=8 performance indicators obtained in step 2.1 are combined with the P=2 penalty function values ​​obtained in step 2.2 to form the complete objective function vector for this individual:

[0169]

[0170] in, Penalty items (including hard constraint / soft constraint penalty items).

[0171] Subsequently, due to the existence of a series of individuals, therefore in Based on this, we introduce the superscript i to represent the i-th individual. , recorded as Similarly, in Each dimension in the model also introduces a superscript i to represent the i-th individual. The element value of the i-th dimension, for example This represents the value of the j-th dimension element in the complete objective function vector corresponding to the i-th individual.

[0172] Step 3: Generate offspring population

[0173] To improve evolutionary efficiency, the selection strategy in step 3.1 is first used to construct a mating pool, and then crossover is performed in step 3.2 and mutation is performed in step 3.3.

[0174] Step 3.1: Parent Selection

[0175] A tournament selection strategy based on crowding distance and ranking is adopted to select outstanding individuals from the current population as parents to participate in crossover and mutation operations.

[0176] First, regarding the current population Calculate the ideal point in the target space:

[0177]

[0178] Then, for any individuals i and j, define the direction vector of their target vector relative to the ideal point:

[0179]

[0180] And define cosine similarity:

[0181]

[0182] in To prevent extremely small positive numbers with a denominator of 0, the cosine distance is further calculated as follows: .

[0183] For individual i, select its... smallest The set consists of individual neighbors. And define the crowding degree of individual i as the sum of the cosine distances of all its neighboring individuals:

[0184]

[0185] When selecting parents, two individuals are randomly selected from population P, and their rank and crowding distance are compared. Individuals with lower rank are preferred; if ranks are the same, individuals with larger crowding distances are preferred for crossover. This process is repeated until the desired parents are selected. Each parent individual forms a mating pool.

[0186] It should be noted that when step 3 is executed for the first time (i.e., when operating on the initial population), the ranking of all individuals is initialized to 0, and the selection is based solely on crowding distance. The ranking of individuals in subsequent populations will be updated in the selection operation of step 5.

[0187] Step 3.2: Crossover Mutation

[0188] Perform evolutionary operations on the parent individuals in the mating pool:

[0189] by The probability of performing crossover is: binary crossover or simulated binary crossover is applied to the configuration item vector to generate offspring individuals.

[0190] With probability Perform mutation operations on the offspring individuals generated by the crossover operation: perform polynomial mutations or random perturbations on the configuration items of the offspring individuals to maintain population diversity.

[0191] Step 3.3: Offspring Evaluation and Merging

[0192] For the offspring individuals generated by crossover mutation, step 2 is performed to calculate their objective function vector using the performance prediction model and penalty function rules. Subsequently, the offspring population is merged with the parent population to form a mixed population. (scale is) ).

[0193] Step 4: Calculate auxiliary evaluation indicators. For mixed populations... All individual auxiliary indicators are calculated and used for environment selection in the subsequent step 5. The specific sub-steps are as follows:

[0194] Step 4.1: Update the ideal point and corner points

[0195] First, calculate Find the minimum value of the objective function for each individual and update the ideal point. (Same as step 3.1).

[0196] Then, to cover the Pareto front boundary, corner solutions are selected for each objective dimension k. In this embodiment, the corner solutions are selected based on the individual that achieves the minimum value on the k-th objective:

[0197]

[0198] Step 4.2: Calculate the convergence metric

[0199] Calculate the Euclidean distance from each individual i to the ideal point, which serves as a convergence metric, reflecting the degree of closeness between the individual and the ideal point:

[0200]

[0201] right Individuals in Sort them from smallest to largest.

[0202] Step 4.3: Calculate the distribution index

[0203] To measure the similarity between individuals in a population, the distribution index for any two individuals i and j is defined as:

[0204]

[0205] Step 5: Environment Selection

[0206] For population Individuals in the pool are screened to select... Individuals constitute the next generation population. .

[0207] Step 5.1: Preserve corner solutions

[0208] Add all the corner points marked in step 4.1 directly. And its ranking is set to 1 to ensure that the boundaries of the Pareto front are effectively covered.

[0209] Step 5.2: Individual screening based on distribution threshold

[0210] Determine the current size of the next generation population. Has the preset value been reached? If the condition has been met, the iteration terminates and the next generation population is output directly. If the condition has not been met, a subset of individuals that can be added to the next generation population is selected from the mixed population according to the dual-condition selection principle. Then, select the individual with the smallest convergence index from the subset of individuals and add it to the next generation of the population. and auxiliary tag subset ;

[0211] In the dual-condition selection principle, an individual must simultaneously meet both the similarity condition and the dominance condition in order to be added to the subset of individuals. ,

[0212] The similarity criterion is: the selected individual relative to the subset of auxiliary markers. The distribution index of existing individuals is not less than the distribution threshold of this round. (The distribution threshold of the g-th iteration is denoted as...) (g is initially 1).

[0213] The dominance condition is: the selected individuals are not in a subset of auxiliary markers. There is already individual Pareto dominance.

[0214] Therefore, for non-corner point individuals in a mixed population, if they are in a subset of auxiliary markers... Distribution index of selected individuals Less than If they are too similar, they need to be excluded from the subset of individuals. In addition, if the non-corner solution is Pareto-dominated by the selected individuals, it also needs to be excluded from the subset of individuals. In addition.

[0215] like The scale has not yet reached Then from individual subsets Continue to select convergence indicators The smallest individual is then simultaneously added to the next generation of the population. and auxiliary tag subset Each time a new individual is added to the next generation of the population, a subset of individuals needs to be generated again using the two-condition selection principle. That is, taking the newly added individual as the center, excluding other candidate individuals in its neighborhood that are too similar or dominated by it.

[0216] Step 5.3: Dynamically adjust the threshold

[0217] If step 5.2 is repeated continuously, and a new individual is added to the next generation of the population, it becomes impossible to select a subset of individuals. However, the current size of the next generation population has not yet reached the preset value. If the current round ends, the next iteration begins, the iteration number g is incremented by 1, the auxiliary marker subset is cleared, and then the selection is based on the current proportion. Dynamic attenuation distribution threshold The formula for updating the distribution threshold in the (g+1)th round is: Therefore, by relaxing the selection criteria, the ranking of the next selected individuals is improved, and step 5.2 is repeated in the next round until the new generation of the population is filled. Training is then terminated, and the next generation population is output. All corner vertices in the next generation population are assigned the highest rank, i.e., a rank value of 1. Individuals added to the next generation population in other iterations are ranked according to their corresponding iterations. That is, the individuals selected in the g-th iteration are all assigned the rank value g. An increase in the value of g corresponds to a decrease in the actual rank level, with a value of 1 being the highest rank level, decreasing sequentially according to values ​​of 2, 3, 4, and so on.

[0218] Step 6: Repeat the iteration

[0219] Determine if the preset maximum number of iterations G has been reached. If not, then... As the parent population, return to step 3; if the target has been reached, output the non-dominated solution set in the current population as the final recommended configuration scheme for optimizing graphics rendering parameters.

[0220] This embodiment compares the proposed method EA-TRS-FIM with a baseline method ACTGAN to demonstrate the effectiveness of the proposed method. ACTGAN uses a GAN network to mine hidden features in the data and utilizes the learned hidden structure to generate new high-quality configurations. The performance comparisons between the proposed method EA-TRS-FIM and the baseline method ACTGAN in terms of average memory usage, average GPU memory write speed, average memory per pixel, average GPU busy time, average CPU rotation speed, average CPU percentage utilization, and average number of CPU calls to the GPU are as follows: Figure 5 , Figure 6 , Figure 7 , Figure 8 , Figure 9 , Figure 10 , Figure 11 , Figure 12 As shown in the figure, the data represents the performance of ACTGAN and EA-TRS-FIM on the same mobile terminal. ACTGAN was configured as follows: the optimization rate of the generator and discriminator optimizers was set to 1e-4, the optimizer was Adam, and the optimizer weight decay coefficient was set to 1e-6; the training epochs were 300, consistent with the EA-TRS-FIM method. It can be seen that the configuration items generated by EA-TRS-FIM outperformed those generated by ACTGAN on the terminal. Experimental results demonstrate that the proposed method achieves a significant improvement in multi-object prediction.

[0221] It should be noted that the embodiments described above are only some preferred solutions of the present invention, and are not intended to limit the present invention. Those skilled in the art can make various changes and modifications without departing from the spirit and scope of the present invention. Therefore, all technical solutions obtained by equivalent substitution or equivalent transformation fall within the protection scope of the present invention.

Claims

1. A method for optimizing graphics rendering performance in a high-dimensional configuration space, characterized in that, include: S1. Model the configuration parameter optimization problem of the graphics rendering system as a multi-objective optimization problem. Use all configuration items as decision vectors, generate a series of configuration item vectors by sampling the value space, and add them as individuals to the initial population. S2. Use the performance evaluation subroutine to evaluate the performance of each individual in the current population: First, input the configuration item vector of the individual into the pre-trained performance prediction model to obtain all performance index values, and at the same time calculate all penalty function values. Then, the complete objective function vector corresponding to the individual is formed by all performance index values ​​and penalty function values. S3. Using a tournament selection strategy based on crowding distance and ranking, select parent individuals from the current population to enter the mating pool, then generate offspring individuals through crossover and mutation operations, and call the performance evaluation subroutine to re-evaluate the performance. Finally, merge the offspring population with the parent population to form a mixed population. S4. Update the ideal point of the mixed population and select the corner solutions of each performance index function term. Calculate the Euclidean distance from the complete objective function vector to the ideal point as the convergence index of each individual. Calculate the similarity of the complete objective function vector as the distribution index between two individuals. S5. Construct the next generation population by selecting all corner solutions and individuals from the mixed population by combining distribution and convergence indices. S6. Iterate through S3~S5 until the termination condition is met, and obtain the non-dominated solution set in the current population as the final recommended configuration scheme for optimizing graphics rendering performance.

2. The graphics rendering performance optimization method for high-dimensional configuration space as described in claim 1, characterized in that, The multi-objective optimization problem includes two types of optimization objectives: the first type is minimizing performance metrics, and the second type is minimizing penalty functions. The performance metrics include at least one of the following: memory usage, CPU usage percentage, average video memory read rate, average video memory write rate, CPU rotation speed, number of times the CPU calls the GPU, GPU busy time, and GPU frequency. The penalty functions include hard constraint penalties for disabling configurations in the graphics rendering system and soft constraint penalties for configuration parameters that are within the feasible region but deviate from the empirically optimal range.

3. The graphics rendering performance optimization method for high-dimensional configuration space as described in claim 1, characterized in that, The graphics rendering system is a graphics rendering system deployed on a mobile terminal. The configuration items for adding decision vectors include enumerated parameters and continuous parameters. The enumerated parameters include at least one of anti-aliasing strategy, shadow switch, robust cache switch, shader cache switch, and resource mask switch. The continuous parameters include at least one of number of light sources, shader cache size, shader cache time, and number of special effect particles.

4. The graphics rendering performance optimization method for high-dimensional configuration space as described in claim 1, characterized in that, In S2, the performance prediction model built into the performance evaluation subroutine adopts either the DeepPerf model or the RSFIN model.

5. The graphics rendering performance optimization method for high-dimensional configuration spaces as described in claim 1, characterized in that, In S3, the method for generating a progeny population through selection, crossover, and mutation operations is as follows: First, for the current population, calculate the minimum value of all individuals in the population in each optimization objective dimension to form the ideal point; Then, calculate the direction vector of the complete objective function vector of each individual in the current population relative to the ideal point, and then calculate the cosine distance from each individual to other individuals in the current population based on the direction vector; take each individual in the current population as the center individual, select the top-k neighbor individuals with the smallest cosine distance relative to the center individual, and calculate the sum of the cosine distances of these neighbor individuals as the crowding degree of the center individual; then, select a preset number of parent individuals as the parent population to enter the mating pool, based on the selection principle of prioritizing the highest ranking and then the largest crowding degree. In this context, each individual in the initial population is assumed to have the same rank by default. Finally, the parent population in the mating pool is subjected to crossover operation with a preset probability, so that the configuration item vectors of two individuals are generated into offspring individuals by binary crossover or simulated binary crossover; then, the generated offspring individuals are subjected to mutation operation with a preset probability, and the configuration item parameters are subjected to polynomial mutation or random perturbation.

6. The graphics rendering performance optimization method for high-dimensional configuration spaces as described in claim 1, characterized in that, The specific implementation method of S4 is as follows: S41. For the mixed population, calculate the minimum value of all individuals in the population in each optimization objective dimension to form the ideal point; at the same time, select the individual with the smallest objective value in each optimization objective dimension as the corner solution. S42. Calculate the Euclidean distance from the complete objective function vector of each individual in the mixed population to the ideal point as the convergence index of the individual. Calculate the Euclidean distance between the complete objective function vectors of any two individuals in the mixed population and use it as a distribution index to measure the similarity between the two individuals.

7. The method for optimizing graphics rendering performance for high-dimensional configuration spaces as described in claim 1, characterized in that, In S5, the specific method for constructing the next generation population is as follows: S51. First, add all the corner points of the mixed population to the next generation population and set their ranking to the highest level. S52. Determine whether the current size of the next generation population has reached the preset value. If it has, terminate the iteration and output the next generation population directly. If it has not yet reached the preset value, select the subset of individuals that can be added to the next generation population in this round from the mixed population according to the dual-condition screening principle. Then select the individual with the smallest convergence index from the subset of individuals and add it to both the next generation population and the auxiliary label subset. The dual-condition screening principle requires that both the similarity condition and the dominance condition be met simultaneously. The similarity condition is that the distribution index of the screened individual relative to the existing individuals in the auxiliary marker subset is not less than the distribution threshold of this round. The dominance condition is that the screened individual is not Pareto-dominated by the existing individuals in the auxiliary marker subset. S53. Repeat S52 continuously until the current size of the next generation population reaches the preset value, then terminate the iteration. If no more individual subsets can be selected but the current size of the next generation population has not yet reached the preset value, then end the current round and enter the next iteration round. Continue to repeat S52 by clearing the auxiliary marker subset and lowering the distribution threshold until the next generation population with the preset size is obtained. For non-corner point individuals that join the next generation population, they need to be ranked according to the iteration round in which they join the next generation population. The individuals that join the next generation population in the first iteration round are ranked at the highest level, and the rankings of individuals that join the next generation population in other iteration rounds gradually decrease.

8. The graphics rendering performance optimization method for high-dimensional configuration space as described in claim 7, characterized in that, In S53, the distribution threshold for the next iteration round is set each time an iteration round is entered. A distribution threshold relative to the previous iteration is required. Exponential decay is performed, with the exponent being the ratio of the current size of the next generation population to the preset size, divided by a negative number of the total number of the optimization target.

9. A graphics rendering performance optimization system for high-dimensional configuration spaces, characterized in that, include: The configuration item input module is used to obtain all configuration items in the graphics rendering system of the mobile terminal and the value range of each configuration item; The parameter optimization module is used to output the final recommended configuration scheme for graphics rendering performance optimization based on the information obtained by the configuration item input module and in accordance with the graphics rendering performance optimization method for high-dimensional configuration space as described in any one of claims 1 to 8. The performance optimization module is used to send the final recommended configuration scheme output by the parameter optimization module to the graphics rendering system of the mobile terminal to optimize the graphics rendering performance.

10. A computer electronic device, characterized in that, Including memory and processor; The memory is used to store computer programs; The processor is configured to, when executing the computer program, implement the graphics rendering performance optimization method for high-dimensional configuration space as described in any one of claims 1 to 8.

Citation Information

Patent Citations

  • Multi-target hybrid evolutionary neural architecture search method and system based on assistance of dominant classifier

    CN120181178A

  • AR-based optical fiber loop virtual-real linkage visualization method and system

    CN121053322A