Server adaptive assembly method, apparatus, equipment and storage media

CN122569992APending Publication Date: 2026-08-14CHINA SOUTHERN POWER GRID ARTIFICIAL INTELLIGENCE TECHNOLOGY CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-05-22
Publication Date
2026-08-14

AI Technical Summary

Technical Problem

[0004]本发明的主要目的在于解决现有服务器装配方法难以在满足工作负载需求的前提下自动化生成兼顾性能和成本的最优装配方案的技术问题;

Benefits of technology

[0008]上述服务器自适应装配方法、装置、设备及存储介质,通过通过对工作负载需求和硬件资源池进行特征提取,构建装配需求数据模型;根据该数据模型对装配配置空间进行分层分解,识别离散决策维度和连续决策维度,并将其分别划分至第一配置子空间和第二配置子空间;基于约束关系对第一配置子空间进行搜索获取多组配置结果,针对每组配置结果对第二配置子空间进行优化,组合生成多个候选装配方案;对候选方案进行评估获取质量评价值,输出最优方案。本发明能够在满足工作负载需求的前提下,综合考虑硬件组件间的约束关系,生成兼顾性能和成本的服务器装配方案,避免硬件组件性能不匹配或资源配置不均衡的问题。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122569992A_ABST
    Figure CN122569992A_ABST
Patent Text Reader

Abstract

This invention provides a server adaptive assembly method, apparatus, device, and storage medium. The method includes: constructing an assembly requirement data model by extracting features from workload requirements and hardware resource pools; hierarchically decomposing the assembly configuration space according to the data model, identifying discrete and continuous decision dimensions, and dividing them into a first configuration subspace and a second configuration subspace, respectively; searching the first configuration subspace based on constraint relationships to obtain multiple sets of configuration results, optimizing the second configuration subspace for each set of configuration results, and combining them to generate multiple candidate assembly schemes; evaluating the candidate schemes to obtain quality evaluation values, and outputting the optimal scheme. This invention can generate a server assembly scheme that balances performance and cost while meeting workload requirements and comprehensively considering the constraint relationships between hardware components, avoiding problems such as performance mismatch or unbalanced resource allocation of hardware components.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of data processing technology, and in particular to a server adaptive assembly method, apparatus, device, and storage medium. Background Technology

[0002] With the rapid development of artificial intelligence and big data technologies, server configuration requirements are becoming increasingly complex and diverse. Current server assembly methods primarily rely on manual experience for hardware selection and resource configuration. Engineers must manually select hardware components such as processors, accelerator cards, memory, and storage based on workload requirements and determine the specific parameter configurations for each component. This approach is not only time-consuming and labor-intensive but also struggles to find the optimal configuration solution from a vast array of hardware combinations.

[0003] However, server hardware components have complex dependencies and constraints, including interface compatibility constraints, performance matching constraints, and resource capacity constraints. Manual configuration often fails to fully consider these constraints, easily leading to performance mismatches or unbalanced resource allocation between hardware components, resulting in underutilized server performance or excessive costs. Summary of the Invention

[0004] The main objective of this invention is to solve the technical problem that existing server assembly methods are unable to automatically generate the optimal assembly scheme that balances performance and cost while meeting workload requirements. This invention provides a server adaptive assembly method, characterized in that the server adaptive assembly method includes: Feature extraction is performed on the user-input workload requirements and hardware resource pool to obtain the load feature set corresponding to the workload requirements and the resource feature set corresponding to the hardware resource pool, and an assembly requirement data model is constructed based on the load feature set and the resource feature set. Based on the assembly requirement data model, the assembly configuration space is decomposed into layers, and the first decision variable of the discrete decision dimension and the second decision variable of the continuous decision dimension in the assembly configuration space are identified. The first decision variable and the second decision variable are respectively assigned to the first configuration subspace and the second configuration subspace. Multiple candidate assembly schemes are generated based on the first configuration subspace, the second configuration subspace, and the assembly requirement data model. Based on the assembly requirements data model, the performance and cost of each candidate assembly scheme are evaluated to obtain a quality evaluation value. The candidate assembly scheme with the best quality evaluation value is then used as the target assembly scheme for server assembly.

[0005] The present invention also provides a server adaptive assembly apparatus, characterized in that the server adaptive assembly apparatus comprises: The feature extraction module is used to extract features from the user-input workload requirements and hardware resource pool, obtain the load feature set corresponding to the workload requirements and the resource feature set corresponding to the hardware resource pool, and construct an assembly requirement data model based on the load feature set and the resource feature set. The spatial decomposition module is used to perform hierarchical decomposition of the assembly configuration space according to the assembly requirement data model, identify the first decision variable of the discrete decision dimension and the second decision variable of the continuous decision dimension in the assembly configuration space, and divide the first decision variable and the second decision variable into the first configuration subspace and the second configuration subspace, respectively. The scheme generation module is used to generate multiple candidate assembly schemes based on the first configuration subspace, the second configuration subspace, and the assembly requirement data model. The solution evaluation module is used to perform performance and cost evaluations on each candidate assembly solution based on the assembly requirements data model to obtain a quality evaluation value, and then selects the candidate assembly solution with the best quality evaluation value as the target assembly solution for server assembly.

[0006] The present invention also provides a server adaptive assembly apparatus, comprising: a memory and at least one processor, wherein the memory stores instructions, and the memory and the at least one processor are interconnected via a circuit; the at least one processor invokes the instructions in the memory to cause the server adaptive assembly apparatus to perform the steps of the server adaptive assembly method described above.

[0007] The present invention also provides a computer-readable storage medium storing instructions that, when executed on a computer, cause the computer to perform the steps of the server adaptive assembly method described above.

[0008] The aforementioned server adaptive assembly method, apparatus, device, and storage medium construct an assembly requirement data model by extracting features from workload requirements and hardware resource pools. Based on this data model, the assembly configuration space is hierarchically decomposed, identifying discrete and continuous decision dimensions, and dividing them into a first configuration subspace and a second configuration subspace, respectively. Multiple configuration results are obtained by searching the first configuration subspace based on constraint relationships. The second configuration subspace is then optimized for each set of configuration results, generating multiple candidate assembly schemes. The candidate schemes are evaluated to obtain quality assessment values, and the optimal scheme is output. This invention can generate server assembly schemes that balance performance and cost while meeting workload requirements and comprehensively considering the constraints between hardware components, avoiding problems such as performance mismatch or unbalanced resource allocation among hardware components.

[0009] Beneficial effects: This invention constructs an assembly requirement data model that includes a load feature set, a resource feature set, and constraint relationships, linking workload requirements with hardware resource characteristics to avoid the problem of mismatch between configuration schemes and actual needs. By hierarchically decomposing the assembly configuration space into a first configuration subspace with a discrete decision dimension and a second configuration subspace with a continuous decision dimension, and adopting corresponding solution strategies for the characteristics of different decision dimensions, it avoids the problem of low solution efficiency caused by mixed decision spaces. By first performing constraint-driven search on the first configuration subspace to obtain multiple sets of discrete configuration results, and then optimizing the parameters of the second configuration subspace for each set of discrete configuration results, the optimization search space is narrowed under the constraint of determined hardware selection. At the same time, by performing performance and cost evaluations on candidate assembly schemes to obtain quality evaluation values, quantitative comparison of different configuration schemes is achieved, thereby generating a server assembly scheme that meets performance requirements while taking cost optimization into account.

