Method and equipment for adjusting frequency of CPU (Central Processing Unit)

By collaboratively collecting CPU characteristic data through the BMC and BIOS, and adjusting the CPU frequency based on the computing environment mapping relationship, the problem of insufficient CPU performance under high load is solved, achieving efficient resource utilization and system performance optimization.

CN121807642APending Publication Date: 2026-04-07XFUSION DIGITAL TECH 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
2025-11-13
Publication Date
2026-04-07

AI Technical Summary

Technical Problem

Existing computing systems suffer from insufficient CPU computing performance under high loads, resulting in a significant decrease in system responsiveness.

Method used

The system collects multiple characteristic data of the CPU through the Baseboard Management Controller (BMC), determines the current performance evaluation value based on the preset computing environment mapping relationship, and adjusts the CPU frequency when matching the target computing environment. The frequency is dynamically adjusted in combination with the BIOS performance monitoring switch and current gain.

Benefits of technology

It achieves precise awareness of specific computing environments, improves resource utilization and system performance, and enhances the system's reliable operation capability under high load conditions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121807642A_ABST
    Figure CN121807642A_ABST
Patent Text Reader

Abstract

The invention provides a frequency adjustment method and device for a CPU, the method is executed by a baseboard management controller (BMC), and the method comprises the following steps: collecting a plurality of feature data of the CPU; determining a current performance evaluation value of the CPU based on the multiple pieces of feature data and a preset operation environment mapping relation; wherein the operation environment mapping relation comprises at least one target operation environment; and adjusting the frequency of the CPU under the condition of determining that the operation environment of the CPU is matched with the at least one target operation environment according to the current performance evaluation value. Therefore, accurate perception of a specific operation environment (such as a calculation-intensive operation environment) can be realized, and the frequency of a CPU (Central Processing Unit) is further adjusted, so that efficient utilization of resources and optimization of system performance are realized.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of server technology, and in particular to a method and device for adjusting CPU frequency. Background Technology

[0002] With the rapid development of computationally intensive applications such as artificial intelligence and deep learning, the computing performance of computing devices (such as terminals and servers) under high loads is becoming increasingly important. In some application scenarios, such as 3D rendering, scientific computing, and the training phase of machine learning, the CPU (Central Processing Unit) of computing devices needs to significantly increase its computing power in a short period of time to meet the application demands that are highly bursty and real-time.

[0003] However, current computing systems exhibit a significant decrease in responsiveness when handling high loads, with insufficient CPU computing performance being the primary cause of this problem. Summary of the Invention

[0004] This application provides a CPU frequency adjustment method and device, which can solve the problem of insufficient CPU performance in some cases in the prior art.

[0005] To achieve the above objectives, the embodiments of this application adopt the following technical solutions: In a first aspect, embodiments of this application provide a CPU frequency adjustment method, which is executed by a BMC (Baseboard Management Controller). The method includes: collecting multiple characteristic data of the CPU; determining the current performance evaluation value of the CPU based on the multiple characteristic data and a preset computing environment mapping relationship; wherein the computing environment mapping relationship includes at least one target computing environment; and adjusting the CPU frequency when it is determined that the CPU's computing environment matches at least one target computing environment based on the current performance evaluation value.

[0006] Based on this scheme, multiple characteristic data of the CPU are collected; based on the multiple characteristic data and the preset computing environment mapping relationship, the current performance evaluation value of the CPU is determined; wherein, the computing environment mapping relationship includes at least one target computing environment; when it is determined that the CPU's computing environment matches at least one target computing environment according to the current performance evaluation value, the CPU frequency is adjusted; in this way, it is possible to accurately perceive specific computing environments (such as compute-intensive computing environments) through multiple characteristic data and the preset computing environment mapping relationship, and then adjust the CPU frequency to adapt to different computing needs, thereby achieving efficient resource utilization and system performance optimization.

[0007] In one possible implementation, determining the current performance evaluation value of the CPU based on multiple feature data and a preset computing environment mapping relationship includes: upon receiving a first instruction, determining a first weight set from the computing environment mapping relationship based on the first instruction; wherein the computing environment mapping relationship includes a correspondence between at least one target computing environment and different weight sets and different preset thresholds, the preset thresholds being used to determine whether the CPU is currently running in the target computing environment corresponding to the preset threshold; and determining the current performance evaluation value based on multiple feature data and the first weight set. Correspondingly, if it is determined that the CPU's computing environment matches at least one target computing environment based on the current performance evaluation value, adjusting the CPU frequency includes: determining a first preset threshold corresponding to the first weight set from different preset thresholds through the computing environment mapping relationship, and determining a first target computing environment corresponding to the first weight set from at least one target computing environment; and adjusting the CPU frequency if it is determined that the CPU is running in the first target computing environment based on the current performance evaluation value and the first preset threshold.

[0008] Based on this scheme, upon receiving a first instruction, a first weight set is determined from the computing environment mapping relationship based on the first instruction. The computing environment mapping relationship includes the correspondence between at least one target computing environment and different weight sets and different preset thresholds. The preset thresholds are used to determine whether the CPU is currently running in the target computing environment corresponding to the preset threshold. Based on multiple feature data and the first weight set, a current performance evaluation value is determined. Furthermore, through the computing environment mapping relationship, a first preset threshold corresponding to the first weight set is determined from different preset thresholds, and a first target computing environment corresponding to the first weight set is determined from at least one target computing environment. If, based on the current performance evaluation value and the first preset threshold, it is determined that the CPU is running in the first target computing environment, the CPU frequency is adjusted. Thus, by using a pre-set computing environment mapping relationship, it is possible to determine whether the CPU's current computing environment is the target computing environment, thereby ensuring reliable system operation under various high-load conditions.

[0009] In another possible implementation, if the CPU is determined to be running in a first target computing environment based on the current performance evaluation value and a first preset threshold, the CPU frequency is adjusted, including: if the current performance evaluation value is greater than the first preset threshold, the CPU is determined to be running in the first target computing environment; and the CPU frequency is adjusted.

[0010] Based on this scheme, if the current performance evaluation value exceeds a first preset threshold, the CPU is determined to be running in a first target computing environment; the CPU frequency is then adjusted. In this way, the performance evaluation value determined based on real-time CPU characteristic data can be used to determine whether to adjust CPU performance, thereby more accurately matching computing needs and achieving efficient resource allocation, thus improving resource utilization.

[0011] In another possible implementation, the current performance evaluation value is determined based on multiple feature data and a first weight set, including: determining the first weight corresponding to each feature data from the first weight set; and performing a weighted summation of multiple feature data according to the first weight corresponding to each feature data to obtain the current performance evaluation value.

[0012] Based on this scheme, the current performance evaluation value of the CPU is determined by weighted summation. In this way, by using a multi-dimensional weighted approach, the current performance evaluation value of the CPU can be determined by comprehensively considering multiple characteristics such as hardware events, software features, and system state, thereby improving the accuracy of the current performance evaluation value.

