A modular computing power and storage integrated server
Through modular design and intelligent regulation, elastic expansion and dynamic management of computing resources and storage resources are achieved, solving the problems of tight resource coupling and unreasonable bandwidth allocation in existing servers, and improving resource utilization and system performance.
Patent Information
- Application Number
- CN202510147169.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-02-11
- Publication Date
- 2025-05-30
- Estimated Expiration
- 2045-02-11
AI Technical Summary
In the existing server architecture, the computing resources and storage resources are tightly coupled, the expansion is inflexible, and the data transmission bandwidth allocation is unreasonable, resulting in resource waste and system performance bottlenecks.
Design a modular computing power storage integrated server, including computing module, storage module, bus module, control module and optimization module. Resource expansion decisions and bandwidth allocation strategies are implemented through fuzzy inference and genetic algorithms, and modular hot plugging and dynamic bandwidth priority allocation are supported.
It realizes elastic expansion and dynamic management of computing resources and storage resources, improves resource utilization and system performance, and is suitable for complex task scenarios.
Smart Images

Figure CN119621644B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of computer servers, and particularly to a modular computing power and storage integrated server. Background Art
[0002] With the rapid development of big data and artificial intelligence technologies, the demand for computing power and storage resources in data centers and high-performance computing fields is increasing day by day. However, in the existing server architectures, there are generally problems such as high coupling degree between computing resources and storage resources and lack of flexibility in resource allocation. Traditional servers usually adopt a fixed integrated design method, that is, the computing unit and the storage unit are directly integrated on the same main board. Although this tightly coupled design can meet the requirements under a single task load, in the case of dynamic load changes or complex task scenarios, it is prone to inefficient utilization of resources.
[0003] Specifically, it is difficult for the traditional server architecture to perform elastic expansion of resources under computing-intensive or storage-intensive task loads. When the computing tasks increase, there may be redundancy in the storage unit, while the computing unit cannot be expanded in time; conversely, in storage-intensive tasks, the computing unit is idle, but the storage unit cannot meet the requirements, resulting in waste of resources. In addition, the server expansion ability in the prior art is often limited by the hardware design, and resource expansion can only be achieved by upgrading the server hardware as a whole, which not only increases the operation and maintenance costs, but also affects the flexibility of the system.
[0004] At the same time, the data transmission bandwidth allocation of traditional servers lacks dynamics. In the collaborative work of the computing unit and the storage unit, the fixed bandwidth allocation method often cannot adapt to the real-time changes of the task load. For example, in storage-intensive tasks, due to the average distribution of bandwidth resources, the storage unit may have a performance bottleneck due to insufficient bandwidth, while the bandwidth resources of the computing unit may be idle. In addition, the existing bandwidth regulation technologies usually lack pertinence and cannot preferentially allocate bandwidth resources according to different task requirements, thus reducing the overall operation efficiency of the system.
[0005] In addition, most of the resource expansion and allocation strategies in the prior art adopt static rules and cannot adjust the resource configuration according to the real-time load, making it difficult to adapt to the dynamic requirements in complex scenarios. And the optimization of the rule base mainly relies on manual experience and lacks intelligent global optimization ability, resulting in poor performance of the expansion and regulation strategies in complex and changeable operation scenarios, further restricting the improvement of system performance.
[0006] Based on the above problems, it is difficult for the prior art to achieve dynamic management and efficient utilization of resources in complex task scenarios, and there is an urgent need for a modular, highly scalable, and highly intelligent server design and resource regulation method to meet the current diverse task requirements and improve the resource utilization rate and operation efficiency of the system. Summary of the Invention
[0007] Aiming at the deficiencies of the prior art, the present invention provides a modular computing power and storage integrated server, which solves the problems of tight coupling between computing resources and storage resources, inflexible expansion, and unreasonable data transmission bandwidth allocation in existing servers.
[0008] To achieve the above objectives, the present invention is realized through the following technical solutions: A modular computing power and storage integrated server, including a computing module, a storage module, a bus module, a control module, and an optimization module;
[0009] The computing module is used to provide high-performance computing capabilities and support modular hot pluggability;
[0010] The storage module is used to provide storage resources and support modular hot pluggability;
[0011] The bus module is used to achieve high-speed data transmission between the computing module and the storage module and support dynamic allocation of bandwidth priorities;
[0012] The control module generates resource expansion decisions and bandwidth allocation strategies based on fuzzy inference by collecting the operating states of the computing module, storage module, and bus module in real time;
[0013] The optimization module optimizes the fuzzy inference rules and membership function parameters of the control module through genetic algorithms to achieve global optimal regulation of system performance.
[0014] Preferably, the control module includes:
[0015] A data acquisition unit for monitoring computing load, storage utilization, I / O throughput, and bus bandwidth usage;
[0016] A fuzzy inference unit for inferring the monitored data based on a fuzzy rule base to generate resource expansion decisions and bandwidth allocation strategies.
[0017] Preferably, the fuzzy inference unit is based on the following input variables:
[0018] Computing load, representing the ratio of the current CPU usage rate to the total capacity;
[0019] Storage utilization, representing the ratio of the used storage capacity to the total storage capacity;
[0020] I / O throughput, representing the ratio of the current I / O operation rate to the maximum supported rate;
[0021] Bus bandwidth demand, representing the ratio of the current bus occupied bandwidth to the bus maximum bandwidth.
[0022] Preferably, the fuzzy rule base of the fuzzy inference unit includes the following rules:
[0023] When the computing load is high and the storage utilization rate is high, generate an expansion suggestion to increase the computing module and the storage module;
[0024] When the computing load is medium and the storage utilization rate is medium, generate an expansion suggestion to maintain the existing module configuration;
[0025] When the computing load is low and the storage utilization rate is low, generate an expansion suggestion to reduce the computing module or the storage module.
[0026] Preferably, the optimization module optimizes the fuzzy inference rule base and parameter settings of the control module through a genetic algorithm. The optimization process includes:
[0027] Randomly generate an initial population, where each individual represents a combination of the fuzzy rule base and membership function parameters;
[0028] Evaluate the performance of individuals in the population through a fitness function, and the fitness function is based on resource utilization rate, bandwidth allocation efficiency, and expansion response time;
[0029] Optimize the population through selection, crossover, and mutation operations to generate an optimized fuzzy rule base and parameter settings.
[0030] Preferably, the fitness function includes the following performance indicators:
[0031] Resource utilization rate, which represents the ratio of the actual resource usage to the total allocated resources;
[0032] Bandwidth allocation efficiency, which represents the ratio of the effective transmission bandwidth to the total allocated bandwidth;
[0033] Expansion response time, which represents the delay time from the load change to the generation of the expansion instruction.
[0034] Preferably, the bus module is designed based on the PCIe or CXL protocol, supports high-speed data interaction between the computing module and the storage module, and dynamically adjusts the bandwidth priority through the control module.
[0035] Preferably, the expansion suggestions generated by the control module include:
[0036] Dynamically increase the computing module to cope with the computing demands during peak periods;
[0037] Dynamically increase the storage module to meet data-intensive tasks;
[0038] Dynamically reduce idle modules to reduce resource energy consumption.
[0039] Preferably, the optimization module optimizes the fuzzy inference rule base through offline operation. The optimized rule base can adapt to different computing and storage requirements in real time under complex load scenarios, ensuring that the resource allocation of the server is close to the global optimum.
[0040] The present invention also provides a method for resource expansion and bandwidth allocation of a modular computing power and storage integrated server, including the following steps:
[0041] The control module collects the operation data of the computing module, storage module and bus module in real time, including computing load, storage utilization rate and bandwidth requirements;
[0042] Based on the collected operation data, the fuzzy inference unit generates resource expansion suggestions and bandwidth allocation strategies;
[0043] According to the resource expansion suggestions, adjust the configuration of the computing module or storage module, and initialize the new module;
[0044] Execute the bandwidth priority allocation strategy through the bus module to optimize the data flow between the computing module and the storage module;
[0045] The optimization module performs offline optimization on the fuzzy rule base and parameters, and updates the inference logic of the control module to improve the accuracy of future decisions.
[0046] The present invention provides a modular computing power and storage integrated server. It has the following beneficial effects:
[0047] (1) Through the real-time monitoring and fuzzy inference of the control module, the present invention dynamically adjusts the number and configuration of the computing module and the storage module, avoiding the waste phenomenon caused by the fixed allocation of computing resources and storage resources in traditional servers. By expanding and recycling resources on demand, the present invention can efficiently utilize the existing computing and storage resources in both high-load and low-load scenarios.
[0048] (2) Through the dynamic bandwidth allocation mechanism of the bus module and combining with the bandwidth allocation strategy generated by the control module, according to the computing-intensive or storage-intensive characteristics of different tasks, the bandwidth priority is adjusted in real time to reduce the data transmission bottleneck. This mechanism effectively improves the transmission efficiency and overall performance of the system under complex load scenarios.
[0049] (3) The present invention adopts a modular hot-plug design. Both the computing module and the storage module are connected through standardized interfaces, and modules can be quickly added or removed according to needs during operation. The offline regulation of the optimization module further improves the adaptability of the system to complex and changeable loads, making the server have good scalability and scenario adaptability.
[0050] (4) The genetic algorithm of the optimization module in the present invention optimizes the fuzzy rule base and membership function parameters of the control module, enabling the system to improve the dynamic decision-making logic based on historical operation data. The optimized rule base significantly enhances the accuracy and efficiency of extended decision-making and bandwidth allocation, thus ensuring the optimal global performance of the system during long-term operation. Brief Description of the Drawings
[0051] Figure 1 It is a schematic diagram of the server architecture of the present invention;
[0052] Figure 2 It is a schematic diagram of the process of the resource expansion and bandwidth allocation method of the present invention. Detailed Embodiment
[0053] Next, in conjunction with the accompanying drawings of the present invention, the technical solutions in the embodiments of the present invention will be clearly and completely described. Obviously, the described embodiments are only a part of the embodiments of the present invention, rather than all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those of ordinary skill in the art without creative efforts shall fall within the protection scope of the present invention.
[0054] Please refer to the attached Figure 1 , the present invention provides a modular computing power and storage integrated server. Through modular hardware design and intelligent software control, the server realizes the dynamic expansion and global optimization of computing power and storage resources. Specifically, the server includes a computing module, a storage module, a bus module, a control module, and an optimization module. Through the modular hot-swap mechanism and the cooperative work of the control module and the optimization module, the efficient utilization and dynamic regulation of resources are achieved. Next, each module of the modular computing power and storage integrated server of the present invention will be described in detail.
[0055] Computing Module
[0056] In this embodiment, the computing module is an important part of the modular computing power and storage integrated server, mainly used to provide high-performance computing capabilities. The computing module is connected to other modules (such as the bus module) through a standardized interface and supports modular hot-swap design, so that the computing power can be dynamically adjusted according to the operating state and computing requirements of the server.
[0057] As an option, the core components of the computing module may include high-performance processors (such as CPUs, GPUs, or TPUs) and caches. The processor is responsible for executing complex computing tasks, and the cache is used to accelerate the temporary access of data, thereby improving the overall computing efficiency. It should be noted that the number and specific configuration of the computing modules can be adjusted according to actual business needs.
[0058] Specifically, in this embodiment, the computing module is connected to the bus module through a standardized physical interface (such as PCIe or CXL). When the module is inserted into the server, the bus module can identify the module status and add it to the computing resource pool of the server through the initialization process.
[0059] In this embodiment, the operating status of the computing module is collected and monitored in real time by the control module, specifically including:
[0060] Definition and monitoring of computing load: The computing load L represents the ratio of the actual resource usage of the current computing module to its total computing capacity, and can be expressed as:
[0061]
[0062] where is the usage rate of the current processor, and is the total processing capacity of the computing module (such as the maximum frequency or the number of cores of the CPU). By monitoring in real time, the control module can determine whether the utilization rate of the computing module meets the current requirements.
[0063] Hot plug support and status feedback: When the computing module is inserted or removed, the bus module notifies the control module through a status signal. As an implementation method, when the computing module is inserted, the bus module will detect the connection status through the interface and send an insertion event to the control module; the control module then completes the initialization of the module, including module resource registration and computing task scheduling.
[0064] Exemplarily, in some operating scenarios, such as when L > 0.8 (that is, the CPU usage rate exceeds 80%), the control module may generate an expansion suggestion to prompt adding a new computing module to balance the system load. On the contrary, when L < 0.2 (that is, the CPU usage rate is lower than 20%), the system may suggest removing some idle computing modules to reduce power consumption.
[0065] As a possible implementation method, the resource expansion of the computing module can be achieved through the following process:
[0066] First, after inserting the computing module, the bus module identifies the new module and sends an event to the control module;
[0067] Secondly, the control module registers the new module to the resource pool according to the current system state and allocates appropriate tasks or computing loads;
[0068] Finally, the control module monitors the working status of the new module in real time to ensure that it can operate efficiently after joining the system.
[0069] It should be noted that the tasks supported by the computing module can be diverse, including but not limited to:
[0070] General computing tasks: such as integer operations or floating-point operations performed by the CPU;
[0071] Parallel computing tasks: such as large-scale matrix operations or deep learning inference tasks processed by the GPU or TPU.
[0072] In some embodiments, in order to ensure the operating efficiency of the computing module, an independent power supply and heat dissipation system can also be designed for each module to ensure that the module will not overheat or its performance will not degrade due to insufficient power supply under high load.
[0073] In a possible implementation, the computing module can also support workload isolation. Specifically, the module can divide different computing resource pools according to the task type (such as high-priority tasks and low-priority tasks), so as to avoid low-priority tasks interfering with critical tasks.
[0074] In this embodiment, the computing module also has a fault detection and recovery function. For example, when a hardware fault occurs in the module, the bus module can detect the abnormal signal in time and notify the control module to perform isolation operations, so as to ensure the stability of the overall operation of the server.
[0075] It should be further noted that the design of the computing module adopts a modular concept, enabling users to dynamically adjust the computing power of the server according to specific needs. For example, in data analysis or deep learning scenarios, more computing modules can be added to meet high-load computing requirements; while in low-load scenarios (such as non-peak period task processing), some computing modules can be removed to save energy consumption.
[0076] In this embodiment, the implementation method of the computing module ensures the high flexibility and scalability of the server, while meeting diverse business needs. As an option, the standardized interface and modular design of the computing module also facilitate subsequent hardware upgrades or maintenance, making the life cycle of the system longer.
[0077] Storage module
[0078] In this embodiment, the storage module is an important part of the modular computing power and storage integrated server, mainly used to provide the storage capacity of the server. The storage module supports modular hot-swap design and is connected to other modules of the server through standardized interfaces to realize dynamic adjustment of data storage resources to meet the storage requirements in different task scenarios.
[0079] As an option, the main hardware of the storage module includes high-speed SSD (Solid State Drive) or large-capacity HDD (Hard Disk Drive). The storage module can be configured as a high-performance type (such as NVMe SSD) or a large-capacity type (such as SATA HDD) according to different application scenarios. It should be noted that different types of storage modules can be interchanged and combined through a unified physical interface (such as PCIe or SAS interface).
[0080] Specifically, in this embodiment, the operating status of the storage module is collected and monitored in real time by the control module. The collected content includes but is not limited to storage utilization rate, data read / write rate, and the operating status of the module. Storage utilization rate S is the core monitoring index of the storage module, which is used to represent the proportion of the currently used storage resources in the total storage capacity, and can be expressed as:
[0081]
[0082] wherein, represents the currently used storage capacity, represents the total capacity of the storage module. By monitoring S , the control module can judge the occupancy of storage resources and generate suggestions for expansion or reduction.
[0083] In a possible implementation manner, when the storage utilization rate S > 0.7 (that is, the storage occupancy rate exceeds 70%), the control module may prompt to add a new storage module to meet the requirements of storage-intensive tasks; when S < 0.2 (that is, the storage occupancy rate is lower than 20%), the system can prompt to remove the idle storage module to optimize the resource utilization rate.
[0084] It should be noted that during the insertion or removal of the storage module, the bus module is responsible for detecting the connection status of the storage module and sending events to the control module. For example, when a new storage module is inserted, the bus module will detect the hardware connection signal and notify the control module to execute the initialization operation of the module, including the registration of storage capacity and the configuration of storage paths.
[0085] Exemplarily, in some embodiments, the storage module can support partitioned storage and task isolation. Specifically, the storage module can allocate independent storage partitions according to the different priorities of tasks. For example, high-priority tasks can preferentially use high-speed storage modules, while low-priority tasks can be allocated to large-capacity storage modules. This partitioning mechanism can avoid resource competition between high-priority tasks and low-priority tasks.
[0086] In this embodiment, the storage module also supports fault detection and isolation functions. During the operation of the module, the bus module can monitor the operating status of the storage module through hardware signals. For example, when detecting abnormal I / O responses of the storage module, the bus module will feedback this information to the control module, and the control module will further stop task allocation to the faulty module through isolation operations to ensure the stability of the overall storage system of the server.
[0087] As an option, the storage module can support different storage modes, such as cache mode and pass-through mode. In cache mode, the storage module can cooperate with the computing module to store frequently used data in high-speed SSDs to improve access efficiency; in pass-through mode, the storage module directly responds to the read and write requirements of large-scale data, such as cold data archiving or data backup tasks.
[0088] In another possible implementation, the storage module supports the dynamic migration function of storage loads. Specifically, when the utilization rate of a certain storage module is too high, the control module can schedule data migration operations to disperse some storage loads to other storage modules to reduce the pressure on a single module. This dynamic migration function can improve the balance and reliability of the overall storage system of the server.
[0089] It should be further noted that the design of the storage module adopts a modular concept, enabling users to flexibly adjust the storage capacity according to actual needs. For example, when dealing with large-scale historical data, storage modules can be quickly added to expand storage capabilities; while in low-load scenarios, some storage modules can be removed to save energy consumption.
[0090] In some embodiments, to improve the operating efficiency of the storage module, data compression or encryption functions can be integrated inside the module. For example, when receiving data, the storage module can perform real-time compression first to reduce the actual occupied storage space; in scenarios of sensitive data, the storage module can perform hardware-level encryption processing on the data to improve data security.
[0091] It can be understood that the initialization process of the storage module has an important impact on the overall performance of the server. In this embodiment, when a new storage module is inserted, the control module will first check the hardware compatibility of the module, and then complete the allocation of the storage path and resource registration operations to ensure that the module can operate normally in a short time.
[0092] In this embodiment, the design and implementation method of the storage module ensure that the storage resources of the server have high scalability and flexibility.
[0093] Bus module
[0094] In this embodiment, the bus module is one of the core components of a modular computing power and storage integrated server, mainly used to achieve high-speed data transmission between the computing module and the storage module. The bus module is connected to the computing module and the storage module through a standardized interface that supports modular hot pluggability, and provides a necessary channel for the efficient interaction of data.
[0095] As an option, the bus module is designed with a high-performance interface protocol, such as PCIe (Peripheral Component Interconnect Express) or CXL (Compute Express Link). These protocols can provide high-bandwidth and low-latency communication capabilities for data transmission between modules, and ensure the reliability and consistency of data transmission when dynamically adjusting module configurations.
[0096] Specifically, in this embodiment, the functions of the bus module include data transmission management, dynamic bandwidth allocation, and module status detection. Through the integration of these functions, the bus module realizes the efficient regulation of the data flow inside the server and supports the flexible combination of the computing module and the storage module.
[0097] In a possible implementation, the dynamic bandwidth allocation function of the bus module is one of its core features. The bandwidth allocation is adjusted according to the current operating state and module requirements. It should be noted that the dynamic bandwidth allocation is based on the strategy provided by the control module, and by adjusting the data transmission priority and bandwidth ratio, it meets the resource requirements of different modules in different scenarios.
[0098] Exemplarily, in data-intensive tasks, such as when the storage module needs to perform large-scale data backup, the bus module can preferentially allocate more bandwidth to the storage module; while in compute-intensive tasks, such as when the computing module needs to process complex high-performance computing, the bus module will preferentially meet the data transmission requirements of the computing module.
[0099] It can be understood that the bandwidth requirement allocation of the bus module can be expressed by the following formula:
[0100]
[0101] where represents the bandwidth allocated to a certain module, represents the total available bandwidth, represents the bandwidth weight of the current module. By dynamically adjusting the weight , the on-demand allocation of bandwidth resources can be achieved.
[0102] As an implementation, the bus module further includes a module status detection unit. This unit can monitor the physical status of the computing module and the storage module connected to the bus module in real time. For example, when a module is connected to the bus module through a hot-pluggable interface, the status detection unit can capture the hardware connection signal and notify the control module of this event. The control module then completes the initialization configuration of the new module.
[0103] It should be noted that the module status detection of the bus module is not limited to the hardware connection status, but can also include the monitoring of the module operating status. For example, when the data transmission delay of a certain module is abnormally high, the bus module can capture this abnormality through the operating status monitoring function and send an alarm signal to the control module. The control module further takes measures according to the alarm signal, such as reallocating bandwidth or isolating the faulty module.
[0104] In this embodiment, the bus module also has an error detection and recovery function for data transmission. For example, when an error occurs during data transmission (such as packet loss or checksum failure), the bus module can detect the problem through the error detection mechanism and automatically trigger a data retransmission operation to ensure the integrity of data transmission.
[0105] In some embodiments, the bus module supports multi-channel parallel transmission to further improve the efficiency of data transmission. Specifically, each computing module or storage module can be assigned an independent data channel, thus avoiding interference between the data streams of different modules. This multi-channel transmission design is particularly suitable for scenarios of high-performance computing and large-scale data processing.
[0106] In another possible implementation, the bus module supports dynamic bandwidth scheduling and priority management. For example, the bus module can set a higher transmission priority for critical tasks and allocate lower bandwidth resources for low-priority tasks. The strategy of priority management is provided by the control module and implemented through the hardware scheduling mechanism of the bus module.
[0107] It should be further noted that the design of the bus module adopts a modular concept, and its standardized interface can be compatible with different types of computing modules and storage modules. This design not only improves the flexibility of the server but also facilitates the upgrade and maintenance of the modules. For example, when higher transmission performance is required, the demand can be met by replacing the bus module with a higher specification without changing the hardware configuration of other modules.
[0108] In this embodiment, the initialization process of the bus module is crucial. When the server starts up or a new module is inserted, the bus module will first detect the type of the connected module and complete the necessary initialization operations, including data path configuration and bandwidth resource registration. This initialization process ensures that the module can quickly integrate into the resource pool of the server and participate in data interaction.
[0109] In summary, the bus module in this embodiment provides reliable communication guarantee for the modular computing power and storage integrated server by supporting high-speed data transmission, dynamic bandwidth allocation, and module status detection.
[0110] Control Module
[0111] In this embodiment, the control module is the core management unit of the modular computing power and storage integrated server, responsible for coordinating the various functional modules of the server, including the computing module, the storage module, and the bus module. The main function of the control module is to generate resource expansion decisions and bandwidth allocation strategies through real-time acquisition of the system operation status using fuzzy inference, and dynamically regulate the operation status of each module to achieve the efficient operation of the system.
[0112] As an option, the functional structure of the control module may include the following sub-units: a data acquisition unit, a fuzzy inference unit, and an instruction issuing unit. The data acquisition unit is responsible for obtaining the server operation status in real time; the fuzzy inference unit performs logical analysis and processing on the acquired data; the instruction issuing unit is used to transfer the generated expansion decisions and bandwidth policies to the corresponding modules.
[0113] Specifically, in this embodiment, the data acquisition unit monitors the operation status of the computing module and the storage module in real time through the communication interface with the bus module, including computing load, storage utilization rate, and bus bandwidth usage.
[0114] As a possible implementation, the control module can also monitor the bandwidth occupancy rate B of the bus module, that is, the ratio of the currently used bandwidth to the total bandwidth, which is expressed by the following formula:
[0115]
[0116] where, is the currently used bus bandwidth, is the maximum bandwidth of the bus module.
[0117] In a possible implementation, the fuzzy inference unit generates resource expansion decisions and bandwidth allocation strategies according to the above-mentioned collected metrics in combination with a preset fuzzy rule base. For example, the fuzzy inference unit can generate expansion suggestions according to the following rules:
[0118] When the computing load is high and the storage utilization rate is medium, prompt to increase the computing module;
[0119] When the storage utilization rate is high and the bus bandwidth occupancy rate is low, prompt to increase the storage module;
[0120] When the computing load is low and the storage utilization rate is low, prompt to remove redundant modules to reduce power consumption.
[0121] Exemplarily, the input variables of the rules in the fuzzy rule base include computing load , storage utilization and bus bandwidth requirement . The fuzzy inference unit calculates the output membership degree through the min-max inference method:
[0122]
[0123] The output result is defuzzified by the weighted average method to generate an extended decision and a bandwidth allocation strategy , and its formula is:
[0124]
[0125] It should be noted that the rule base and membership function parameters of the fuzzy inference unit are generated by the optimization module offline. The optimization module optimizes the inference logic of the control module through the genetic algorithm, enabling it to generate more accurate extended suggestions and bandwidth strategies in complex load scenarios.
[0126] In another possible implementation, the instruction issuing unit of the control module transmits the decisions and strategies generated by the fuzzy inference unit to the computing module and the storage module, dynamically adjusting the configuration status of the modules. For example, when it is prompted to increase the computing module, the instruction issuing unit completes the registration operation of the new computing module through the bus module; when it is prompted to reduce the storage module, the instruction issuing unit notifies the storage module to stop the current task and complete a safe uninstallation.
[0127] It can be understood that the control module not only considers the current running state in resource expansion decisions but also can predict future resource requirements through fuzzy inference. For example, when a peak load is approaching, the control module can increase module resources in advance to avoid system performance limitations; when the load shows an obvious downward trend, the control module can pre-release excess resources.
[0128] As an implementation, the control module also has a fault detection function. For example, when the status signals of the computing module or the storage module are abnormal (such as excessive response latency or data transmission interruption), the control module can identify the abnormality and generate an alarm signal to prompt the relevant module to perform fault isolation or task migration.
[0129] It should be further noted that the design of the control module ensures that it can be adapted to various types of hardware modules. Through standardized interface protocols (such as I²C or PCIe), the control module can be compatibly connected to computing modules and storage modules from different manufacturers, thereby improving the hardware flexibility and scalability of the server.
[0130] In this embodiment, the control module realizes the dynamic resource regulation and intelligent management of the modular computing power storage integrated server through real-time monitoring, fuzzy inference, and instruction issuance.
[0131] Optimization module
[0132] In this embodiment, the optimization module is an important part of the modular computing power storage integrated server, mainly used to dynamically adjust the fuzzy inference rule base and membership function parameters of the control module through offline optimization, so as to improve the accuracy and adaptability of the control module to generate extended decision-making and bandwidth allocation strategies.
[0133] As an option, the optimization module uses a genetic algorithm to optimize the fuzzy inference rule base and parameters. The genetic algorithm has global search capabilities, can effectively avoid local optimum problems, and is suitable for complex and changing load scenarios. The optimization results of the optimization module can be applied to the control module after periodic updates to ensure the continuous improvement of the system's intelligent regulation capabilities.
[0134] Specifically, in this embodiment, the working process of the optimization module includes four stages: data collection, fitness evaluation, genetic operation, and parameter update. The following will be described in detail respectively:
[0135] In a possible implementation, the optimization module first collects historical data during the operation of the server through interaction with the control module, including the load fluctuations of the computing module, the utilization rate changes of the storage module, and the bandwidth occupancy of the bus module. These data serve as the basis for the optimization process and provide a reliable basis for subsequent fitness evaluation.
[0136] It should be noted that fitness evaluation is the core step of the optimization module. The optimization module calculates the fitness value based on the following formula :
[0137]
[0138] Where:
[0139] represents the resource utilization rate, defined as the ratio of the actual resource usage to the total allocated resources;
[0140] represents the extended response time, that is, the time from load change to the generation of extended decisions;
[0141] represents the bandwidth allocation efficiency, defined as the ratio of the effectively allocated bandwidth to the total allocated bandwidth;
[0142] , , is a weight parameter, which is set according to the specific application scenario.
[0143] Exemplarily, the optimization module calculates the fitness for different combinations of fuzzy rule bases and membership function parameters, and selects the combination with the optimal performance according to the fitness value.
[0144] As an implementation, the genetic operations include three sub-steps: selection, crossover, and mutation. Selection picks out the better individuals from the population according to the fitness value for generating the next generation. Crossover performs partial exchange on the two selected fuzzy rule bases or parameter sets to produce new rule combinations. Mutation randomly adjusts some of the membership function parameters to increase the diversity of the population.
[0145] It should be further noted that the design of the crossover and mutation operations ensures that the optimization module can explore new rule combinations to a certain extent while maintaining the inheritance of existing individuals with high fitness. For example, for the fuzzy rule base of computing load, the crossover operation may partially combine the rule of "increasing the computing module at high load" with the rule of "maintaining the existing configuration at medium load" to generate a new rule combination.
[0146] In another possible implementation, the optimization module specifically optimizes the membership function parameters. The optimization of the membership function parameters aims to adjust the fuzzy membership degree of the input variables to better conform to the actual business scenario. For example, the membership function of computing load may be optimized from " " to " ", so that the inference result can respond more sensitively to the rapid change of the load.
[0147] It can be understood that the optimization process of the optimization module is carried out offline, which means that the optimization operation will not affect the real-time performance of the server. After the optimization process is completed, the optimization module updates the optimal fuzzy rule base and membership function parameters to the control module, and the control module applies these optimization results in subsequent real-time inferences.
[0148] As an option, the optimization period of the optimization module can be adjusted according to the actual situation of the system operation. For example, in the case of frequent load fluctuations or low system operation performance, the optimization period can be shortened to adapt to the changes more quickly; while in the scenario of stable load, the optimization period can be appropriately extended to reduce the resource occupancy of the optimization process.
[0149] In a possible implementation, the optimization module can also perform multi-objective optimization. For example, in some scenarios, the resource utilization rate can be used as the main optimization goal, while in other scenarios, more attention may be paid to the bandwidth allocation efficiency or the extended response time. This multi-objective optimization is achieved by adjusting the weight parameters in the fitness function to meet the requirements of different scenarios.
[0150] It should be further noted that the design of the optimization module adopts a modular concept and can operate independently of other parts of the server. This design not only improves the flexibility of the optimization module but also enables it to perform continuous optimization without affecting the normal operation of the server. For example, when the control module is executing real-time regulation tasks, the optimization module can utilize the idle resources of the server to complete the optimization tasks.
[0151] In this embodiment, the optimization module optimizes the fuzzy rule base and membership function parameters through a genetic algorithm, realizing continuous improvement of the intelligent regulation ability of the control module.
[0152] Generally speaking, the present invention realizes the elastic expansion and dynamic management of computing resources and storage resources through a modular hot-pluggable design and an intelligent regulation method. The computing module and the storage module support standardized interface connections and can flexibly adjust the configuration according to the load requirements; the bus module is responsible for realizing high-speed data transmission and dynamic bandwidth allocation; the control module generates resource expansion decisions and bandwidth allocation strategies based on fuzzy inference by real-time monitoring the system status; the optimization module offline optimizes the fuzzy rule base and membership function parameters through a genetic algorithm to improve the global performance of system regulation. The overall architecture design of the present invention improves the resource utilization rate, response efficiency, and operation stability of the server, is applicable to complex computing and large-scale storage scenarios, and has high practical value and flexibility.
[0153] Please refer to the attached Figure 2 , the present invention also provides a method for resource expansion and bandwidth allocation of a modular computing power and storage integrated server. The following describes its specific implementation manner.
[0154] In this embodiment, the core of the method is to realize the dynamic expansion of the computing module and the storage module and the optimized bandwidth allocation of the bus module through the collaborative work of the control module and the optimization module, so as to meet the resource requirements of the server in different scenarios.
[0155] S1. The control module collects the operation data of the computing module, the storage module, and the bus module in real time;
[0156] The control module collects the operation data of the computing module, the storage module, and the bus module in real time. In this embodiment, the operation data includes but is not limited to computing load, storage utilization rate, and bandwidth requirements. The acquisition unit of the control module obtains these data through the communication interface with the bus module, and the data content and its definition are as described above. For example, the computing load can be represented by the ratio of the current usage rate of the computing module to the total computing capacity, and the definition methods of the storage utilization rate and the bandwidth requirements are the same as those described above.
[0157] S2. Based on the collected operation data, use the fuzzy inference unit to generate resource expansion suggestions and bandwidth allocation strategies;
[0158] Based on the collected operation data, use the fuzzy inference unit to generate resource expansion suggestions and bandwidth allocation strategies. In this embodiment, the fuzzy inference unit performs reasoning through the fuzzy rule base and input data, generating expansion suggestions (such as increasing or decreasing computing modules / storage modules) and bandwidth allocation strategies (such as preferentially allocating bandwidth resources to computing modules or storage modules). The reasoning process and rule base structure have been given in the control module section and will not be elaborated here.
[0159] S3. According to the resource expansion suggestions, adjust the configuration of computing modules or storage modules and initialize new modules;
[0160] According to the resource expansion suggestions, adjust the configuration of computing modules or storage modules and complete the initialization of new modules. In this embodiment, when the reasoning result of the control module suggests adding new computing modules or storage modules, the system will detect the hot-plug state of physical modules and complete resource initialization. For example, when new modules are detected, the bus module will notify the control module to complete module registration and configuration, ensuring that they can join the existing resource pool and participate in task scheduling.
[0161] S4. Execute the bandwidth priority allocation strategy through the bus module to optimize the data flow between computing modules and storage modules;
[0162] Execute the bandwidth priority allocation strategy through the bus module to optimize the data flow between computing modules and storage modules. In this embodiment, the bus module receives the bandwidth allocation strategy generated by the control module and dynamically adjusts the bandwidth priority according to the strategy. For example, in storage-intensive tasks, the bus module will preferentially allocate more bandwidth to storage modules; in computing-intensive tasks, it will allocate higher-priority bandwidth resources to computing modules. The specific bandwidth allocation method can refer to the description in the bus module section.
[0163] S5. Offline optimize the fuzzy rule base and parameters through the optimization module, and update the reasoning logic of the control module to improve the accuracy of future decisions;
[0164] Offline optimize the fuzzy rule base and membership function parameters through the optimization module, and update the reasoning logic of the control module. In this embodiment, the optimization module periodically improves the reasoning logic of the control module to enhance its decision-making accuracy and adaptability. The optimization module analyzes historical operation data through genetic algorithms, and the optimized rule base and parameters are loaded by the control module in the next operation cycle to guide future resource expansion and bandwidth allocation.
[0165] Through the above method, this embodiment realizes the intelligent expansion and optimized management of server resources, can effectively cope with the changes in resource requirements in complex load scenarios, and improve the flexibility and performance of the system.
[0166] Although the embodiments of the present invention have been shown and described, those of ordinary skill in the art can understand that various changes, modifications, substitutions, and variations can be made to these embodiments without departing from the principles and spirit of the present invention. The scope of the present invention is defined by the appended claims and their equivalents.
Claims
1. A modular computing power and storage integrated server, characterized in that: It includes a computing module, a storage module, a bus module, a control module and an optimization module; The computing module is used to provide high-performance computing capabilities and supports modular hot plugging; The storage module is used to provide storage resources and supports modular hot plugging; The bus module is used to realize high-speed data transmission between the computing module and the storage module, and supports dynamic allocation of bandwidth priority; The control module collects the operating status of the computing module, the storage module and the bus module in real time, and generates resource expansion decisions and bandwidth allocation strategies based on fuzzy reasoning; The optimization module optimizes the fuzzy reasoning rules and membership function parameters of the control module through genetic algorithms to achieve global optimal control of system performance; The control module comprises: Data acquisition unit to monitor computing load, storage utilization, I / O throughput, and bus bandwidth usage; A fuzzy reasoning unit is used to reason about monitoring data based on a fuzzy rule base and generate resource expansion decisions and bandwidth allocation strategies; The optimization module optimizes the fuzzy reasoning rule base and parameter settings of the control module through a genetic algorithm. The optimization process includes: The initial population is randomly generated, and each individual represents a combination of the fuzzy rule base and membership function parameters; The performance of individuals in the population is evaluated through a fitness function, which is based on resource utilization, bandwidth allocation efficiency, and extended response time; Optimize the population through selection, crossover and mutation operations to generate an optimized fuzzy rule base and parameter settings; The bus module is designed based on PCIe or CXL protocol, supports high-speed data interaction between computing module and storage module, and dynamically adjusts bandwidth priority through control module; The optimization module optimizes the fuzzy inference rule base by running it offline. The optimized rule base adapts to different computing and storage requirements in real time under complex load scenarios, ensuring that the resource allocation of the server is close to the global optimum.
2. The modular computing power and storage integrated server according to claim 1, characterized in that: The fuzzy inference unit is based on the following input variables: Calculate the load, which represents the ratio of the current CPU usage to the total capacity; Storage utilization, which represents the ratio of used storage capacity to total storage capacity; I / O throughput, which represents the ratio of the current I / O operation rate to the maximum supported rate; Bus bandwidth requirement, which indicates the ratio of the current bus bandwidth to the maximum bus bandwidth.
3. The modular computing power and storage integrated server according to claim 1, characterized in that: The fuzzy rule base of the fuzzy reasoning unit includes the following rules: When the computing load is high and the storage utilization is high, an expansion recommendation for adding computing modules and storage modules is generated; When the computing load is moderate and the storage utilization is moderate, an expansion recommendation is generated to maintain the existing module configuration; When the computing load is low and the storage utilization is low, a scaling recommendation is generated to reduce computing modules or storage modules.
4. The modular computing power and storage integrated server according to claim 1, characterized in that: The fitness function includes the following performance indicators: Resource utilization, which represents the ratio of actual resource usage to the total amount of allocated resources; Bandwidth allocation efficiency, which represents the ratio of effective transmission bandwidth to total allocated bandwidth; The extended response time indicates the delay time from load change to the generation of extended instructions.
5. The modular computing power and storage integrated server according to claim 1, characterized in that: The expansion suggestions generated by the control module include: Dynamically increase computing modules to cope with peak computing demands; Dynamically increase storage modules to meet data-intensive tasks; Dynamically reduce idle modules to reduce resource energy consumption.
6. A method for resource expansion and bandwidth allocation based on the modular computing power and storage integrated server as described in any one of claims 1 to 5, characterized in that: The following steps are involved: The control module collects the operation data of the computing module, storage module and bus module in real time, including computing load, storage utilization and bandwidth requirements; Based on the collected operation data, the fuzzy reasoning unit is used to generate resource expansion suggestions and bandwidth allocation strategies; Adjust the configuration of the computing module or storage module according to the resource expansion suggestions and initialize the new module; The bus module implements the bandwidth priority allocation strategy to optimize the data flow between the computing module and the storage module. The fuzzy rule base and parameters are optimized offline through the optimization module, and the reasoning logic of the control module is updated to improve the accuracy of future decisions.
Citation Information
Patent Citations
SDN load balancing method based on fuzzy logic
CN109451052A
Server, storage and calculation integrated device, and server system
CN112948300A
Server system, resource scheduling method of server system, chip and chip grain
CN118210634A
Task scheduling method and device, computer equipment and storage medium
CN118377593A