[0010] Other features and advantages of the invention will be set forth in the description which follows, and will be apparent in part from the description, or may be learned by practicing the invention. The objects and other advantages of the invention are realized and obtained in accordance with the structures particularly pointed out in the description, claims and drawings.

[0011] To make the above-mentioned objects, features and advantages of the present invention more apparent and understandable, preferred embodiments are described below in detail with reference to the accompanying drawings. Attached Figure Description

[0012] Figure 1 This is a schematic diagram of the first embodiment of the server adaptive assembly method in this invention; Figure 2 This is a schematic diagram of a second embodiment of the server adaptive assembly method in this invention; Figure 3 This is a schematic diagram of one embodiment of the server adaptive assembly device in this invention; Figure 4 This is a schematic diagram of one embodiment of the server adaptive assembly device in this invention. Detailed Implementation

[0013] To make the objectives, technical solutions, and advantages of the embodiments of the present invention clearer, the technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.

[0014] The terms "comprising" and "having," and any variations thereof, used in the embodiments of this invention are intended to cover non-exclusive inclusion. For example, a process, method, system, product, or device that includes a series of steps or units is not limited to the steps or units listed, but may optionally include other steps or units not listed, or may optionally include other steps or units inherent to these processes, methods, products, or devices.

[0015] To facilitate understanding of this embodiment, a server adaptive assembly method disclosed in this embodiment of the invention will first be described in detail. For example... Figure 1 As shown, this method includes the following steps: 101. Extract features from the user-input workload requirements and hardware resource pool to obtain the load feature set corresponding to the workload requirements and the resource feature set corresponding to the hardware resource pool, and construct an assembly requirement data model based on the load feature set and the resource feature set. In this embodiment, the step of extracting features from the user-input workload requirements and hardware resource pool to obtain the load feature set corresponding to the workload requirements and the resource feature set corresponding to the hardware resource pool, and constructing an assembly requirement data model based on the load feature set and resource feature set, includes: parsing the workload requirements to extract the computing requirement features, communication requirement features, and storage requirement features of the workload to obtain the load feature set; extracting attributes from each hardware component in the hardware resource pool to obtain the performance characteristics, compatibility characteristics, and capacity characteristics of each hardware component to obtain the resource feature set; and constructing the constraint relationship between the hardware components and the workload requirements based on the load feature set and resource feature set to obtain an assembly requirement data model containing the load feature set, resource feature set, and constraint relationship.

[0016] Specifically, it can receive user-input workload requirements and hardware resource pool information. It should be noted that workload requirements can include user-submitted task description files, performance requirement specifications, or historical operation logs, while the hardware resource pool contains various selectable hardware components and their specifications.

[0017] For user-inputted workload requirements, the first step is to parse them. Specifically, this parsing process can be accomplished by identifying the task type and analyzing its characteristics. For example, for deep learning training tasks, parameters such as model architecture, dataset size, and training epochs can be parsed; for inference tasks, information such as batch size and number of concurrent requests can be parsed. After parsing, the computational requirement characteristics of the workload are extracted. These characteristics reflect the task's dependence on computational power, specifically in dimensions such as floating-point operation requirements, matrix operation density, and operator type distribution. For example, convolutional neural network training tasks have high-density matrix multiplication operation requirements, while natural language processing tasks may involve a large number of sequence computations. By analyzing the proportion and computational complexity of various operators in the task, the computational requirement characteristics can be quantified.

[0018] Simultaneously, communication requirement features are extracted. It's important to note that communication requirement features describe the patterns and intensity of data exchange during task execution. For distributed training tasks, communication requirements are mainly reflected in gradient synchronization and parameter updates; for data parallelism, communication volume is related to the number of model parameters and batch size; for model parallelism, the communication pattern depends on the model's partitioning method. The specific values ​​of communication requirement features can be determined based on the task's parallel strategy, data flow direction, and synchronization frequency. Next, storage requirement features are extracted. Storage requirement features include the task's requirements for data storage capacity and access speed. For example, the storage requirements for model parameters, the caching requirements for intermediate activation values, and the loading requirements for the dataset. For large-scale model training, the storage of model states may reach hundreds of gigabytes, and the speed of reading training data directly affects the overall training efficiency. Storage requirement features are obtained by analyzing the model size, dataset size, and data access patterns. Through the above extraction process, a load feature set containing computational requirement features, communication requirement features, and storage requirement features is obtained.

[0019] For each hardware component in the hardware resource pool, attribute extraction is required. This includes, but is not limited to, processors, accelerator cards, memory, storage devices, and network devices. First, the performance characteristics of each hardware component are obtained. These characteristics reflect the processing power of the hardware component. For processors, performance characteristics include the number of cores, clock speed, and cache hierarchy; for accelerator cards, performance characteristics include the number of compute units, memory capacity, memory bandwidth, and peak floating-point performance. It's important to note that these performance parameters are not simply a list of numerical specifications, but rather reflect the hardware's performance under actual workloads. For example, the effective computing power of an accelerator card depends not only on its theoretical peak performance but is also affected by factors such as memory access efficiency and instruction throughput.

[0020] Next, the compatibility characteristics of the hardware components are obtained. Compatibility characteristics describe the relationship between hardware components and whether they can work together normally. Specifically, compatibility can be reflected at multiple levels: at the physical interface level, the accelerator card needs to match the motherboard slot type; at the protocol level, there are compatibility differences between different generations of interface standards; at the software level, the degree of support for the hardware by the operating system and drivers also affects compatibility. By parsing the interface specifications, protocol versions, driver support, and other information of the hardware components, a description of the compatibility characteristics is established. Simultaneously, the capacity characteristics of the hardware components are obtained. Capacity characteristics characterize the upper limit of the hardware resource supply capacity, including the number of processor cores, memory capacity, storage device space, peak network bandwidth, etc. In addition, capacity characteristics also include power consumption limits and heat dissipation capabilities, as these factors directly restrict the strength of the hardware components' ability to operate stably. Through the above extraction process, a resource feature set containing performance characteristics, compatibility characteristics, and capacity characteristics is obtained.

[0021] After obtaining the load feature set and resource feature set, constraint relationships are constructed based on the mapping relationship between them. It should be noted that these constraints describe the conditions that hardware component configurations must meet. These conditions stem from the load requirements on hardware capabilities and the mutual constraints between hardware components. Specifically, compatibility constraints are established first. Compatibility constraints ensure that the selected hardware components can physically connect and communicate normally. For example, the interface type of the accelerator card must be consistent with the slot type supported by the motherboard, the power consumption requirement of the accelerator card cannot exceed the power supply capacity, and the heat dissipation requirement of the accelerator card cannot exceed the processing capacity of the cooling system. The logical expression of compatibility constraints is established by matching the interface specifications, power consumption parameters, and heat dissipation parameters in the resource feature set.