[0013] In another possible implementation, if the CPU's operating environment is determined to match at least one target operating environment based on the current performance evaluation value, adjusting the CPU frequency includes: determining the CPU's current gain if the CPU's operating environment is determined to match at least one target operating environment based on the current performance evaluation value; and adjusting the CPU frequency based on the current gain.

[0014] Based on this solution, the CPU frequency is adjusted by utilizing the CPU's current gain when the CPU's operating environment matches the target operating environment. In this way, the CPU frequency can be adjusted by current gain under specific operating conditions (such as high-intensity floating-point matrix operations), thereby achieving dynamic performance improvement.

[0015] In another possible implementation, multiple characteristic data of the CPU are collected, including: determining multiple performance evaluation metrics; wherein the dimensions of the performance evaluation metrics belong to at least one of the following: hardware dimension, software dimension, and system dimension; and collecting multiple characteristic data of the CPU based on the performance evaluation metrics.

[0016] Based on this solution, multiple performance evaluation metrics are set to collect various characteristic data of the CPU. In this way, by collecting multi-dimensional characteristic data, accurate perception of computational load characteristics can be achieved, overcoming the shortcomings of traditional static frequency adjustment strategies and effectively improving the system's adaptability to high-load computing environments.

[0017] In another possible implementation, multiple characteristic data of the CPU are collected, including: triggering an interrupt signal to enable the CPU performance monitoring switch in the BIOS of the Basic Input / Output System; and collecting multiple characteristic data of the CPU when the performance monitoring switch is on.

[0018] Based on this scheme, an interrupt signal is triggered by the BMC, enabling the BIOS to enable CPU performance monitoring, thereby triggering the acquisition of CPU characteristic data. In this way, the BMC can be used to trigger an interrupt to enter the BIOS, allowing the BIOS to configure performance event monitoring, and then collect CPU characteristic data to determine the current CPU operating environment.

[0019] Secondly, this application embodiment further provides a CPU frequency adjustment method, which is executed by the input / output system BIOS, which runs on the CPU. The method includes activating the CPU performance monitoring switch upon receiving an interrupt signal triggered by the baseboard management controller (BMC); wherein the BMC is used to collect multiple characteristic data of the CPU; determining the current performance evaluation value of the CPU based on the multiple characteristic data and a preset computing environment mapping relationship; wherein the computing environment mapping relationship includes at least one target computing environment; and adjusting the CPU frequency when it is determined that the CPU's computing environment matches at least one target computing environment based on the current performance evaluation value.

[0020] Based on this solution, the CPU performance monitoring switch is activated upon receiving an interrupt signal triggered by the Baseboard Management Controller (BMC). This allows the BMC to accurately perceive specific computing environments (such as computationally intensive environments) using multiple feature data and preset computing environment mapping relationships, thereby adjusting the CPU frequency to adapt to different computing needs and achieving efficient resource utilization and system performance optimization.

[0021] In one possible implementation, upon receiving an interrupt signal triggered by the Baseboard Management Controller (BMC), the CPU performance monitoring switch is enabled, including: upon receiving an interrupt signal triggered by the BMC, configuring performance event monitoring and obtaining the configuration result of the performance event; and reporting the configuration result to the BMC so that the BMC can determine whether the CPU performance monitoring switch is enabled based on the configuration result.

[0022] Based on this solution, the performance monitoring switch is enabled by configuring performance event monitoring in the BIOS, thereby causing the BMC to perform corresponding operations. In this way, with the cooperation of the BIOS, dynamic improvements to CPU performance can be achieved through the BMC.

[0023] Thirdly, embodiments of this application provide a CPU frequency adjustment device, which includes: a feature acquisition module for acquiring multiple feature data of the CPU; a performance evaluation module for determining the current performance evaluation value of the CPU based on the multiple feature data and a preset computing environment mapping relationship; wherein the computing environment mapping relationship includes at least one target computing environment; and a frequency adjustment module for adjusting the CPU frequency when it is determined that the CPU's computing environment matches at least one target computing environment based on the current performance evaluation value.

[0024] Fourthly, this application embodiment further provides a CPU frequency adjustment device, which includes: a task configuration module, used to activate a CPU performance monitoring switch upon receiving an interrupt signal triggered by a baseboard management controller (BMC); wherein the BMC is used to collect multiple characteristic data of the CPU; determine the current performance evaluation value of the CPU based on the multiple characteristic data and a preset computing environment mapping relationship; wherein the computing environment mapping relationship includes at least one target computing environment; and adjust the CPU frequency when it is determined that the CPU's computing environment matches at least one target computing environment based on the current performance evaluation value.

[0025] Fifthly, embodiments of this application provide a CPU frequency adjustment system, which includes: a baseboard management controller (BMC) for collecting multiple characteristic data of the CPU; determining the current performance evaluation value of the CPU based on the multiple characteristic data and a preset computing environment mapping relationship; wherein the computing environment mapping relationship includes at least one target computing environment; adjusting the CPU frequency when the CPU's computing environment is determined to match the at least one target computing environment based on the current performance evaluation value; and a BIOS running on the CPU for enabling the CPU performance monitoring switch upon receiving an interrupt signal triggered by the baseboard management controller (BMC).

[0026] In a sixth aspect, embodiments of this application provide a computing device, the computing device comprising: a processor, a baseboard management controller (BMC), and a memory; the processor is used to run a basic input / output system (BIOS), the memory is used to store computer instructions, the computer instructions being loaded and executed by the processor or the BMC to enable the computing device to implement the CPU frequency adjustment method described above.

[0027] In a seventh aspect, embodiments of this application provide a computer-readable storage medium storing a computer program for performing the CPU frequency adjustment method provided in the first or second aspect above.

[0028] Eighthly, embodiments of this application provide a computer program product that, when instructions in the computer program product are executed by a processor, performs the CPU frequency adjustment method provided in the first or second aspect above. Attached Figure Description

[0029] Figure 1 This is a schematic diagram of a system architecture provided in an embodiment of this application.

[0030] Figure 2 This is a flowchart illustrating a frequency adjustment method provided in an embodiment of this application.

[0031] Figure 3A This is a flowchart illustrating another frequency adjustment method provided in an embodiment of this application.

[0032] Figure 3B This is a schematic diagram of a computing environment mapping relationship provided in an embodiment of this application.

[0033] Figure 4 This is a flowchart illustrating another frequency adjustment method provided in an embodiment of this application.

[0034] Figure 5 This is a flowchart illustrating another frequency adjustment method provided in an embodiment of this application.

[0035] Figure 6 This is a flowchart illustrating another frequency adjustment method provided in an embodiment of this application.

[0036] Figure 7 This is a schematic diagram of the structure of a frequency adjustment device provided in an embodiment of this application.

[0037] Figure 8 This is a schematic diagram of another frequency adjustment device provided in an embodiment of this application.

[0038] Figure 9 This is a schematic diagram of the structure of a computing device provided in an embodiment of this application. Detailed Implementation

[0039] The technical solutions of the embodiments of this application will now be described with reference to the accompanying drawings. To facilitate a clear description of the technical solutions of the embodiments of this application, the use of terms such as "first," "second," etc., in the embodiments of this application is for illustrative purposes and to distinguish the objects being described. There is no particular order between them, nor does it indicate a specific limitation on the number of devices in the embodiments of this application, and they do not constitute any limitation on the embodiments of this application.

[0040] First, the relevant technical terms in the embodiments of this application will be explained: BMC: A dedicated microcontroller integrated on the server motherboard for monitoring and managing the server's hardware status, including hardware monitoring, remote management, fault diagnosis, and security functions.

[0041] BIOS: A firmware program that runs when a computer starts up. It is responsible for initializing hardware devices and booting the operating system. During system operation, the BIOS can be accessed via the SMI interrupt for in-band access. The BIOS firmware program is usually stored in a ROM chip (such as a Flash memory chip) on the motherboard (hereinafter referred to as the BIOS chip). The CPU runs the BIOS by calling the BIOS program code stored in the ROM chip.

[0042] GPIO (General-Purpose Input / Output): A common digital interface in embedded systems and electronic devices that allows hardware engineers to directly control or read the level signals (high / low) of external devices through programming.

[0043] SMI (System Management Interrupt): A high-priority, non-maskable special interrupt used to perform low-level hardware management and security tasks.

[0044] PECI (Platform Environment Control Interface): A hardware interface protocol primarily used for temperature monitoring and power management communication between the processor and other hardware components.

[0045] SIMD (Single Instruction, Multiple Data): A parallel computing model that allows a single instruction to operate on multiple data items simultaneously, reducing the number of instructions executed and optimizing computationally intensive tasks.

[0046] AVX (Advanced Vector Extensions): A SIMD instruction set extension designed to improve computer performance when processing data types such as floating-point numbers and integers. It introduces 256-bit registers (YMM0 - YMM15) and expands the 128-bit SSE registers (XMM0 - XMM15), enabling the processor to process more data in a single clock cycle.

[0047] PMU (Performance Monitoring Unit): A hardware component in the CPU used to monitor and measure how the processor runs its code. It uses a set of hardware counters to count various low-level processor events, such as CPU cycle count, cache hits, and branch prediction errors.

[0048] PMC (Performance Monitoring Counter): A set of dedicated registers provided by the CPU hardware to count and measure various performance events of the processor when executing instructions.

[0049] VRD (Voltage Regulator): A type of CPU voltage regulator used to provide precise and stable voltage to the CPU, and can also implement dynamic voltage regulation.

[0050] This application provides a CPU frequency adjustment method, executed by a Baseboard Management Controller (BMC). The method includes: acquiring multiple characteristic data of the CPU; determining the current performance evaluation value of the CPU based on the multiple characteristic data and a preset computing environment mapping relationship; wherein the computing environment mapping relationship includes at least one target computing environment; and adjusting the CPU frequency when the CPU's computing environment matches the at least one target computing environment based on the current performance evaluation value. In this way, precise perception of a specific computing environment (such as a compute-intensive computing environment) can be achieved through multiple characteristic data and a preset computing environment mapping relationship, thereby adjusting the CPU frequency to adapt to different computing needs, thus achieving efficient resource utilization and system performance optimization.

[0051] The CPU frequency adjustment method provided in this application embodiment can be applied to, for example, Figure 1 The system architecture shown is as follows: Figure 1 As shown, the system architecture 10 includes at least: CPU 11, BMC 12, BIOS chip 13 and VRD 14.

[0052] Among them, CPU 11 is the computing and control core of the computer system, and may include one or more processing units.

[0053] BMC 12 can trigger a management interrupt (such as an SMI interrupt) of CPU 11, causing the host CPU 11 to interrupt its currently executing task and enter System Management Mode (SMM). In SMM mode, CPU 11 executes the system management interrupt handler (i.e., SMI Handler) embedded in BIOS chip 13, thereby enabling access to and modification of specific configurations of BIOS chip 13.

[0054] In other words, after turning on the BMC performance enhancement switch and enabling performance enhancement, the BMC will trigger an SMI interrupt to enter the BIOS for configuration and execute the BMC dynamic performance monitoring task.

[0055] The BIOS chip 13 can be configured to monitor performance events, thereby enabling the CPU performance monitoring switch to be turned on so that the BMC can obtain multi-dimensional characteristic data of the CPU.

[0056] For example, BIOS chip 13 can parse command words to configure the MSR register and enable PMC performance event monitoring. Then, the BIOS can report the performance event configuration results to BMC 12. For instance, BIOS chip 13 can configure the IA32_PERFEVTSELx register in-band, specifying the characteristic performance events to be monitored. Upon successful configuration of IA32_PERFEVTSELx, the corresponding IA32_PMCx register will begin counting.

[0057] Furthermore, BMC 12 can also acquire CPU characteristic data (e.g., CPU computational intensity data) and use this multiple characteristic data to achieve precise perception of a specific computing environment in order to determine whether to adjust the CPU frequency.

[0058] For example, the BMC 12 can read the MSR (Model-Specific Register) register in real time via PECI to obtain the rate of change of the MSR performance event count. MSR performance events refer to a type of hardware event that the CPU's internal performance monitoring unit (PMU) can count. When multiple characteristic events corresponding to a high-frequency computing environment meet the high-frequency occurrence conditions, it is determined that the CPU is in a high-frequency computing environment, and the CPU frequency needs to be adjusted.

[0059] Furthermore, BMC 12 can enhance CPU performance through VRD 14 (such as dynamically adjusting the CPU frequency using VRD 14 through Turbo Boost and Hyper-Threading technologies).

[0060] For example, when the performance monitoring thread of BMC 12 determines that the CPU is in a high-frequency floating-point and matrix operation environment, BMC 12 configures VRD 14 to be negatively biased via I2C, thereby improving the CPU's floating-point and matrix operation performance from a hardware perspective.

[0061] It should be noted that the system architecture described in the embodiments of this application is for the purpose of more clearly illustrating the technical solutions of the embodiments of this application, and does not constitute a limitation on the technical solutions provided in the embodiments of this application. As those skilled in the art will know, with the evolution of system architecture, the technical solutions provided in the embodiments of this application are also applicable to similar technical problems.

[0062] For ease of understanding, the CPU frequency adjustment method provided in this application is described below with reference to the accompanying drawings. This CPU frequency adjustment method is applicable to... Figure 1 The system architecture shown is illustrated, along with the corresponding computing devices.

[0063] Figure 2 This is a flowchart illustrating a CPU frequency adjustment method provided in an embodiment of this application. The method in this embodiment can be executed by a Baseboard Management Controller (BMC), such as... Figure 2 As shown, the method includes the following steps S201-S203.

[0064] Step S201: Collect multiple feature data of the CPU.