[0022] Furthermore, capacity constraints are established. Capacity constraints ensure that the total amount of hardware resources can meet the workload's demands. For computing resources, the total computing power of accelerator cards needs to be greater than or equal to the computing requirements in the load feature set; for storage resources, the total capacity of memory and storage devices needs to accommodate model parameters, intermediate results, and training data; for communication resources, network bandwidth needs to support the data exchange requirements of distributed tasks. The numerical relationship of capacity constraints is established by comparing the demand in the load feature set with the supply in the resource feature set. Simultaneously, performance matching constraints are also established. It should be noted that performance matching constraints not only require sufficient total hardware resources but also a reasonable ratio between different types of resources to avoid performance bottlenecks. For example, if high-performance accelerator cards are configured for computing but memory bandwidth is insufficient, data transmission will become a bottleneck, preventing the accelerator cards from fully utilizing their computing power. Similarly, if network bandwidth is too low, communication time in distributed training will increase significantly, reducing overall efficiency. Performance matching constraints are established by analyzing the proportional relationship between computing, communication, and storage demands in the load feature set, as well as the performance ratio of the corresponding hardware in the resource feature set. It is evident that the process of constructing constraint relationships comprehensively considers multiple dimensions such as the physical limitations of hardware components, the balance of resource supply and demand, and performance coordination.

[0023] After constructing the constraint relationships, the load feature set, resource feature set, and constraint relationships are integrated to obtain the assembly requirement data model. It's important to understand that the assembly requirement data model is not simply a data aggregation, but rather a structured organization of the relationships between feature sets and constraint relationships. Specifically, the load feature set in the model records the workload's demand intensity across three dimensions: computing, communication, and storage; the resource feature set records the supply capacity of each hardware component across three dimensions: performance, compatibility, and capacity; and the constraint relationships, in the form of logical expressions or numerical inequalities, define the feasible domain of the hardware configuration. Thus, the construction of the assembly requirement data model is complete.

[0024] 102. Based on the assembly requirement data model, the assembly configuration space is decomposed into layers, the first decision variable of the discrete decision dimension and the second decision variable of the continuous decision dimension in the assembly configuration space are identified, and the first decision variable and the second decision variable are respectively assigned to the first configuration subspace and the second configuration subspace. In this embodiment, the step of hierarchically decomposing the assembly configuration space according to the assembly requirement data model, identifying the first decision variable of discrete decision dimensions and the second decision variable of continuous decision dimensions in the assembly configuration space, and dividing the first decision variable and the second decision variable into the first configuration subspace and the second configuration subspace respectively includes: enumerating the optional configuration items of hardware components according to the resource feature set in the assembly requirement data model to obtain the assembly configuration space; judging the value type of each configuration dimension in the assembly configuration space, marking the decision variable corresponding to the configuration dimension with discrete value as the first decision variable, and marking the decision variable corresponding to the configuration dimension with continuous value as the second decision variable; analyzing the dependency relationship between the first decision variables according to the constraint relationship in the assembly requirement data model, constructing the first configuration subspace containing the first decision variable and its dependency relationship, and constructing the second decision variable as the second configuration subspace.

[0025] Specifically, it should be noted that the assembly configuration space includes all possible hardware configuration combinations, and the purpose of hierarchical decomposition is to divide this complex decision space according to the nature of the decision variables, so that different types of decision problems can adopt corresponding solution strategies.

[0026] Based on the resource feature set in the assembly requirements data model, the optional configuration items for hardware components are enumerated. Specifically, the resource feature set records information about various hardware components in the hardware resource pool, including the selection of accelerator card model, processor generation, memory type, storage device type, and network device topology. For each type of hardware component, the optional configuration items constitute the configuration dimension of that component. For example, the configuration dimension of an accelerator card may include the model selection dimension, and the optional values ​​of this dimension may include multiple accelerator card models with different architectures and performance levels; the configuration dimension of a processor includes generation selection, and the optional values ​​cover processor products of different generations. By traversing all hardware component categories in the resource feature set and enumerating the configuration dimensions and optional values ​​of each type of component, an assembly configuration space is formed. It can be understood that the assembly configuration space is a multi-dimensional space, where each dimension corresponds to a configuration item, and each point on the dimension represents an optional value of that configuration item.

[0027] After obtaining the configuration space, the value types of each configuration dimension within that space are determined. It's important to note that configuration dimension value types are categorized into discrete and continuous types. Discrete configuration dimensions offer a limited number of independent options, such as the selection of the accelerator card model, processor generation, or network topology. These configuration items do not have continuous numerical relationships but rather represent several mutually exclusive discrete options. Continuous configuration dimensions, on the other hand, have options that are continuously distributed within a certain numerical range, such as memory capacity configuration, accelerator card power allocation settings, and cooling fan speed adjustments. The values ​​of these configuration items can change continuously within a certain range.

[0028] Specifically, the judgment process can be accomplished by analyzing the domain of the configuration dimension. If the domain of the configuration dimension is a finite set, and the elements in the set are symbolic identifiers rather than pure numerical values, then the dimension is a discrete type. For example, the dimension of accelerator card model may have possible values ​​such as a symbolic set like {model A, model B, model C}. Although these models correspond to different performance parameters, the model itself is a discrete identifier. If the domain of the configuration dimension is a numerical range, and the values ​​within that range are continuous, then the dimension is a continuous type. For example, the dimension of memory capacity may have possible values ​​such as a continuous range like [32GB, 512GB], and any value within that range can be taken.

[0029] Furthermore, the decision variables corresponding to configuration dimensions with discrete values ​​are labeled as first decision variables, and the decision variables corresponding to configuration dimensions with continuous values ​​are labeled as second decision variables. It should be noted that a decision variable is a mathematical expression of a configuration dimension; each configuration dimension corresponds to one decision variable, and the value of this decision variable represents the choice made on that configuration dimension. Through the above judgment and labeling process, all decision variables in the assembly configuration space are divided into two categories: the first set of decision variables and the second set of decision variables.

[0030] After classifying the decision variables, the dependencies between the primary decision variables are analyzed based on the constraints in the assembly requirements data model. It is understandable that the primary decision variables are not completely independent; the values ​​of some primary decision variables will affect the feasible range of values ​​for other primary decision variables. For example, if a certain generation of processor is selected, the compatible memory types are limited, and the possible values ​​of the memory type, a primary decision variable, are constrained by the processor selection. Similarly, if a certain network topology is selected, it will also constrain the selection of network equipment models. These constraints between variables constitute dependencies.

[0031] Specifically, dependency analysis can be performed by examining the constraints in the assembly requirements data model. These constraints record compatibility constraints, capacity constraints, and performance matching constraints between hardware components, which manifest as dependencies between variables at the first-decision variable level. For any two first-decision variables, if the value of one variable affects the feasible range of the other variable through constraints, then a dependency exists between these two variables. By traversing all pairs of first-decision variables and determining whether dependencies exist based on constraints, a dependency network among the first-decision variables is established.

[0032] Furthermore, a first allocation subspace is constructed, containing the first decision variables and their dependencies. It should be noted that the first allocation subspace not only contains the set of first decision variables but also the dependency structure between these variables. This structure can be organized hierarchically, arranging dependent variables in the order of their dependencies to form a decision hierarchy. For example, if processor selection determines the range of memory types, then the processor selection variable is at a higher decision level, and the memory type variable is at a lower decision level. Through this hierarchical organization, the first allocation subspace reflects the order of discrete decision-making and the constraint propagation relationships.