[0065] For example, the BMC can collect hardware characteristic data such as CPU hardware instruction execution intensity, SIMD utilization, memory pressure, temperature, and power consumption. CPU hardware instruction execution intensity refers to the average number of instructions a CPU core can execute within one CPU clock cycle; it is often abbreviated as IPC (Instructions Per Cycle) and is a key indicator of CPU efficiency and performance. SIMD utilization measures the extent to which a program or piece of code effectively utilizes the CPU's SIMD instruction set and hardware units; it is also a key indicator of computing task performance. Hardware instruction execution intensity and SIMD utilization are obtained through the PMU interface, memory pressure is obtained by reading the pressure register of the memory controller, temperature is obtained through a temperature sensor, and power consumption is obtained through a current sensor.

[0066] In some examples, the BMC can collect CPU system load information (such as overall CPU utilization metrics, CPU queue and scheduling metrics, CPU hardware performance counters, etc.) and process-level characteristics. CPU system load information can be obtained by reading the system runtime register, and CPU process-level characteristics can be obtained by collecting information such as process creation time, CPU frequency at process startup, and physical memory usage of the process.

[0067] In some examples, BMC can collect framework library characteristic data. Framework library characteristic data includes CUDA library usage, OpenMP thread pool usage, system call counts, etc.

[0068] Step S202: Determine the current performance evaluation value of the CPU based on multiple feature data and a preset computing environment mapping relationship; wherein, the computing environment mapping relationship includes at least one target computing environment.

[0069] For example, embodiments of this application may pre-set a computing environment mapping relationship, which includes a correspondence between at least one target computing environment and a weight set. For instance, the computing environment mapping relationship may include a scientific computing environment and its corresponding weight set, or a memory-intensive computing environment and its corresponding weight set. Furthermore, the current performance evaluation value of the CPU can be determined based on multiple feature data and the weight set corresponding to the scientific computing environment in the computing environment mapping relationship. Alternatively, the current performance evaluation value of the CPU can be determined based on multiple feature data and the weight set corresponding to the memory-intensive computing environment in the computing environment mapping relationship. In other words, in embodiments of this application, the current performance evaluation value of the CPU is determined jointly based on multiple current feature data of the CPU and the pre-set computing environment mapping relationship.

[0070] Scientific computing environments and memory-intensive computing environments represent two distinct workload types. Scientific computing environments primarily focus on CPU computing power and are characterized by the need for numerous and complex mathematical operations. Memory-intensive computing environments, on the other hand, primarily focus on memory (bandwidth and capacity) and are characterized by the need for frequent and extensive memory access.

[0071] Step S203: If the CPU's operating environment is determined to match at least one target operating environment based on the current performance evaluation value, adjust the CPU frequency.

[0072] For example, if the preset computing environment mapping includes scientific computing environment and memory-intensive computing environment, and the current performance evaluation value of the CPU indicates that the CPU's computing environment matches the scientific computing environment or the memory-intensive computing environment, then the BMC will perform the corresponding CPU performance improvement operation, such as adjusting the CPU frequency.

[0073] The CPU frequency adjustment method provided in this application collects multiple characteristic data of the CPU; determines the current performance evaluation value of the CPU based on the multiple characteristic data and a preset computing environment mapping relationship; wherein the computing environment mapping relationship includes at least one target computing environment; and adjusts the CPU frequency when the CPU's computing environment matches at least one target computing environment based on the current performance evaluation value. In this way, it is possible to accurately perceive a specific computing environment (such as a compute-intensive computing environment) through multiple characteristic data and a preset computing environment mapping relationship, and then adjust the CPU frequency to adapt to different computing needs, thereby achieving efficient resource utilization and system performance optimization.

[0074] In some embodiments, step S201, collecting multiple characteristic data of the CPU, includes: triggering an interrupt signal to enable the CPU performance monitoring switch in the BIOS; and collecting multiple characteristic data of the CPU when the performance monitoring switch is enabled.

[0075] For example, this step can be performed by Figure 1 The execution of BMC 12 in the system architecture can enable the BMC performance enhancement switch, thus enabling performance improvements. Subsequently, the BMC triggers an SMI interrupt to enter the BIOS for configuration and executes the BMC dynamic performance monitoring task, thereby enabling the CPU performance monitoring switch.

[0076] In some examples, CPU hardware and software event monitoring is first configured, with hardware event monitoring supported by the Intel CPUPMU performance monitoring mechanism. This requires configuring the BIOS and the MSR register, and then the performance monitoring task can be started.

[0077] like Figure 3A As shown above, in the above Figure 2 Based on the illustrated embodiment, step S202 may include the following steps S2021-S2022.

[0078] Step S2021: Upon receiving the first instruction, determine the first weight set from the computing environment mapping relationship based on the first instruction; wherein, the computing environment mapping relationship includes the correspondence between at least one target computing environment and different weight sets and different preset thresholds, and the preset thresholds are used to determine whether the CPU is currently running in the target computing environment corresponding to the preset threshold.

[0079] For example, the computing environment mapping relationship in this application embodiment is pre-set, which can be implemented by configuring a table. For example, Figure 3B This is a schematic diagram of a mapping relationship provided in an embodiment of this application, such as... Figure 3BAs shown, the mapping relationship includes the correspondence between three target computing environments and different weight sets and different preset thresholds. Specifically, there is a correspondence between environment 1, set 1, and threshold 1; a correspondence between environment 2, set 2, and threshold 2; and a correspondence between environment 3, set 3, and threshold 3. Furthermore, by using the set and threshold in any of these correspondences, it can be determined whether the CPU is currently in the target computing environment corresponding to that relationship.

[0080] In some examples, the first instruction can be triggered by the user or the system, and this application embodiment does not impose any limitations on this. For example, the user can select the first target computing environment to be identified and issue a corresponding instruction so that the BMC can determine the first weight set corresponding to the first target computing environment from the mapping table. Alternatively, the mapping table can be traversed to determine whether the CPU's current computing environment is within the mapping table. Therefore, the BMC can receive the first instruction triggered by the CPU system and then determine the first weight set from the mapping table in a preset order.

[0081] For example, if Figure 3B In the context of environment 1 being a scientific computing environment, set 1 being a weight set corresponding to the scientific computing environment, and threshold 1 being a preset threshold corresponding to the scientific computing environment, it can receive a first instruction carrying a "scientific computing environment identifier" and determine the corresponding set 1 from the mapping relationship based on the first instruction. This set 1 is the first weight set.

[0082] It should be noted that the embodiments of this application do not limit the number or type of target computing environments included in the computing environment mapping relationship, nor do they limit the value of the weight corresponding to each target computing environment or the value of the preset threshold corresponding to each target computing environment. Those skilled in the art can set these according to actual usage.

[0083] Step S2022: Determine the current performance evaluation value based on multiple feature data and the first weight set.

[0084] For example, in this embodiment of the application, the current performance evaluation value can be determined by weighted summation based on multiple feature data and each first weight in the first weight set. For example, if the multiple feature data include hardware instruction execution intensity, SIMD utilization, memory pressure, temperature / power consumption, and software characteristics, and the first weight set is... The current performance evaluation value can then be determined using the following formula (1). .