[0033] Simultaneously, the second decision variables are constructed as a second configuration subspace. It can be understood that the second decision variables correspond to continuous parameter configurations, and the values ​​of these variables change continuously within a numerical range. The second configuration subspace contains all second decision variables and their value ranges. It should be noted that the feasible value range of the second decision variables is limited not only by the capacity characteristics of the hardware components themselves but also by the values ​​of the first decision variables. For example, the theoretical value range of the second decision variable, memory capacity, might be the maximum capacity supported by the hardware. However, once the first decision variable determines the specific processor and motherboard model, the actual feasible memory capacity range will be constrained by the number of motherboard memory slots and the capacity limit of a single memory module. Therefore, although the decision variables in the second configuration subspace are essentially continuous, their effective value range is conditional and depends on the values ​​of the variables in the first configuration subspace.

[0034] 103. Generate multiple candidate assembly schemes based on the first configuration subspace, the second configuration subspace, and the assembly requirement data model; In this embodiment, the process of generating candidate assembly schemes needs to handle both discrete and continuous decision-making problems simultaneously. For discrete decision variables in the first configuration subspace, it is necessary to search among their available values ​​to find hardware component selection combinations that satisfy the constraints; for continuous decision variables in the second configuration subspace, it is necessary to determine the specific values ​​of each continuous parameter given the hardware selection.

[0035] Specifically, the search process begins with the initial state of the first configuration subspace and progressively assigns values ​​to each first decision variable. Understandably, due to the dependencies between the first decision variables, the search process must proceed according to the hierarchical order of these dependencies. For a first decision variable at a higher level, a value is first selected from its possible values. After this value is determined, the feasible value range for the first decision variables at lower levels is determined based on the constraints, and then a value is selected from this feasible range. Through this layer-by-layer assignment method, a complete set of values ​​for the first decision variables can be generated, representing a hardware component selection scheme.

[0036] During the search process, constraints act as a filter. If a candidate value for a first decision variable violates a constraint with other determined values, that candidate value is excluded, and subsequent search paths containing that value are no longer explored. For example, if an accelerator card model has been selected, but its interface type is incompatible with candidate motherboards, that motherboard model will be filtered out by the constraint. Through continuous filtering by constraints, the search process retains only configuration paths that satisfy the constraints, ultimately yielding multiple sets of first configuration results that meet the constraints. Each set of first configuration results includes the specific values ​​of all first decision variables, determining a complete hardware component selection scheme.

[0037] For each set of first configuration results, valid second decision variables in the second configuration subspace are determined based on the constraints in the assembly requirements data model. It should be noted that the validity of the second decision variables depends on the hardware selection determined in the first configuration results. Some second decision variables may only be meaningful under specific hardware selections. For example, the second decision variable of accelerator card power allocation is only valid if an accelerator card is selected in the first configuration results; if the first configuration results do not include an accelerator card, this variable is not applicable. By examining the correlation between the first configuration results and each second decision variable, the set of valid second decision variables under the current hardware selection is identified.

[0038] Understandably, the values ​​of the second decision variables need to be optimized within their feasible range. The feasible range is determined by two factors: firstly, the physical limitations of the second decision variables themselves, such as memory capacity not exceeding the maximum supported by the hardware; and secondly, the constraints imposed by the first configuration result, such as the selected motherboard model limiting the number of memory slots, thus limiting the upper limit of the total memory capacity. After determining the feasible range of each effective variable, an optimization algorithm searches within the feasible range for the combination of variable values ​​that optimizes the objective function. The objective function can be set according to the optimization objective, such as minimizing cost while meeting performance requirements, or maximizing performance within the cost budget. The optimization process iteratively adjusts the values ​​of each second decision variable, gradually approaching the optimal solution, and finally obtains the second configuration result corresponding to the first configuration result of the current group.

[0039] After obtaining the first configuration results and their corresponding second configuration results for each group, the first and second configuration results are combined to obtain complete candidate assembly schemes. Specifically, each candidate assembly scheme consists of a set of first configuration results and a set of second configuration results. The first configuration results determine the selection of hardware components, and the second configuration results determine the parameter configuration of each hardware component. Through the above combination process, multiple candidate assembly schemes can be generated, each scheme being a feasible configuration obtained under the premise of satisfying constraints.

[0040] 104. Based on the assembly requirement data model, the performance and cost of each candidate assembly scheme are evaluated to obtain the quality evaluation value, and the candidate assembly scheme with the best quality evaluation value is used as the target assembly scheme for server assembly.

[0041] In this embodiment, the step of obtaining a quality evaluation value by evaluating the performance and cost of each candidate assembly scheme based on the assembly requirement data model includes: predicting the performance of each candidate assembly scheme according to the load feature set in the assembly requirement data model to obtain the performance index of each candidate assembly scheme under the load feature set; calculating the cost of the hardware component configuration of each candidate assembly scheme according to the resource feature set in the assembly requirement data model to obtain the cost index of each candidate assembly scheme; and giving a comprehensive score to each candidate assembly scheme based on the performance index and the cost index to obtain the quality evaluation value corresponding to each candidate assembly scheme.

[0042] Specifically, predicting computational performance can be done by comparing the computational demands of the load characteristic set with the computing power provided by the accelerator cards in the candidate solutions. If the total computing power of the candidate solutions is sufficient and the performance ratio between the hardware components is reasonable, the task can be executed efficiently; if there is insufficient computing power or performance bottlenecks, the task execution time will be prolonged. Similarly, for communication performance, it is necessary to analyze the degree of matching between the communication mode of the load and the network configuration in the candidate solutions. For example, for distributed tasks that require a large amount of data exchange between nodes, network bandwidth and topology directly affect communication efficiency; if the network bandwidth configured in the candidate solutions can meet the communication requirements, the communication overhead will be small; otherwise, it will become a performance bottleneck. For storage performance, it is necessary to consider the balance between data loading speed and computation speed. If the read and write speed of the storage device cannot keep up with the computation pace, it will lead to idle computing resources waiting for data.

[0043] Based on the above analysis, the performance metrics of candidate assembly schemes under the load characteristic set can be predicted. Performance metrics can be reflected in dimensions such as task execution time, throughput, and resource utilization. It should be noted that performance prediction is not simply the summation of hardware specifications; it requires consideration of the synergistic effects between hardware components and potential performance bottlenecks. For example, even with multiple high-performance accelerator cards, if the memory bandwidth is insufficient to support data transmission, the computing power of the accelerator cards cannot be fully utilized, and overall performance is limited by this memory bandwidth bottleneck.

[0044] After performance prediction is completed, the cost of hardware component configuration for each candidate assembly scheme is calculated based on the resource feature set in the assembly requirements data model. The resource feature set contains pricing information for each hardware component, as well as related procurement and maintenance costs. For each hardware component in a candidate assembly scheme, its corresponding cost parameters can be queried from the resource feature set.

[0045] Specifically, cost calculation needs to consider both hardware procurement costs and usage costs. Hardware procurement costs are the sum of the unit prices of each hardware component. For discretely selected hardware, the cost directly corresponds to the list price of the selected model; for hardware with continuously configured parameters, such as memory capacity, the cost may have a linear or non-linear relationship with the number of components. Usage costs include power consumption costs, cooling costs, and maintenance costs, which are related to the operating characteristics of the hardware configuration. For example, high-performance accelerator cards consume a lot of power, and the long-term power costs cannot be ignored; the cooling system needs to be configured according to the hardware's thermal power consumption, and improving cooling capacity will also increase costs.