[0085] Formula (1); in, This represents the current CPU's hardware instruction execution strength. The weights corresponding to the "hardware instruction execution strength" feature under a specific target computing environment (such as a scientific computing environment or a memory-intensive computing environment); This represents the current SIMD utilization rate of the CPU. The weights corresponding to the "SIMD" features under the same specific target computing environment; The current memory pressure on the CPU. The weights corresponding to the "memory pressure" feature under the same specific target computing environment; Given the current CPU temperature / power consumption, The weights corresponding to the "temperature / power consumption" feature under the same specific target computing environment; The software characteristics of the current CPU, The weights corresponding to "software features" under the same specific target computing environment.

[0086] It should be noted that the above formula (1) is only an illustrative example. The embodiments of this application do not limit the number of multiple feature data and the number of weights included in the first weight set. Those skilled in the art can set it according to the actual use.

[0087] In some examples, the weight coefficients included in each weight set in the computing environment mapping relationship can be dynamically adjusted according to different computing environments. For example, when the weight set is... ,and The weighting coefficients corresponding to the "hardware instruction execution strength" feature. The weight coefficients corresponding to the "SIMD" features, The weighting coefficients corresponding to the "memory pressure" feature. The weighting coefficients corresponding to the "temperature / power consumption" feature. When the weight coefficients are for "software features", in a scientific computing environment High weighting coefficients (emphasizing floating-point / SIMD optimization), suitable for memory-intensive computing environments. The weighting coefficient is relatively high (focusing on NUMA / prefetch optimization).

[0088] Correspondingly, such as Figure 3A As shown above, in the above Figure 2 Based on the illustrated embodiment, step S203 may include the following steps S2031a-S2032a.

[0089] Step S2031a: Through the mapping relationship of the computing environment, determine the first preset threshold that corresponds to the first weight set from different preset thresholds, and determine the first target computing environment that corresponds to the first weight set from at least one target computing environment.

[0090] For example, since the computing environment mapping relationship includes the correspondence between at least one target computing environment and different weight sets and different preset thresholds, the first preset threshold and the first target computing environment that correspond to the first weight set can be determined based on the first weight set through the computing environment mapping relationship.

[0091] For example, such as Figure 3B As shown, if the first weight set is set 2, then the first preset threshold determined by the operation environment mapping relationship is threshold 2, and the first target operation environment determined by the operation environment mapping relationship is environment 2.

[0092] Step S2032a: Based on the current performance evaluation value and the first preset threshold, and after determining that the CPU is running in the first target computing environment, adjust the CPU frequency.

[0093] For example, in this embodiment, it can be determined whether the CPU is running in the first target computing environment based on the CPU's current performance evaluation value and a first preset threshold. If it is determined that the CPU is currently running in the first target computing environment, the CPU frequency is adjusted. For instance, if the current performance evaluation value determined based on multiple feature data and a first weight set is greater than the first preset threshold, it is determined that the CPU is currently running in the first target computing environment. If the current performance evaluation value determined based on multiple feature data and a first weight set is less than or equal to the first preset threshold, it is determined that the CPU is not currently running in the first target computing environment.

[0094] In some examples, step S2021 above can be performed to traverse each weight set in the computing environment mapping relationship until a corresponding target computing environment is determined for the CPU. If, after the traversal, it is determined that the CPU is not in any target computing environment included in the computing environment mapping relationship, no performance improvement is performed on the CPU.

[0095] The CPU frequency adjustment method provided in this application determines a first weight set from a computing environment mapping relationship. The computing environment mapping relationship includes a correspondence between at least one target computing environment, the weight set, and a preset threshold. Based on multiple feature data and the first weight set, a current performance evaluation value is determined. Based on the first weight set, a first preset threshold and a first target computing environment are determined through the computing environment mapping relationship. When the CPU is determined to be running in the first target computing environment based on the current performance evaluation value and the first preset threshold, the CPU frequency is adjusted. Thus, by using a multi-dimensional weighting approach, comprehensively considering multiple features such as hardware events, software characteristics, and system states, a combination of performance improvement and system stability can be achieved, ensuring reliable system operation under high load conditions.

[0096] In some embodiments, step S2022, determining the current performance evaluation value based on multiple feature data and a first weight set, includes: determining the first weight corresponding to each feature data from the first weight set; and performing a weighted summation of multiple feature data according to the first weight corresponding to each feature data to obtain the current performance evaluation value.

[0097] For example, the first weight set includes the first weight corresponding to each feature data, and then the current performance evaluation value of the CPU can be determined based on multiple feature data by weighted summation. In this way, the current performance evaluation value of the CPU can be determined based on the importance of each feature data, thereby improving the accuracy of the current performance evaluation value.

[0098] like Figure 4 As shown above, in the above Figure 3A Based on the illustrated embodiment, step S2032a may include steps S21-S22.

[0099] Step S21: If the current performance evaluation value is greater than the first preset threshold, determine that the CPU is running in the first target computing environment.

[0100] For example, since there is a correspondence between the first weight set that determines the current performance evaluation value, the first preset threshold, and the first target computing environment, if the current performance evaluation value is greater than the first preset threshold, it indicates that the CPU is running in the first target computing environment; if the current performance evaluation value is less than or equal to the first preset threshold, it indicates that the CPU is not running in the first target computing environment.

[0101] In some examples, if the current performance evaluation value is greater than the first preset threshold, then step S22 is executed; if the current performance evaluation value is less than or equal to the first preset threshold, then step S201 is executed.

[0102] Step S22: Adjust the CPU frequency.

[0103] The CPU frequency adjustment method provided in this application determines that the CPU is running in a first target computing environment when the current performance evaluation value is greater than a first preset threshold, and then adjusts the CPU frequency. In this way, the CPU performance can be adjusted based on the performance evaluation value determined by real-time feature data, thereby more accurately matching computing needs and achieving efficient resource allocation, thus improving resource utilization.

[0104] like Figure 5 As shown above, in the above Figure 2 Based on the illustrated embodiment, step S203 may include the following steps S2031b-S2032b.

[0105] Step S2031b: If the CPU's operating environment is determined to match at least one target operating environment based on the current performance evaluation value, determine the CPU's current gain.

[0106] For example, the CPU's current gain refers to the ratio of the CPU's output current to its input current. Therefore, the CPU's frequency can be adjusted based on the CPU's current gain. In this embodiment, adjusting the frequency based on the CPU's current gain aims to prevent the CPU from being damaged or becoming unstable due to excessive power consumption (current) and temperature while pursuing high performance.

[0107] In some examples, the CPU's current gain can be directly measured using dedicated hardware monitoring circuitry integrated within the CPU (such as Intel RAPL). Of course, other methods can also be used to determine the CPU's current gain, and this application does not limit this approach.

[0108] Step S2032b: Adjust the CPU frequency according to the current gain.

[0109] For example, if it is determined that the CPU's current operating environment matches at least one target operating environment, the CPU's current gain can be determined. Furthermore, the base frequency can be adjusted to an optimal value by reading and writing the CPU's base frequency register, and CPU frequency optimization can be achieved through CPU current gain, combined with Intel Turbo Boost technology and Hyper-Threading technology.