[0046] By summarizing the costs of all hardware components and related usage costs in the candidate assembly scheme, the cost index of the candidate scheme is obtained. It is understandable that the cost index reflects the economic investment required to implement the assembly scheme and is an important dimension for evaluating the feasibility of the scheme.

[0047] After obtaining the performance and cost indicators of each candidate assembly scheme, a comprehensive score is calculated based on these two indicators to obtain a quality evaluation value. It should be noted that the quality evaluation value is a quantitative representation of the overall merit of the candidate scheme, comprehensively considering both performance and cost factors.

[0048] Specifically, comprehensive scoring can be achieved by setting an evaluation function. The evaluation function takes performance and cost metrics as input and outputs a quality evaluation value. The design of the evaluation function needs to reflect the optimization objective. For example, if the optimization objective is to minimize cost while meeting performance requirements, a threshold can be set for the performance metrics. Only candidate solutions that reach the performance threshold are evaluated, and then ranked according to cost, with lower costs resulting in higher quality evaluation values. If the optimization objective is to maximize performance within the cost budget, an upper limit can be set for the cost metrics. Among candidate solutions that meet the cost constraints, scoring is based on performance metrics, with higher performance resulting in higher quality evaluation values.

[0049] Furthermore, the evaluation function can also employ a weighted summation method, normalizing performance and cost indicators before performing a weighted sum. The weight of the performance indicator reflects the importance placed on performance, while the weight of the cost indicator reflects the importance placed on cost control. By adjusting the weight parameters, a trade-off can be struck between performance and cost. For example, for applications seeking ultimate performance, performance indicators can be assigned higher weights; for cost-sensitive applications, cost indicators can be assigned higher weights. Through the evaluation function calculation, each candidate assembly scheme receives a quality evaluation value, with a higher value indicating a better scheme.

[0050] After obtaining the quality evaluation values ​​of each candidate assembly scheme, the candidate schemes are ranked according to their quality evaluation values. The candidate assembly scheme with the best quality evaluation value, that is, the scheme with the largest or smallest quality evaluation value (depending on the definition of the evaluation function), is determined as the target assembly scheme. This target assembly scheme is the optimal configuration obtained under the premise of meeting workload requirements, complying with constraints, and balancing performance and cost.

[0051] In this embodiment, an assembly requirement data model is constructed by extracting features from workload requirements and hardware resource pools. Based on this data model, the assembly configuration space is decomposed hierarchically, identifying discrete and continuous decision dimensions, and dividing them into a first configuration subspace and a second configuration subspace, respectively. Multiple configuration results are obtained by searching the first configuration subspace based on constraint relationships. The second configuration subspace is then optimized for each set of configuration results, generating multiple candidate assembly schemes. The candidate schemes are evaluated to obtain quality assessment values, and the optimal scheme is output. This invention can generate server assembly schemes that balance performance and cost while meeting workload requirements and comprehensively considering the constraints between hardware components, avoiding problems such as performance mismatch or unbalanced resource allocation among hardware components.

[0052] Please see Figure 2 Another embodiment of the server adaptive assembly method in this application includes: 201. Extract features from the user-input workload requirements and hardware resource pool to obtain the load feature set corresponding to the workload requirements and the resource feature set corresponding to the hardware resource pool, and construct an assembly requirement data model based on the load feature set and the resource feature set. 202. Based on the assembly requirement data model, the assembly configuration space is decomposed into layers, the first decision variable of the discrete decision dimension and the second decision variable of the continuous decision dimension in the assembly configuration space are identified, and the first decision variable and the second decision variable are respectively assigned to the first configuration subspace and the second configuration subspace. In this embodiment, steps 201-202 are similar to steps 101-102 in the first embodiment, and will not be described again here.

[0053] 203. Based on the constraint relationship in the assembly requirement data model, search the first decision variable in the first configuration subspace to obtain multiple sets of first configuration results that satisfy the constraint relationship; In this embodiment, the step of searching for the first decision variables in the first configuration subspace based on the constraints in the assembly requirement data model to obtain multiple sets of first configuration results that satisfy the constraints includes: constructing a decision search tree based on the dependencies between the first decision variables in the first configuration subspace, where the root node of the decision search tree corresponds to an empty configuration state, each intermediate node corresponds to a partially assigned value state of the first decision variables, and each leaf node corresponds to a fully assigned value state of the first decision variables; traversing and expanding each decision path starting from the root node of the decision search tree, and pruning decision branches that do not satisfy the constraints according to the constraints in the assembly requirement data model during the expansion process to obtain multiple effective decision paths from the root node to the leaf node; extracting the leaf nodes corresponding to each effective decision path, and obtaining the fully assigned values ​​of the first decision variables corresponding to each leaf node as multiple sets of first configuration results.

[0054] Specifically, there are dependencies among the primary decision variables; the values ​​of some variables affect the feasible value range of other variables. When constructing the decision search tree, the dependent variables are arranged into decision hierarchies according to the order of their dependencies. The primary decision variables at higher levels are assigned values ​​first; only after their values ​​are determined can the feasible value range of the primary decision variables at lower levels be determined. Through this hierarchical organization, each level of the decision search tree corresponds to a primary decision variable, and the nodes at that level represent the different possible values ​​for that variable.

[0055] Understandably, each intermediate node in the decision search tree corresponds to a partial assignment state of the first decision variable. The path from the root node to an intermediate node records several assignment sequences of the first decision variables, while the first decision variables not yet involved remain in an unassigned state. The child nodes of the intermediate nodes correspond to the possible values ​​of the next first decision variable to be assigned in the current partial assignment state. Each leaf node corresponds to the complete assignment state of the first decision variables; that is, the complete path from the root node to a leaf node contains the assignments of all first decision variables, forming a complete hardware selection scheme.

[0056] After constructing the decision search tree, the decision paths are traversed and expanded starting from the root node. The traversal process uses a layer-by-layer expansion approach. For each node in the current layer, a value is assigned to the next first decision variable, generating child nodes for the next layer. It's important to note that the traversal expansion does not blindly generate all possible assignment combinations; rather, it filters based on the constraints in the assembly requirements data model during the expansion process.

[0057] Specifically, when expanding a node, the partial assignment state corresponding to that node is first obtained, that is, the already assigned variables and their values ​​recorded along the path from the root node to that node. Then, the first decision variable to be assigned a value is determined, and the set of possible values ​​for that variable is obtained. For each candidate value in the set of possible values, a temporary extended assignment state is constructed, which includes the existing partial assignments and the assignment of the current candidate value to the variable to be assigned. Then, it is checked whether this temporary assignment state satisfies the constraints in the assembly requirements data model.

[0058] The constraint check involves verifying compatibility constraints, capacity constraints, and performance matching constraints. For compatibility constraints, it checks whether the interfaces, protocols, and drivers of each hardware component in the temporary assignment state are compatible. For example, if a certain model of accelerator card and motherboard are selected in the temporary assignment state, it needs to be verified whether the interface type of the accelerator card matches the slot type of the motherboard, and whether the power consumption of the accelerator card is within the range of the motherboard and power supply. If incompatibility exists, the candidate value violates the compatibility constraint. For capacity constraints, it checks whether the total resources of the hardware components identified in the temporary assignment state meet the workload requirements. For example, if the total computing power of the selected accelerator cards is still insufficient to meet the lower limit of the computing requirements in the load feature set, the temporary assignment state may fail the capacity constraint verification. For performance matching constraints, it checks whether the performance ratio of each hardware component in the temporary assignment state is reasonable and whether there are obvious performance bottlenecks.

[0059] If the temporary assignment state passes the constraint check, the candidate value is feasible, and corresponding child nodes can be generated, allowing for further expansion. If the temporary assignment state violates the constraints, the candidate value is pruned, no corresponding child nodes are generated, and subsequent decision paths containing that candidate value are no longer explored. Thus, the pruning operation, by verifying the constraints, preemptively eliminates configuration combinations that do not meet the constraints, avoiding the expansion of invalid search paths and reducing the search space.

[0060] Through the aforementioned process of traversal expansion and pruning, the search proceeds layer by layer downwards from the root node, retaining only decision branches that satisfy the constraints. When the expansion reaches the bottom layer of the decision search tree, i.e., when all first decision variables have been assigned values, a leaf node is obtained. It should be noted that, due to continuous constraint verification and pruning during the search process, the decision paths reaching the leaf nodes are all valid paths that satisfy the constraints. Each valid decision path from the root node to a leaf node corresponds to a complete and feasible set of first decision variable assignments.

[0061] The leaf nodes corresponding to each valid decision path are extracted to obtain the complete assignments of the first decision variables recorded in each leaf node. Specifically, the extraction process traverses all leaf nodes of the decision search tree. For each leaf node, the complete path from the root node to that leaf node is traced back. The node sequence on this path records the assignment order and values ​​of each first decision variable. These assignment information are summarized to form a set of first configuration results. By extracting all leaf nodes, multiple sets of first configuration results are obtained, each set of first configuration results being a complete hardware selection scheme that satisfies the constraints.

[0062] 204. For each group of first configuration results, determine the effective second decision variables in the second configuration subspace based on the constraint relationships in the assembly requirement data model, optimize the effective second decision variables, and obtain the second configuration result corresponding to the corresponding group of first configuration results; In this embodiment, the step of determining the effective second decision variables in the second configuration subspace based on the constraints in the assembly requirement data model for each group of first configuration results, and optimizing the effective second decision variables to obtain the second configuration result corresponding to the corresponding group of first configuration results includes: judging the compatibility of each second decision variable in the second configuration subspace with the current group of first configuration results based on the constraints in the assembly requirement data model; marking the second decision variables compatible with the current group of first configuration results as effective variables; determining the feasible value range of each effective variable under the current group of first configuration results; iteratively optimizing each effective variable within the corresponding feasible value range; selecting one effective variable in each iteration while keeping the values ​​of other effective variables unchanged; searching for the optimal value point of the objective function within the feasible value range of the selected effective variable; and updating the current value of the selected effective variable; summarizing the values ​​of each effective variable after iterative optimization to obtain the second configuration result corresponding to the current group of first configuration results.

[0063] Specifically, S204: Optimization of the second configuration subspace In this embodiment, for each group of first configuration results obtained in step S203, the continuous decision variables in the second configuration subspace are optimized to determine the specific values ​​of each continuous parameter.

[0064] The compatibility of each second decision variable in the second configuration subspace with the first configuration result of the current group is determined based on the constraints in the assembly requirements data model. It should be noted that the second decision variables correspond to continuous parameter configurations, and these variables may have different applicability under different hardware selections. Some second decision variables are only meaningful when specific hardware components are selected, while the feasible value range of other second decision variables is constrained by the first configuration result.

[0065] Specifically, for each second decision variable in the second configuration subspace, the correlation between that variable and the first configuration result of the current group is examined. This correlation is determined through the constraints in the assembly requirements data model. For example, the validity of the second decision variable, accelerator card power allocation, depends on whether the first configuration result includes accelerator card hardware. If the first configuration result of the current group selects an accelerator card, then this variable is valid, and a specific power allocation value needs to be determined for it; if the first configuration result does not select an accelerator card, then this variable is meaningless under the current configuration and is not a valid variable. Similarly, the second decision variable, memory capacity, although valid under almost all hardware selections, has a feasible range of values ​​that is affected by the first configuration result. For example, the number of memory slots on the selected motherboard and the maximum capacity of a single memory module limit the upper limit of the total memory capacity.

[0066] Based on the above judgment, the second decision variable that is compatible with the first configuration result of the current group is marked as a valid variable. It can be understood that the set of valid variables is the set of continuous decision variables that require parameter configuration under the current hardware selection.

[0067] After identifying the effective variables, the feasible value range of each effective variable under the first configuration result of the current group is determined. The feasible value range is determined by two factors. One is the physical constraints of the second decision variable itself, which come from the inherent limitations of the hardware components. For example, memory capacity cannot be negative, and there are physical minimum and maximum speed limits for cooling fans. The other is the conditional constraints imposed by the first configuration result, which stem from the constraints of the determined hardware selection on the continuous parameter configuration.

[0068] Specifically, for each valid variable, its theoretical feasible region is first obtained, which is the upper and lower bounds of the variable's value without considering the current hardware selection. Then, based on the hardware component information determined in the first configuration result of the current group, constraints are applied to tighten the theoretical feasible region. For example, the theoretical feasible region of memory capacity might be the maximum range supported by the hardware technology, but once the specific motherboard model is determined in the first configuration result, the number of memory slots on the motherboard and the capacity limit of a single memory module will tighten the feasible region to a smaller practical range. Similarly, the feasible region of accelerator card power allocation is constrained by the total power of the power supply and the power consumption of other hardware components. After the power supply model and each hardware component are determined in the first configuration result, the power range that can be allocated to the accelerator card is limited to the remaining range after subtracting other fixed power consumption from the total power.

[0069] By applying constraints layer by layer, the actual feasible value range of each effective variable under the first configuration result of the current group is obtained. It should be noted that the process of determining the feasible value range is essentially transforming global constraints into local constraints specific to the current hardware selection, so that subsequent optimization processes can be carried out under the premise of satisfying the constraints.

[0070] After determining the feasible range of values ​​for each effective variable, iterative optimization is performed on each effective variable within its corresponding feasible range. The goal of optimization is to find the optimal combination of effective variable values ​​that maximizes the objective function value while satisfying constraints. It should be noted that the objective function reflects the evaluation criteria for optimization and can be set according to specific needs. For example, the objective function could be a comprehensive evaluation of prediction performance and cost, cost minimization while meeting performance thresholds, or performance maximization within a cost budget.

[0071] Specifically, the iterative optimization employs a coordinate rotation strategy. In each iteration, a valid variable is selected as the current optimization object, while the values ​​of other valid variables remain unchanged. For the currently selected valid variable, a search is performed within its feasible value range to find the point where the objective function value is optimal. It can be understood that, since the values ​​of other valid variables are fixed, the current optimization problem is transformed into a single-variable optimization, the search space is reduced from multi-dimensional to one-dimensional, and the optimization process is relatively simplified.