[0110] The CPU frequency adjustment method provided in this application determines the CPU's current gain by matching the CPU's operating environment with at least one target operating environment based on current performance evaluation values; and then adjusts the CPU's frequency using the current gain. Thus, it is possible to adjust the CPU's frequency through current gain when the CPU is in a specific operating environment (such as a high-intensity floating-point matrix operation environment), thereby achieving dynamic performance improvement.

[0111] In some embodiments, step S201, collecting multiple feature data of the CPU, includes: determining multiple performance evaluation metrics; wherein the dimensions of the performance evaluation metrics belong to at least one of the following: hardware dimension, software dimension, system dimension; and collecting multiple feature data of the CPU based on the performance evaluation metrics.

[0112] For example, multiple evaluation dimensions can be set in this application embodiment, including but not limited to: hardware dimension, software dimension, and system dimension. Furthermore, multiple performance evaluation metrics can be set for different dimensions. For example, performance evaluation metrics set for the hardware dimension include but are not limited to: CPU hardware instruction execution intensity, SIMD utilization, memory pressure, temperature, and power consumption. Similarly, performance evaluation metrics set for the software dimension include but are not limited to: system load information, process-level characteristics, etc. And, performance evaluation metrics set for the system dimension include but are not limited to: framework library usage, Open MP thread pool usage, and system call count, etc.

[0113] In some examples, embodiments of this application may determine multiple performance evaluation metrics and collect multiple characteristic data of the CPU based on these metrics. These multiple performance evaluation metrics may be performance evaluation metrics under the same dimension, or they may be performance evaluation metrics under different dimensions; this application does not impose any limitations on this. In this way, by collecting multi-dimensional characteristic data, accurate perception of computational load characteristics can be achieved, overcoming the shortcomings of traditional static frequency adjustment strategies and effectively improving the system's adaptability to high-load computing environments.

[0114] In some embodiments, this application also provides a CPU frequency adjustment method, which can be executed by an input / output system BIOS. The method includes: upon receiving an interrupt signal triggered by a baseboard management controller (BMC), activating a CPU performance monitoring switch; wherein the BMC is used to collect multiple characteristic data of the CPU; determining a current performance evaluation value of the CPU based on the multiple characteristic data and a preset computing environment mapping relationship; wherein the computing environment mapping relationship includes at least one target computing environment; and adjusting the CPU frequency when it is determined that the CPU's computing environment matches at least one target computing environment based on the current performance evaluation value.

[0115] For example, this step can be performed by Figure 1 When the BIOS chip 13 in the system architecture is executed, the BIOS can respond to the SMI interrupt signal triggered by the BMC 12 and turn on the CPU performance monitoring switch, thereby causing the BMC 12 to execute the above steps S201-S203.

[0116] The CPU frequency adjustment method provided in this application involves activating a CPU performance monitoring switch upon receiving an interrupt signal triggered by the Baseboard Management Controller (BMC). The BMC collects multiple characteristic data points of the CPU. Based on these characteristic data points and a preset computing environment mapping relationship, it determines the current performance evaluation value of the CPU. The computing environment mapping relationship includes at least one target computing environment. If the current performance evaluation value determines that the CPU's computing environment matches at least one target computing environment, the CPU frequency is adjusted. This allows the BMC to accurately perceive specific computing environments (such as compute-intensive computing environments) using multiple characteristic data points and the preset computing environment mapping relationship, thereby adjusting the CPU frequency to adapt to different computing needs, achieving efficient resource utilization and system performance optimization.

[0117] In some embodiments, upon receiving an interrupt signal triggered by the Baseboard Management Controller (BMC), enabling the CPU performance monitoring switch includes: upon receiving an interrupt signal triggered by the BMC, configuring performance event monitoring and obtaining the configuration result of the performance event; and reporting the configuration result to the BMC so that the BMC can determine whether the CPU performance monitoring switch is enabled based on the configuration result.

[0118] For example, after receiving an SMI interrupt triggered by the BMC, the BIOS can parse the command word to configure the MSR register to enable PMC performance event monitoring. Then, the configuration result of the performance event can be reported to the BMC, allowing the BMC to determine whether the performance monitoring switch is enabled based on the configuration result. For instance, if the configuration result is successful, it indicates that the performance monitoring switch is enabled; otherwise, the performance monitoring switch is disabled. In this way, with the cooperation of the BIOS, dynamic CPU performance can be improved through the BMC.

[0119] Figure 6 A flowchart illustrating a frequency adjustment method provided in an exemplary embodiment of this application is shown below. Figure 6 As shown, the frequency adjustment method includes the following steps: Step S601: Turn on the performance enhancement switch to enable performance enhancement.

[0120] Step S602: BMC pulls GPIO low to trigger SMI interrupt and enter BIOS for configuration.

[0121] For example, typically, when the BMC pulls a GPIO low, it means that in a server or embedded system, the BMC controls the GPIO pin to output a low level to achieve specific hardware management functions (such as reset, power control, signal triggering, etc.). In this embodiment, the BMC pulling a GPIO low can be used to trigger an SMI interrupt to enter the BIOS for configuration.

[0122] Step S603: BIOS parses command words to configure the MSR register.

[0123] Step S604: Enable PMC performance event monitoring in BIOS.

[0124] For example, in this embodiment of the application, the BIOS accesses the MSR register by parsing specific command words (such as protocols defined by the CPU manufacturer) to directly configure the CPU's hardware behavior. The activation of PMC depends on the correct configuration of the MSR and is a monitoring function implemented after the MSR is configured.

[0125] Step S605: The BIOS reports the performance event configuration results to the BMC.