[0072] The search process can be implemented using various methods. For example, several candidate points can be sampled uniformly within the feasible range, and the objective function value corresponding to each candidate point can be calculated one by one. The candidate point that optimizes the objective function value can then be selected as the new value of the effective variable. Alternatively, if the objective function exhibits some smoothness or monotonicity with respect to the effective variable, numerical optimization methods such as gradient descent or golden section search can be used to efficiently locate the optimal point within the feasible range. Regardless of the search method used, the core idea is to find the optimal value of the objective function in the current dimension while keeping other variables constant.

[0073] After optimizing the current effective variable, the current value of that effective variable is updated to the optimal value obtained from the search. Then, the next iteration begins, selecting another effective variable and performing a similar optimization process. By rotating and optimizing each effective variable one by one, the values ​​of the entire set of effective variables are continuously adjusted during the iteration process, and the objective function value gradually approaches the optimal direction.

[0074] The iterative optimization process continues until a termination condition is met. The termination condition can be that the improvement in the objective function value is less than a preset threshold, indicating convergence; or that the preset maximum number of iterations has been reached to avoid over-iteration. It should be noted that while the coordinate rotation strategy reduces the complexity of the optimization by decomposing the multidimensional optimization problem into multiple single-dimensional sub-problems, it may also cause the optimization process to converge to a local optimum rather than the global optimum in certain situations. In practical applications, the problem of local optima can be mitigated by multiple initializations or the introduction of random perturbations.

[0075] After iterative optimization, the values ​​of each effective variable are summarized to obtain the second configuration result corresponding to the first configuration result of the current group. The second configuration result contains the specific values ​​of all effective variables, which achieve the optimization of the objective function under the current hardware selection. It can be understood that the second configuration result and the first configuration result together constitute a complete assembly scheme; the first configuration result determines the selection of hardware components, and the second configuration result determines the parameter configuration of each hardware component.

[0076] 205. Combine the first configuration results of each group with the corresponding second configuration results to obtain multiple candidate assembly schemes; 206. Based on the assembly requirement data model, the performance and cost of each candidate assembly scheme are evaluated to obtain the quality evaluation value, and the candidate assembly scheme with the best quality evaluation value is used as the target assembly scheme for server assembly.

[0077] In this embodiment, step 206 is similar to step 104 in the first embodiment, and will not be described again here.

[0078] In this embodiment, an assembly requirement data model is constructed by extracting features from workload requirements and hardware resource pools. Based on this data model, the assembly configuration space is decomposed hierarchically, identifying discrete and continuous decision dimensions, and dividing them into a first configuration subspace and a second configuration subspace, respectively. Multiple configuration results are obtained by searching the first configuration subspace based on constraint relationships. The second configuration subspace is then optimized for each set of configuration results, generating multiple candidate assembly schemes. The candidate schemes are evaluated to obtain quality assessment values, and the optimal scheme is output. This invention can generate server assembly schemes that balance performance and cost while meeting workload requirements and comprehensively considering the constraints between hardware components, avoiding problems such as performance mismatch or unbalanced resource allocation among hardware components.

[0079] The server adaptive assembly method in the embodiments of the present invention has been described above. The server adaptive assembly apparatus in the embodiments of the present invention will be described below. Please refer to [link to relevant documentation] for details. Figure 3 One embodiment of the server adaptive assembly device in this invention includes: The feature extraction module 301 is used to extract features from the user-input workload requirements and hardware resource pool, obtain the load feature set corresponding to the workload requirements and the resource feature set corresponding to the hardware resource pool, and construct an assembly requirement data model based on the load feature set and the resource feature set. The spatial decomposition module 302 is used to perform hierarchical decomposition of the assembly configuration space according to the assembly requirement data model, identify the first decision variable of the discrete decision dimension and the second decision variable of the continuous decision dimension in the assembly configuration space, and divide the first decision variable and the second decision variable into the first configuration subspace and the second configuration subspace, respectively. The scheme generation module 303 is used to generate multiple candidate assembly schemes based on the first configuration subspace, the second configuration subspace and the assembly requirement data model; The solution evaluation module 304 is used to perform performance and cost evaluations on each candidate assembly solution based on the assembly requirement data model to obtain a quality evaluation value, and to use the candidate assembly solution with the best quality evaluation value as the target assembly solution for server assembly.

[0080] In this embodiment of the invention, the server adaptive assembly device runs the aforementioned server adaptive assembly method. The device extracts features from workload requirements and the hardware resource pool to construct an assembly requirement data model. Based on this data model, it hierarchically decomposes the assembly configuration space, identifying discrete and continuous decision dimensions, and assigns them to a first configuration subspace and a second configuration subspace, respectively. Based on constraint relationships, it searches the first configuration subspace to obtain multiple sets of configuration results, optimizes the second configuration subspace for each set of results, and combines them to generate multiple candidate assembly schemes. The candidate schemes are evaluated to obtain quality assessment values, and the optimal scheme is output. This invention can generate a server assembly scheme that balances performance and cost while meeting workload requirements, comprehensively considering the constraints between hardware components, and avoiding problems such as performance mismatch or unbalanced resource allocation among hardware components.

[0081] above Figure 3 The server adaptive assembly device in this embodiment of the invention will be described in detail from the perspective of unitized functional entities. The server adaptive assembly equipment in this embodiment of the invention will be described in detail from the perspective of hardware processing.

[0082] Figure 4This is a schematic diagram of a server adaptive assembly device 400 provided in an embodiment of the present invention. The server adaptive assembly device 400 can vary significantly due to different configurations or performance. It may include one or more central processing units (CPUs) 410 (e.g., one or more processors) and a memory 420, and one or more storage media 430 (e.g., one or more mass storage devices) for storing application programs 433 or data 432. The memory 420 and storage media 430 can be temporary or persistent storage. The program stored in the storage media 430 may include one or more units (not shown in the diagram), each unit may include a series of instruction operations on the server adaptive assembly device 400. Furthermore, the processor 410 may be configured to communicate with the storage media 430 and execute the series of instruction operations in the storage media 430 on the server adaptive assembly device 400 to implement the steps of the above-described server adaptive assembly method.

[0083] The server adaptive assembly device 400 may also include one or more power supplies 440, one or more wired or wireless network interfaces 450, one or more input / output interfaces 460, and / or one or more operating systems 431, such as Windows Server, Mac OS X, Unix, Linux, FreeBSD, etc. Those skilled in the art will understand that... Figure 4 The server adaptive assembly device structure shown does not constitute a limitation on the server adaptive assembly device provided by the present invention. It may include more or fewer components than shown, or combine certain components, or have different component arrangements.

[0084] The present invention also provides a computer-readable storage medium, which may be a non-volatile computer-readable storage medium or a volatile computer-readable storage medium, wherein the computer-readable storage medium stores instructions that, when executed on a computer, cause the computer to perform the steps of the server adaptive assembly method.

[0085] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working process of the system, device, or unit described above can be referred to the corresponding process in the foregoing method embodiments, and will not be repeated here.

[0086] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it 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 all or part 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. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0087] The above-described embodiments are only used to illustrate the technical solutions of the present invention, and are not intended to limit it. Although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present invention.

Claims

1. A server adaptive assembly method, characterized in that, The server adaptive assembly method includes: Feature extraction is performed on the user-input workload requirements and hardware resource pool to obtain the load feature set corresponding to the workload requirements and the resource feature set corresponding to the hardware resource pool, and an assembly requirement data model is constructed based on the load feature set and the resource feature set. Based on the assembly requirement data model, the assembly configuration space is decomposed into layers, and the first decision variable of the discrete decision dimension and the second decision variable of the continuous decision dimension in the assembly configuration space are identified. The first decision variable and the second decision variable are respectively assigned to the first configuration subspace and the second configuration subspace. Multiple candidate assembly schemes are generated based on the first configuration subspace, the second configuration subspace, and the assembly requirement data model. Based on the assembly requirements data model, the performance and cost of each candidate assembly scheme are evaluated to obtain a quality evaluation value. The candidate assembly scheme with the best quality evaluation value is then used as the target assembly scheme for server assembly.

2. The server adaptive assembly method according to claim 1, characterized in that, The step of extracting features from the user-input workload requirements and hardware resource pool to obtain the load feature set corresponding to the workload requirements and the resource feature set corresponding to the hardware resource pool, and constructing an assembly requirement data model based on the load feature set and resource feature set, includes: The workload requirements are analyzed to extract the computing requirements, communication requirements, and storage requirements of the workload, thus obtaining a load feature set. Attributes are extracted from each hardware component in the hardware resource pool to obtain the performance characteristics, compatibility characteristics, and capacity characteristics of each hardware component, thus obtaining a resource feature set. Based on the load feature set and resource feature set, the constraint relationship between hardware components and workload requirements is constructed, resulting in an assembly requirement data model that includes the load feature set, resource feature set, and constraint relationship.

3. The server adaptive assembly method according to claim 1, characterized in that, The step of hierarchically decomposing the assembly configuration space according to the assembly requirement data model, identifying the first decision variable of the discrete decision dimension and the second decision variable of the continuous decision dimension in the assembly configuration space, and dividing the first and second decision variables into the first configuration subspace and the second configuration subspace respectively includes: The optional configuration items of hardware components are enumerated based on the resource feature set in the assembly requirements data model to obtain the assembly configuration space. The value type of each configuration dimension in the assembly configuration space is determined, and the decision variable corresponding to the configuration dimension with a discrete value is marked as the first decision variable, and the decision variable corresponding to the configuration dimension with a continuous value is marked as the second decision variable. Based on the constraints in the assembly requirements data model, the dependencies between the first decision variables are analyzed, and a first configuration subspace containing the first decision variables and their dependencies is constructed. The second decision variables are then constructed as a second configuration subspace.

4. The server adaptive assembly method according to claim 1, characterized in that, The step of generating multiple candidate assembly schemes based on the first configuration subspace, the second configuration subspace, and the assembly requirement data model includes: Based on the constraints in the assembly requirements data model, the first decision variable in the first configuration subspace is searched to obtain multiple sets of first configuration results that satisfy the constraints. For each group of first configuration results, the effective second decision variables in the second configuration subspace are determined based on the constraint relationships in the assembly requirement data model. The effective second decision variables are then optimized to obtain the second configuration result corresponding to the corresponding group of first configuration results. The first configuration results of each group are combined with the corresponding second configuration results to obtain multiple candidate assembly schemes.

5. The server adaptive assembly method according to claim 4, characterized in that, The search for the first decision variable in the first configuration subspace based on the constraint relationship in the assembly requirement data model, to obtain multiple sets of first configuration results that satisfy the constraint relationship, includes: A decision search tree is constructed based on the dependency relationship between the first decision variables in the first configuration subspace. The root node of the decision search tree corresponds to the empty configuration state, each intermediate node corresponds to the partial assignment state of the first decision variable, and each leaf node corresponds to the complete assignment state of the first decision variable. Starting from the root node of the decision search tree, each decision path is traversed and expanded. During the expansion process, decision branches that do not meet the constraints are pruned according to the constraints in the assembly requirement data model, resulting in multiple valid decision paths from the root node to the leaf node. Extract the leaf nodes corresponding to each effective decision path, and obtain the complete values ​​of the first decision variables corresponding to each leaf node as multiple sets of first configuration results.

6. The server adaptive assembly method according to claim 4, characterized in that, The step of determining effective second decision variables in the second configuration subspace for each group of first configuration results based on the constraints in the assembly requirement data model, and optimizing the effective second decision variables to obtain the second configuration result corresponding to the corresponding group of first configuration results includes: Based on the constraints in the assembly requirements data model, the compatibility of each second decision variable in the second configuration subspace with the first configuration result of the current group is judged. Second decision variables that are compatible with the first configuration result of the current group are marked as valid variables, and the feasible value range of each valid variable under the first configuration result of the current group is determined. Iterative optimization is performed on each effective variable within its corresponding feasible value range. In each iteration, one effective variable is selected while keeping the values ​​of other effective variables unchanged. The optimal value of the objective function is searched within the feasible value range of the selected effective variable, and the current value of the selected effective variable is updated. The values ​​of each effective variable after iterative optimization are summarized to obtain the second configuration result corresponding to the first configuration result of the current group.

7. The server adaptive assembly method according to claim 1, characterized in that, The process of obtaining quality evaluation values ​​by performing performance and cost assessments on each candidate assembly scheme based on the assembly requirement data model includes: Based on the load feature set in the assembly requirement data model, the performance of each candidate assembly scheme is predicted, and the performance index of each candidate assembly scheme under the load feature set is obtained. Based on the resource feature set in the assembly requirement data model, the cost of hardware component configuration for each candidate assembly scheme is calculated to obtain the cost index of each candidate assembly scheme. Each candidate assembly scheme is comprehensively scored based on performance and cost indicators to obtain the corresponding quality evaluation value.

8. A server adaptive assembly device, characterized in that, The server adaptive assembly device includes: The feature extraction module is used to extract features from the user-input workload requirements and hardware resource pool, obtain the load feature set corresponding to the workload requirements and the resource feature set corresponding to the hardware resource pool, and construct an assembly requirement data model based on the load feature set and the resource feature set. The spatial decomposition module is used to perform hierarchical decomposition of the assembly configuration space according to the assembly requirement data model, identify the first decision variable of the discrete decision dimension and the second decision variable of the continuous decision dimension in the assembly configuration space, and divide the first decision variable and the second decision variable into the first configuration subspace and the second configuration subspace, respectively. The scheme generation module is used to generate multiple candidate assembly schemes based on the first configuration subspace, the second configuration subspace, and the assembly requirement data model. The solution evaluation module is used to perform performance and cost evaluations on each candidate assembly solution based on the assembly requirements data model to obtain a quality evaluation value, and then selects the candidate assembly solution with the best quality evaluation value as the target assembly solution for server assembly.

9. A server adaptive assembly device, characterized in that, The server adaptive assembly device includes: a memory and at least one processor, wherein the memory stores instructions; The at least one processor invokes the instructions in the memory to cause the server adaptive assembly device to perform the steps of the server adaptive assembly method as described in any one of claims 1-7.

10. A computer-readable storage medium storing instructions thereon, characterized in that, When the instructions are executed by the processor, they implement the steps of the server adaptive assembly method as described in any one of claims 1-7.