[0126] For example, the BIOS can report the configuration results of performance events to the BMC so that the BMC can obtain multiple characteristic data of the CPU (such as the CPU's computing intensity characteristics) if the configuration result is successful.

[0127] Step S606: BMC determines whether the configuration was successful based on the configuration results.

[0128] For example, if the BMC determines that the configuration is successful based on the configuration result, then the following step S607 is executed; otherwise, if the BMC determines that the configuration fails based on the configuration result, then the above step S601 is executed.

[0129] Step S607: If the configuration is successful, the BMC will obtain the PMC count value in real time.

[0130] Step S608: BMC determines whether the rate of change of the PMC count value is greater than the threshold.

[0131] Step S609: If the rate of change of the PMC count value is greater than the threshold, the BMC sets the VRD current to negative bias.

[0132] For example, if the rate of change of the PMC count value is greater than the threshold, the BMC sets the VRD current to a negative bias to adjust the CPU frequency and thus improve CPU performance; if the rate of change of the PMC count value is less than or equal to the threshold, the above step S607 is continued.

[0133] from Figure 6 It can be seen that the execution entity for steps S601-S602 and steps S606-S609 is the BMC. The execution entity for steps S603-S605 is the BIOS.

[0134] Corresponding to the aforementioned embodiments of the frequency adjustment method, this application also provides an embodiment of a frequency adjustment device. Figure 7A frequency adjustment device provided in the embodiments of this application, such as Figure 7 As shown, the frequency adjustment device 700 includes a feature acquisition module 701, a performance evaluation module 702, and a frequency adjustment module 703.

[0135] The feature acquisition module 701 is used to acquire multiple feature data of the CPU; The performance evaluation module 702 is used to determine the current performance evaluation value of the CPU based on multiple feature data and a preset computing environment mapping relationship; wherein the computing environment mapping relationship includes at least one target computing environment; The frequency adjustment module 703 is used to adjust the CPU frequency when the CPU's operating environment is determined to match at least one target operating environment based on the current performance evaluation value.

[0136] In one possible implementation, such as Figure 8 As shown, the performance evaluation module 702 includes a weight determination unit 7021 and a performance evaluation unit 7022.

[0137] The weight determination unit 7021 is used to determine a first weight set from the computing environment mapping relationship based on the first instruction when a first instruction is received; wherein, the computing environment mapping relationship includes the correspondence between at least one target computing environment and different weight sets and different preset thresholds, and the preset thresholds are used to determine whether the CPU is currently running in the target computing environment corresponding to the preset threshold; The performance evaluation unit 7022 is used to determine the current performance evaluation value based on multiple feature data and a first weight set.

[0138] Correspondingly, such as Figure 8 As shown, the frequency adjustment module 703 includes a parameter determination unit 7031 and a frequency adjustment unit 7032.

[0139] The parameter determination unit 7031 is used to determine, through the mapping relationship of the computing environment, a first preset threshold that corresponds to the first weight set from different preset thresholds, and to determine, from at least one target computing environment, a first target computing environment that corresponds to the first weight set. The frequency adjustment unit 7032 is used to adjust the CPU frequency when the CPU is determined to be running in a first target computing environment based on the current performance evaluation value and a first preset threshold.

[0140] In another possible implementation, the frequency adjustment unit 7032 is specifically used to determine that the CPU is running in a first target computing environment when the current performance evaluation value is greater than a first preset threshold; and to adjust the CPU frequency.

[0141] In another possible implementation, the performance evaluation unit 7022 is specifically used to determine the first weight corresponding to each feature data from the first weight set; and to perform a weighted summation of multiple feature data according to the first weight corresponding to each feature data to obtain the current performance evaluation value.

[0142] In another possible implementation, the frequency adjustment module 703 is specifically used to determine the current gain of the CPU when it is determined that the CPU's operating environment matches at least one target operating environment based on the current performance evaluation value; and to adjust the CPU's frequency based on the current gain.

[0143] In another possible implementation, the feature acquisition module 701 is specifically used to determine multiple performance evaluation metrics; wherein the dimensions of the performance evaluation metrics belong to at least one of the following: hardware dimension, software dimension, and system dimension; and based on the performance evaluation metrics, multiple feature data of the CPU are acquired.

[0144] In another possible implementation, the feature acquisition module 701 is specifically used to trigger an interrupt signal to enable the CPU performance monitoring switch in the BIOS of the Basic Input / Output System; when the performance monitoring switch is on, it acquires multiple feature data of the CPU.

[0145] The beneficial technical effects corresponding to the exemplary embodiment of the frequency adjustment device 700 described above can be found in the corresponding beneficial technical effects in the above method embodiment section, and will not be repeated here.

[0146] In some embodiments, corresponding to the aforementioned frequency adjustment method, this application also provides an embodiment of a frequency adjustment device. The frequency adjustment device includes: a task configuration module, configured to activate a CPU performance monitoring switch upon receiving an interrupt signal triggered by a Baseboard Management Controller (BMC); wherein the BMC is configured to collect multiple characteristic data of the CPU; determine the current performance evaluation value of the CPU based on the multiple characteristic data and a preset computing environment mapping relationship; wherein the computing environment mapping relationship includes at least one target computing environment; and adjust the CPU frequency when it is determined, based on the current performance evaluation value, that the CPU's computing environment matches at least one target computing environment.

[0147] In some embodiments, the task configuration module includes: a configuration unit, configured to configure performance event monitoring and obtain the configuration result of the performance event upon receiving an interrupt signal triggered by the BMC; and a sending unit, configured to report the configuration result to the BMC so that the BMC can determine whether the CPU performance monitoring switch is enabled based on the configuration result.

[0148] Of course, the beneficial technical effects of this frequency adjustment device can also be found in the corresponding beneficial technical effects in the above-described method embodiments section, and will not be repeated here.

[0149] Corresponding to the aforementioned frequency adjustment method embodiments, this application also provides an embodiment of a computing device. The computing device includes a processor, a baseboard management controller (BMC), and a memory; wherein, The processor runs the Basic Input / Output System (BIOS), and the memory stores computer instructions loaded and executed by the processor to achieve the following steps: upon receiving an interrupt signal triggered by the Baseboard Management Controller (BMC), the CPU performance monitoring switch is activated; wherein, the BMC is used to collect multiple characteristic data of the CPU; based on the multiple characteristic data and a preset computing environment mapping relationship, the current performance evaluation value of the CPU is determined; wherein, the computing environment mapping relationship includes at least one target computing environment; and if the CPU's computing environment is determined to match at least one target computing environment based on the current performance evaluation value, the CPU frequency is adjusted.

[0150] Alternatively, the computer instructions are loaded and executed by the BMC to perform the following steps: acquiring multiple characteristic data of the CPU; determining the current performance evaluation value of the CPU based on the multiple characteristic data and a preset computing environment mapping relationship; wherein the computing environment mapping relationship includes at least one target computing environment; and adjusting the CPU frequency if the CPU's computing environment is determined to match at least one target computing environment based on the current performance evaluation value.

[0151] It should be noted that the beneficial technical effects corresponding to the above exemplary embodiments of the computing device can be found in the corresponding beneficial technical effects in the above method embodiment section, and will not be repeated here.

[0152] Corresponding to the aforementioned frequency adjustment method embodiments, this application also provides an embodiment of a frequency adjustment system. This frequency adjustment system includes at least a Baseboard Management Controller (BMC) and a BIOS running on the CPU. The baseboard management controller (BMC) is used to collect multiple characteristic data of the CPU; based on the multiple characteristic data and a preset computing environment mapping relationship, it determines the current performance evaluation value of the CPU; wherein, the computing environment mapping relationship includes at least one target computing environment; and when it is determined that the CPU's computing environment matches at least one target computing environment based on the current performance evaluation value, it adjusts the CPU frequency. The BIOS running on the CPU is used to enable the CPU performance monitoring switch upon receiving an interrupt signal triggered by the Baseboard Management Controller (BMC).

[0153] It should be noted that the beneficial technical effects corresponding to the exemplary embodiments of the frequency adjustment system described above can be found in the corresponding beneficial technical effects in the method embodiments section above, and will not be repeated here.

[0154] Figure 9 This is a schematic diagram of the structure of a computing device 900 provided in an embodiment of this application. The computing device 900 may include... Figure 1 The computing devices of each component, such as Figure 9 As shown, the hardware entity of the computing device 900 includes: a processor 901, a communication interface 902, and a memory 903, wherein, Processor 901 typically controls the overall operation of computing device 900.

[0155] The communication interface 902 enables the computing device 900 to communicate with other electronic devices or servers via a network.

[0156] The memory 903 is configured to store instructions and applications executable by the processor 901, and can also cache data to be processed or already processed by the processor 901 and various modules in the computing device 900. It can be implemented by FLASH (flash memory) or RAM (Random Access Memory).

[0157] In addition to the methods and apparatus described above, embodiments of this application may also provide a computer program product, including computer program instructions, which, when executed by a processor, cause the processor to perform the steps of the frequency adjustment methods of the various embodiments of this application described in the above method embodiment section.

[0158] Computer program products can be written in any combination of one or more programming languages ​​to perform the operations of the embodiments of this application. These programming languages ​​include object-oriented programming languages ​​such as Java and C++, as well as conventional procedural programming languages ​​such as C or similar languages. The program code can be executed entirely on the user's computing device, partially on the user's computing device, as a standalone software package, partially on the user's computing device and partially on a remote computing device, or entirely on a remote computing device or server.

[0159] Furthermore, embodiments of this application may also be computer-readable storage media storing computer program instructions thereon, which, when executed by a processor, cause the processor to perform the steps in the frequency adjustment methods of the various embodiments of this application described in the above-described method embodiment section.

[0160] Computer-readable storage media may take the form of any combination of one or more readable media. A readable medium may be a readable signal medium or a readable storage medium. A readable storage medium may include, but is not limited to, systems, apparatuses, or devices that are electrical, magnetic, optical, electromagnetic, infrared, or semiconductor, or any combination thereof. More specific examples of readable storage media (a non-exhaustive list) include: electrical connections having one or more wires, portable disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fibers, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof.

[0161] The basic principles of this application have been described above with reference to specific embodiments. However, the advantages, benefits, and effects mentioned in this application are merely examples and not limitations, and should not be considered as essential features of each embodiment of this application. Furthermore, the specific details of the above embodiments are for illustrative and facilitative purposes only, and are not limitations. These details do not restrict this application from being implemented using the aforementioned specific details.

[0162] Those skilled in the art can make various modifications and variations to this application without departing from the spirit and scope of this application. Therefore, if such modifications and variations fall within the scope of the claims of this application and their equivalents, this application also intends to include such modifications and variations.

[0163] Furthermore, the embodiments described above are merely specific embodiments of this application and are not intended to limit the scope of protection of this application. Any modifications, equivalent substitutions, improvements, etc., made based on the technical solution of this application should be included within the scope of protection of this application.

Claims

1. A method for adjusting the frequency of a central processing unit (CPU), characterized in that, The method is executed by the baseboard management controller (BMC), and the method includes: Collect multiple feature data of the CPU; Based on the multiple feature data and the preset computing environment mapping relationship, the current performance evaluation value of the CPU is determined; wherein, the computing environment mapping relationship includes at least one target computing environment; If the CPU's operating environment is determined to match the at least one target operating environment based on the current performance evaluation value, the CPU frequency is adjusted.

2. The method according to claim 1, characterized in that, The process of determining the current performance evaluation value of the CPU based on the multiple feature data and the preset computing environment mapping relationship includes: Upon receiving a first instruction, a first weight set is determined from the computing environment mapping relationship based on the first instruction; wherein, the computing environment mapping relationship includes the correspondence between the at least one target computing environment and different weight sets and different preset thresholds, and the preset thresholds are used to determine whether the CPU is currently running in the target computing environment corresponding to the preset threshold; Based on the multiple feature data and the first weight set, the current performance evaluation value is determined; Correspondingly, adjusting the CPU frequency when the CPU's operating environment is determined to match the at least one target operating environment based on the current performance evaluation value includes: Based on the computing environment mapping relationship, a first preset threshold corresponding to the first weight set is determined from the different preset thresholds, and a first target computing environment corresponding to the first weight set is determined from the at least one target computing environment; If, based on the current performance evaluation value and the first preset threshold, the CPU is determined to be running in the first target computing environment, the frequency of the CPU is adjusted.

3. The method according to claim 2, characterized in that, The step of adjusting the CPU frequency when the CPU is determined to be running in the first target computing environment based on the current performance evaluation value and the first preset threshold includes: If the current performance evaluation value is greater than the first preset threshold, it is determined that the CPU is running in the first target computing environment; Adjust the CPU frequency.

4. The method according to claim 2, characterized in that, The step of determining the current performance evaluation value based on the multiple feature data and the first weight set includes: Determine the first weight corresponding to each of the feature data from the first weight set; Based on the first weight corresponding to each of the aforementioned feature data, the multiple feature data are weighted and summed to obtain the current performance evaluation value.

5. The method according to claim 1, characterized in that, The step of adjusting the CPU frequency when the CPU's operating environment is determined to match the at least one target operating environment based on the current performance evaluation value includes: If the CPU's operating environment is determined to match the at least one target operating environment based on the current performance evaluation value, the current gain of the CPU is determined. The CPU frequency is adjusted based on the current gain.

6. The method according to any one of claims 1-5, characterized in that, The collection of multiple feature data of the CPU includes: Multiple performance evaluation metrics are determined; wherein the dimensions of the performance evaluation metrics belong to at least one of the following: hardware dimension, software dimension, and system dimension; Based on the performance evaluation metrics, multiple feature data of the CPU are collected.

7. The method according to any one of claims 1-5, characterized in that, The collection of multiple feature data of the CPU includes: Trigger an interrupt signal to enable the CPU performance monitoring switch in the Basic Input / Output System BIOS; With the performance monitoring switch in the on state, multiple characteristic data of the CPU are collected.

8. A method for adjusting the frequency of a central processing unit (CPU), characterized in that, The method is executed by the Input / Output System BIOS, which runs on the CPU, and the method includes: Upon receiving an interrupt signal triggered by the Baseboard Management Controller (BMC), the CPU's performance monitoring switch is activated. The BMC is used to collect multiple feature data of the CPU; based on the multiple feature data and a preset computing environment mapping relationship, the current performance evaluation value of the CPU is determined; wherein the computing environment mapping relationship includes at least one target computing environment; and when it is determined that the computing environment of the CPU matches the at least one target computing environment according to the current performance evaluation value, the frequency of the CPU is adjusted.

9. The method according to claim 8, characterized in that, The step of activating the CPU performance monitoring switch upon receiving an interrupt signal triggered by the Baseboard Management Controller (BMC) includes: Upon receiving an interrupt signal triggered by the BMC, configure performance event monitoring and obtain the configuration result of the performance event; The configuration result is reported to the BMC so that the BMC can determine whether the CPU performance monitoring switch is turned on based on the configuration result.

10. A computing device, characterized in that, The computing device includes: Processor, Baseboard Management Controller (BMC), and memory; The processor is used to run the Basic Input / Output System (BIOS), and the memory is used to store computer instructions, which are loaded and executed by the processor or the BIOS to enable the computing device to implement the CPU frequency adjustment method as described in any one of claims 1 to 9.