Method and device for controlling power consumption of whole SSD, computer equipment and storage medium
By configuring power consumption factors and setting up power consumption pools for FLASH commands, the problem of difficult power consumption in the entire SSD disk is solved, and fine management of power consumption and system stability is achieved.
Patent Information
- Application Number
- CN202510172230.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-02-17
- Publication Date
- 2025-06-06
AI Technical Summary
The existing technology is difficult to effectively control the power consumption of the entire solid-state drive (SSD), resulting in excess of power consumption and affecting system stability and data security.
By configuring the power consumption factor corresponding to the FLASH command and setting up a total power consumption pool, we can accurately control the power consumption requirements during execution of each FLASH command to ensure that the power consumption is always within a reasonable range.
It realizes fine control of SSD power consumption, avoids power consumption exceeding the standard, extends the service life of the SSD, and improves the stability and reliability of the system.
Smart Images

Figure CN120104060A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to solid state disk technology, and more specifically to a method, device, computer equipment and storage medium for controlling the power consumption of an entire SSD. Background Art
[0002] In the field of solid-state drive (SSD) technology, with the continuous growth of storage demand and the rapid development of storage technology, SSD has become an important part of the data storage field. With its advantages of high-speed data reading and writing, low noise, and strong shock resistance, SSD has been widely used in data centers, personal computers, embedded systems and other fields. However, the performance and power consumption characteristics of SSD are significantly affected by its internal components, especially the selection and design of key components such as NAND flash memory particles, hardware topology, and dynamic random access memory (DDR).
[0003] NAND flash memory particles are the core components of SSD data storage. Their types (such as SLC, MLC, TLC, QLC, etc.) directly affect storage density, read and write speeds, and power consumption levels. Different types of NAND particles have significant differences in programming / erase cycles, data retention capabilities, and energy consumption. In addition, the hardware topology, including the design of the controller, the number and layout of data channels, also plays a decisive role in the overall performance and power consumption management of the SSD. As a cache medium, DDR's capacity, speed, and energy efficiency also have a significant impact on the response time and power consumption performance of the SSD.
[0004] In actual applications, due to the diversity of the above components, SSD platters of different specifications show significant differences in power consumption and performance. If there is a lack of an effective power consumption control mechanism, the actual power consumption of the SSD may far exceed the level stated in its official white paper or technical specification. This excessive power consumption will not only reduce the energy efficiency of the SSD itself, but may also trigger a series of chain reactions, such as an increase in the power consumption of the entire machine, which will in turn put higher requirements on the system's heat dissipation design, increase the difficulty and cost of heat dissipation. In extreme cases, excessive power consumption may also lead to a decrease in system stability, affecting the security and reliability of data.
[0005] Therefore, developing a technology that can adjust the power management strategy according to different SSD specifications to ensure that the power consumption of the SSD in actual operation is controlled within a reasonable range is of great significance for improving the overall performance of the SSD, extending its service life, and ensuring stable operation of the system. Although there are some power management technologies on the market, most of them are optimized for specific types of SSDs or components, and there is a lack of a universal solution that can flexibly adjust power consumption control according to the specific configuration of the SSD. Summary of the invention
[0006] The purpose of the present invention is to overcome the deficiencies of the prior art and provide a method, device, equipment and medium for controlling the power consumption of the entire SSD.
[0007] In order to solve the above technical problems, the present invention adopts the following technical solutions:
[0008] In a first aspect, a method for controlling the power consumption of an entire SSD is provided, including:
[0009] Configure the power consumption factor corresponding to the FLASH command and a total power consumption pool;
[0010] Get the FLASH command and apply for power consumption from the power pool according to the power consumption factor corresponding to the FLASH command;
[0011] Determine whether there are sufficient power consumption resources remaining in the power consumption pool;
[0012] If there are enough power resources remaining in the power pool, the FLASH command is executed, and the corresponding power consumption is released to the power pool after the execution is completed.
[0013] In a second aspect, a device for controlling the power consumption of the entire SSD is provided, including:
[0014] A configuration unit, used to configure a power consumption factor corresponding to a FLASH command and a total power consumption pool;
[0015] An acquisition application unit is used to obtain a FLASH command and apply for power consumption from a power consumption pool according to a power consumption factor corresponding to the FLASH command;
[0016] A judging unit, used to judge whether there are enough power consumption resources remaining in the power consumption pool;
[0017] The execution release unit is used to execute the FLASH command if there are enough power consumption resources remaining in the power consumption pool, and release the corresponding power consumption to the power consumption pool after the execution is completed.
[0018] In a third aspect, a computer device is provided, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the steps of the above-mentioned method for controlling the power consumption of the entire SSD when executing the computer program.
[0019] In a fourth aspect, a computer-readable storage medium is provided, wherein the computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps of the above-mentioned method for controlling the power consumption of the entire SSD are implemented.
[0020] The above method for controlling the power consumption of the entire SSD disk configures the corresponding power consumption factor for the FLASH command and establishes a total power consumption pool to manage the power consumption resources of the entire SSD disk. It can accurately control the power consumption requirements when each FLASH command is executed. This refined management method ensures that the power consumption of the SSD is always kept within a preset reasonable range when performing different operations, effectively avoiding the occurrence of excessive power consumption. In addition, by adjusting the power consumption factor of the FLASH command, the power consumption level can be flexibly adjusted while ensuring the performance requirements of the SSD. This dynamic balancing mechanism enables the SSD to automatically adjust the balance point between power consumption and performance according to the actual application scenarios and performance requirements, thereby minimizing power consumption while meeting performance requirements.
[0021] The present invention is further described below in conjunction with the accompanying drawings and specific embodiments. BRIEF DESCRIPTION OF THE DRAWINGS
[0022] In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the accompanying drawings required for use in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are some embodiments of the present invention. For ordinary technicians in this field, other accompanying drawings can be obtained based on these accompanying drawings without paying any creative work.
[0023] Figure 1 A flow chart of a method for controlling the power consumption of an entire SSD provided by an embodiment of the present invention;
[0024] Figure 2 A schematic block diagram of a device for controlling the power consumption of an entire SSD provided by an embodiment of the present invention;
[0025] Figure 3 It is a schematic diagram of the structure of a computer device in an embodiment of the present invention. DETAILED DESCRIPTION
[0026] The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.
[0027] It should be understood that when used in this specification and the appended claims, the terms "include" and "comprises" indicate the presence of described features, integers, steps, operations, elements and / or components, but do not exclude the presence or addition of one or more other features, integers, steps, operations, elements, components and / or combinations thereof.
[0028] It should also be understood that the terms used in this specification of the present invention are only for the purpose of describing specific embodiments and are not intended to limit the present invention. As used in the specification of the present invention and the appended claims, unless the context clearly indicates otherwise, the singular forms "a", "an" and "the" are intended to include plural forms.
[0029] It should be further understood that the term "and / or" used in the present description and the appended claims refers to and includes any and all possible combinations of one or more of the associated listed items.
[0030] See also Figure 1 In the specific embodiment shown, the present invention discloses a method for controlling the power consumption of the entire SSD, including the following steps:
[0031] S110, configuring a power consumption factor corresponding to a FLASH command and a total power consumption pool;
[0032] Specifically, each specification of the disk will be configured with a different PN code to identify each specification of the disk, and each specification of the disk has different configuration items (including erase / write / read power consumption factors).
[0033] In one embodiment, the step of configuring the power consumption factor corresponding to the FLASH command and a total power consumption pool includes: in the SSD disk, the types of FLASH commands include erase commands, write commands, and read commands, and the configuration parameters are obtained by configuring different power consumption factors corresponding to the erase commands, write commands, and read commands, and the FLASH command obtains the corresponding power consumption factor according to the configuration parameters.
[0034] More specifically, configure the power consumption factor of the FLASH command: determine the type of FLASH command in the SSD disk, which mainly includes erase command, write command and read command; for each type of FLASH command, configure different power consumption factors according to the specifications of the disk (such as capacity, speed, etc.) and the parameters provided by the manufacturer, and these power consumption factors reflect the energy consumption required to execute the corresponding command; store these power consumption factors as configuration parameters in the firmware or configuration file of the SSD, so that the corresponding power consumption factors can be obtained according to these parameters when the FLASH command is executed.
[0035] Set a total power consumption pool: According to the overall design specifications of the SSD (such as maximum power consumption limit, heat dissipation capacity, etc.), set a total power consumption pool, that is, the maximum power consumption limit allowed by the SSD; allocate the total power consumption pool to different FLASH commands and other components inside the SSD (such as controller, cache, etc.) to ensure that the limit of the total power consumption pool is not exceeded at any time.
[0036] Consider the parameters that affect the disk temperature: Collect the key parameters of the SSD disk, including the chip frequency, DDR capacity, type and number of NAND Flash particles, total capacity of the SSD, etc.; analyze the impact of these parameters on the disk temperature. For example, higher chip frequency and larger DDR capacity may lead to higher power consumption and temperature; based on the analysis results, adjust the configuration of the power consumption factor to balance performance and temperature control.
[0037] Actual measurement and manual adjustment: For each specification of SSD, actual power consumption and temperature tests are performed to verify the validity of the configuration parameters. Based on the test results, the power consumption factor and the total power consumption pool configuration are manually adjusted until an optimal balance point is found that meets performance requirements and controls temperature.
[0038] By implementing the power consumption factor corresponding to the above configuration FLASH command and a total power consumption pool, this technical feature brings the following technical effects:
[0039] Optimize power consumption management: By accurately configuring the power consumption factor and total power consumption pool of the FLASH command, you can more effectively manage the power consumption of the SSD, reduce unnecessary energy consumption, and extend the service life of the SSD.
[0040] Temperature control: Considering the various factors that affect the temperature of the disk and adjusting the parameters through actual measurement can help control the operating temperature of the SSD and prevent performance degradation or failure due to overheating.
[0041] Improve performance: Reasonable power consumption configuration can optimize the internal resource allocation of the SSD and improve the overall performance while maintaining low power consumption and temperature.
[0042] Enhanced reliability: Through precise configuration and actual measurement adjustments, the reliability and stability of SSDs can be improved, and the failure rate caused by power consumption and temperature issues can be reduced.
[0043] S120, obtaining a FLASH command, and applying for power consumption from a power consumption pool according to a power consumption factor corresponding to the FLASH command;
[0044] Specifically, the controller or firmware inside the SSD is responsible for monitoring and capturing FLASH commands from the host, which may include operations such as data reading, writing or erasing. The controller or firmware parses the captured FLASH commands and identifies the specific command type (such as read, write, erase) and target address information. According to the type and target address of the FLASH command, the controller or firmware retrieves the power consumption factor corresponding to the command from the pre-stored configuration table. The power consumption factor is a numerical value that reflects the expected power consumption level when executing the command. The specific value of the power consumption factor is determined based on factors such as the specifications of the SSD, the characteristics of the NAND Flash particles, the design of the controller, and the actual application scenario. The controller or firmware calculates the power consumption required to execute the FLASH command based on the retrieved power consumption factor. Then, it sends an application to the power management system (i.e., the power pool) inside the SSD, requesting the allocation of sufficient power consumption resources to execute the command. The power pool is a virtual or actual resource pool used to manage and allocate the total power consumption of the SSD. The power management system decides whether to approve the application based on the current power usage, the remaining capacity of the power pool, and the power consumption requested. If the power application is approved, the power management system will allocate the corresponding power resources from the power pool to the controller or firmware. The controller or firmware then executes the FLASH command while using the allocated power resources.
[0045] By implementing the above-mentioned acquisition of FLASH commands and applying for power consumption from the power consumption pool according to the power consumption factor corresponding to the FLASH commands, this technical feature brings the following technical effects:
[0046] Fine-grained power consumption control: By matching the corresponding power consumption factors for each FLASH command and applying for power consumption from the power pool based on these factors, fine-grained control of SSD power consumption is achieved, which helps ensure that the power consumption of the SSD always remains within a preset reasonable range when performing different operations.
[0047] Improved energy efficiency: Fine-grained power consumption control means that the SSD can use power resources more efficiently and reduce unnecessary energy consumption, which helps improve the energy efficiency of the SSD and extend its service life.
[0048] Enhanced system stability: By limiting the power consumption requirements of each FLASH command, problems such as system overheating, performance degradation, or failures caused by excessive power consumption can be prevented, which helps to enhance the stability of the SSD and the entire system.
[0049] Optimize user experience: Fine-grained power consumption control means that the SSD can maintain lower temperatures and power consumption levels when performing read and write operations, thereby reducing reliance on the cooling system and improving the overall user experience.
[0050] S130, determining whether there are sufficient power consumption resources remaining in the power consumption pool;
[0051] Specifically, the remaining power consumption resources in the power consumption pool are monitored in real time or regularly, which is usually accomplished by reading the internal status register of the power consumption management system or querying a specific system interface. The status of the power consumption pool may include information such as the current remaining power consumption, the allocated power consumption, and the total capacity of the power consumption pool. One or more power consumption thresholds are set according to the design specifications, application scenarios, and power consumption management strategies of the SSD. These thresholds are used to determine whether the power consumption pool has sufficient power consumption resources remaining. For example, a minimum remaining power consumption threshold can be set. When the remaining power consumption in the power consumption pool is lower than this threshold, the power consumption resources are considered insufficient. The monitored remaining power consumption of the power consumption pool is compared with the set power consumption threshold. If the remaining power consumption is greater than or equal to the power consumption threshold, it is considered that the power consumption pool has sufficient power consumption resources remaining; if the remaining power consumption is less than the power consumption threshold, it is considered that the power consumption resources are insufficient. Alternatively, based on the current status of the power consumption pool and the currently executed FLASH command, it is determined whether the power consumption pool has sufficient power consumption resources remaining; if the remaining power consumption in the power consumption pool is lower than the power consumption corresponding to the currently executed FLASH command, the system determines that the power consumption resources are insufficient. Then, corresponding response measures are taken according to the judgment result. For example, when the power consumption resources are insufficient, new power consumption applications can be rejected, the operating frequency of the SSD can be reduced, the energy-saving mode can be triggered, or a warning can be issued to the user. At the same time, the status and judgment results of the power consumption pool can also be recorded for subsequent analysis and optimization.
[0052] By implementing the above-mentioned determination of whether there are sufficient power consumption resources remaining in the power consumption pool, this technical feature brings the following technical effects:
[0053] Improve power management efficiency: By real-time monitoring and judging the status of the power pool, you can more accurately understand the power consumption of the SSD, thereby improving the efficiency of power management.
[0054] Enhance system stability: By setting power consumption thresholds and responding promptly to insufficient power consumption resources, you can prevent problems such as system overheating, performance degradation, or failures caused by excessive power consumption, thereby enhancing system stability.
[0055] Optimize user experience: Through a reasonable power consumption management strategy, it can ensure that the SSD always maintains a low power consumption level when performing various operations, thereby reducing dependence on the cooling system and improving the overall user experience.
[0056] Extend the life of the SSD: By avoiding excessive power consumption and frequent power consumption fluctuations, the wear and tear on the internal components of the SSD can be reduced, thereby extending the life of the SSD.
[0057] In one embodiment, after the step S130, it also includes: S150, if the power consumption pool does not have sufficient power consumption resources remaining, blocking the FLASH command until the power consumption pool has sufficient power consumption resources remaining, and returning to execute the obtain FLASH command, and applying for power consumption from the power consumption pool according to the power consumption factor corresponding to the FLASH command.
[0058] Specifically, the system first determines whether the power pool has sufficient power resources remaining according to the current state of the power pool and the currently executed FLASH command. If the remaining power consumption in the power pool is lower than the power consumption corresponding to the currently executed FLASH command, the system determines that the power resources are insufficient. Once it is determined that the power resources are insufficient, the system will immediately take measures to block the current FLASH command to be executed, which usually involves pausing the execution queue of the command to prevent new FLASH commands from being sent to the NAND Flash particles to prevent further power consumption. The system will enter a waiting state, continuously monitor the state of the power pool, and wait for the recovery of the power resources, which may involve regularly checking the remaining power consumption of the power pool, or waiting for other commands being executed to release power resources. When the remaining power consumption in the power pool is restored to a level higher than the power consumption corresponding to the currently executed FLASH command, the system believes that the power resources have been restored, which may be due to the completion of other commands and the release of power resources, or because the system has taken energy-saving measures to reduce power consumption requirements. Once the power resources are restored, the system will unblock the FLASH command. Subsequently, the system will re-execute the previously blocked FLASH command, starting from obtaining the FLASH command, and again apply for power consumption from the power pool according to the power consumption factor corresponding to the FLASH command.
[0059] By implementing the above blocking FLASH command until the power pool has enough power consumption resources remaining, this technical feature brings the following technical effects:
[0060] Prevent power overload: By blocking FLASH commands when power resources are insufficient, the system can prevent system instability or hardware damage caused by power overload.
[0061] Improve power management flexibility: The system can dynamically adjust the execution of FLASH commands according to the real-time status of the power pool, thereby improving the flexibility and response speed of power management.
[0062] Optimizing system performance: By avoiding the execution of high-power commands when power resources are insufficient, the system can maintain a more stable power consumption level, thereby optimizing overall system performance.
[0063] Enhanced user experience: By ensuring that the system can intelligently manage the execution of FLASH commands when power resources are insufficient, users can enjoy a more stable and reliable SSD experience.
[0064] Extend the life of the SSD: Through reasonable power consumption management, the system can reduce the wear of the SSD under power consumption overload conditions, thereby extending the life of the SSD.
[0065] In addition, when multiple FLASH commands are executed concurrently at the same time, each FLASH command execution will take time, power consumption will be applied before execution begins, and power consumption will be released after execution is completed. That is, when there are too many concurrent commands, it is easy to cause insufficient power pool resources. Of course, if there are no commands being executed, the power pool is full, and there will be no insufficient power pool resources. When there are multiple blocking commands before and after, that is, when the previous command fails to apply for power consumption, the next command will not apply for power consumption first, but wait until the previous command is successfully applied before applying. That is, the command is in FIFO (first in, first out), first come first served, and there will be no situation where the later command will apply for power consumption first.
[0066] In addition, when there are multiple parallel commands, but the remaining power consumption of the power pool cannot meet all the parallel commands, the power consumption of each concurrent command is independent and will not be executed according to the power consumption size. The command cache has a priority order in FIFO (first in, first out). When the remaining power consumption resources of the power pool are insufficient, as long as one of the commands being executed is completed, the corresponding power consumption will be released, and the command in front will check whether the power pool has enough remaining power consumption resources; if the power consumption of the queued command is too large, it is necessary to wait until the second (or more) concurrent command is released until the power consumption required for the application is met.
[0067] S140: If the power consumption pool has sufficient power consumption resources remaining, execute the FLASH command, and release the corresponding power consumption to the power consumption pool after the execution is completed.
[0068] Specifically, the system first checks the current state of the power pool to confirm whether the remaining power resources in the power pool meet the power consumption required to execute the upcoming FLASH command. This step usually involves comparing the remaining power consumption in the power pool with the power consumption requirements determined by the power consumption factor corresponding to the FLASH command. If the power resources are sufficient, the system will take out the FLASH command to be executed from the command queue. Subsequently, the system will send the command to the NAND Flash particle and start the corresponding read, write or erase operation. During the execution process, the system will continue to monitor the state of the power pool to ensure that the power consumption is within the preset safety range. Once the FLASH command is executed, the system will check whether the command is successfully executed and handle any possible errors or abnormal situations. Subsequently, the system will calculate the actual power consumption of the command and release the corresponding power resources from the power pool, which usually involves updating the status register or internal data structure of the power pool to reflect the latest situation of the power resources. After releasing the power resources, the system will update its internal state, including the state of the power pool, the state of the command queue, and any related counters or flags. These updates help the system better manage subsequent power requirements and command execution.
[0069] By implementing the above-mentioned FLASH command execution and releasing the corresponding power consumption to the power consumption pool after the execution is completed, this technical feature brings the following technical effects:
[0070] Improve power utilization efficiency: By executing FLASH commands while ensuring that power resources are sufficient and releasing power resources after the command is completed, the system can more effectively utilize resources in the power pool.
[0071] Enhanced system stability: By continuously monitoring the status of the power pool during command execution, the system can promptly detect and respond to any potential power overload conditions, thereby enhancing system stability.
[0072] Optimize the command execution process: By executing commands when power resources are sufficient and releasing power after completion, the system can keep the command queue running smoothly and optimize the overall command execution process.
[0073] Extending the life of the SSD: Through reasonable power management, the system can reduce the wear of the SSD when it frequently executes high-power commands, thereby extending the life of the SSD.
[0074] Improve user experience: By ensuring that the system can successfully execute FLASH commands when power resources are sufficient, users can enjoy a faster and more reliable SSD experience.
[0075] In one embodiment, after executing the FLASH command and releasing the corresponding power consumption to the power consumption pool after the execution is completed, the step further includes: regularly detecting the SSD disk temperature; when the SSD disk temperature is too high, increasing the power consumption factor corresponding to the FLASH command; when the SSD disk temperature drops to a normal level, decreasing the power consumption factor corresponding to the FLASH command.
[0076] Specifically, a timer task is built into the SSD firmware, which triggers the temperature detection operation periodically (such as every few seconds or minutes). Temperature detection is usually implemented through the temperature sensor inside the SSD, which can monitor the temperature of the SSD disk in real time. The system reads the data of the temperature sensor to obtain the temperature value of the current SSD disk. The system compares the read temperature value with the preset temperature threshold. If the temperature of the SSD disk is too high (exceeding the preset high temperature threshold), the system believes that the current SSD is in an overheated state and needs to reduce power consumption to reduce heat. Therefore, the system will increase the power consumption factor corresponding to the FLASH command (including read, write, erase, etc.), which means that more power consumption resources are required when executing the same command, thereby reducing the overall power consumption and heat generation by reducing the number of concurrent commands. On the contrary, if the temperature of the SSD disk drops to a normal level (lower than the preset high temperature threshold and higher than the low temperature threshold), the system will believe that the current SSD is in a normal state and can appropriately improve performance. Therefore, the system will reduce the power consumption factor corresponding to the FLASH command accordingly, which means that the power consumption resources required when executing the same command are reduced, so that more concurrent commands can be supported and the overall performance can be improved. By adjusting the power factor, the system can dynamically control the concurrent performance and power consumption level of the SSD. When the SSD is overheated, the concurrency is reduced to reduce power consumption and heat, protecting the SSD hardware from damage. When the SSD temperature is normal, the concurrency is increased to improve performance and meet the user's application needs. The system will continue to monitor the temperature of the SSD disk and the effect of the power factor adjustment. If the adjusted power factor still cannot effectively control the temperature or meet the performance requirements, the system may take further measures, such as reducing the operating frequency, enabling the cooling fan, etc.
[0077] By implementing the above-mentioned timed detection of SSD disk temperature, this technical feature brings the following technical effects:
[0078] Protect SSD hardware: Control the heat generation of the SSD by dynamically adjusting the power consumption factor to prevent hardware damage or performance degradation caused by overheating.
[0079] Optimize performance and power consumption: Dynamically adjust the power consumption factor according to the real-time temperature of the SSD disk, which not only ensures high performance output when the temperature is normal, but also protects the hardware by reducing performance when the temperature is too high.
[0080] Improve system stability: Through temperature monitoring and dynamic adjustment of power consumption factors, the system can better adapt to different working environments and load conditions, thereby improving the overall stability of the system.
[0081] Prolong SSD lifespan: Reasonable power consumption management and temperature control can help reduce wear and aging of SSDs, thus extending their lifespan.
[0082] Improve user experience: By improving performance and stability as much as possible while ensuring hardware security, the system can provide users with a smoother and more reliable experience.
[0083] The present invention configures the corresponding power consumption factor for the FLASH command and establishes a total power consumption pool to manage the power consumption resources of the entire SSD disk, which can accurately control the power consumption requirements when each FLASH command is executed. This refined management method ensures that the power consumption of the SSD is always kept within a preset reasonable range when performing different operations, effectively avoiding the occurrence of power consumption exceeding the standard. In addition, by adjusting the power consumption factor of the FLASH command, the power consumption level can be flexibly adjusted while ensuring the performance requirements of the SSD. This dynamic balance mechanism enables the SSD to automatically adjust the balance point between power consumption and performance according to the actual application scenario and performance requirements, thereby minimizing power consumption while meeting performance requirements. In addition, since the present invention effectively controls the power consumption of the entire SSD disk, it avoids problems such as system heat dissipation difficulties and decreased stability caused by excessive power consumption, which not only prolongs the service life of the SSD, but also improves the stability and reliability of the entire system, providing users with a more stable and efficient storage solution. In addition, the power consumption control method of the present invention has a high degree of flexibility and adaptability. By adjusting the power consumption factor and the size of the power consumption pool, it can easily adapt to SSDs of different specifications and different application scenarios, meeting the diverse needs of users for power consumption and performance. In addition, by effectively managing the power consumption of the SSD, the present invention helps to reduce the overall energy consumption of the system, thereby reducing operating costs; in addition, since system failures and maintenance requirements caused by excessive power consumption are reduced, the user's maintenance costs are further reduced.
[0084] Figure 2 FIG. 3 is a schematic block diagram of a device 300 for controlling the power consumption of an entire SSD provided by an embodiment of the present invention. Figure 2 As shown, corresponding to the above method for controlling the power consumption of the entire SSD disk, the present invention also provides a device 300 for controlling the power consumption of the entire SSD disk. The device 300 for controlling the power consumption of the entire SSD disk includes a unit for executing the above method for controlling the power consumption of the entire SSD disk, and the device can be configured in a server. Figure 2The device 300 for controlling the power consumption of the entire SSD includes a configuration unit 301, an acquisition application unit 302, a judgment unit 303, and an execution release unit 304;
[0085] The configuration unit 301 is used to configure the power consumption factor corresponding to the FLASH command and a total power consumption pool;
[0086] The acquisition application unit 302 is used to acquire the FLASH command and apply for power consumption from the power consumption pool according to the power consumption factor corresponding to the FLASH command;
[0087] A judging unit 303, used to judge whether there are enough power consumption resources remaining in the power consumption pool;
[0088] The execution release unit 304 is used to execute the FLASH command if there are enough power consumption resources remaining in the power consumption pool, and release the corresponding power consumption to the power consumption pool after the execution is completed.
[0089] In one embodiment, the configuration unit 301 includes: in the SSD disk, the types of FLASH commands include erase commands, write commands, and read commands, and different power consumption factors corresponding to the erase commands, write commands, and read commands are configured to obtain configuration parameters, and the FLASH command obtains the corresponding power consumption factor according to the configuration parameters.
[0090] In one embodiment, the device also includes: a blocking return unit 305, which is used to block the FLASH command if the power consumption pool does not have sufficient power consumption resources remaining, until the power consumption pool has sufficient power consumption resources remaining, and return to execute the obtain FLASH command, and apply for power consumption from the power consumption pool according to the power consumption factor corresponding to the FLASH command.
[0091] In one embodiment, the device further includes: a detection and adjustment unit for periodically detecting the SSD disk temperature; when the SSD disk temperature is too high, the power consumption factor corresponding to the FLASH command is increased; when the SSD disk temperature drops to a normal level, the power consumption factor corresponding to the FLASH command is decreased.
[0092] It should be noted that technicians in the relevant field can clearly understand that the specific implementation process of the above-mentioned device 300 for controlling the power consumption of the entire SSD and each unit can refer to the corresponding description in the aforementioned method embodiment, and for the convenience and brevity of description, it will not be repeated here.
[0093] In one embodiment, a computer device is provided. The computer device may be a server, and its internal structure diagram may be as follows: Figure 3As shown. The computer device includes a processor, a memory, a network interface and a database connected via a system bus. Among them, the processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile and / or volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program and a database. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The network interface of the computer device is used to communicate with an external client via a network connection. When the computer program is executed by the processor, it implements the functions or steps on the server side of a method for controlling the power consumption of the entire SSD disk.
[0094] In one embodiment, a computer device is provided, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the following steps when executing the computer program:
[0095] Configure the power consumption factor corresponding to the FLASH command and a total power consumption pool; obtain the FLASH command and apply for power consumption from the power consumption pool according to the power consumption factor corresponding to the FLASH command; determine whether the power consumption pool has sufficient power consumption resources remaining; if the power consumption pool has sufficient power consumption resources remaining, execute the FLASH command and release the corresponding power consumption to the power consumption pool after the execution is completed.
[0096] In one embodiment, a computer readable storage medium is provided, on which a computer program is stored, and when the computer program is executed by a processor, the following steps are implemented:
[0097] Configure the power consumption factor corresponding to the FLASH command and a total power consumption pool; obtain the FLASH command and apply for power consumption from the power consumption pool according to the power consumption factor corresponding to the FLASH command; determine whether the power consumption pool has sufficient power consumption resources remaining; if the power consumption pool has sufficient power consumption resources remaining, execute the FLASH command and release the corresponding power consumption to the power consumption pool after the execution is completed.
[0098] It should be noted that the above functions or steps that can be implemented by the computer-readable storage medium or computer device can refer to the relevant descriptions on the server side and the client side in the aforementioned method embodiment. To avoid repetition, they will not be described one by one here.
[0099] Those skilled in the art can understand that all or part of the processes in the above-mentioned embodiment methods can be completed by instructing the relevant hardware through a computer program, and the computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to memory, storage, database or other media used in the embodiments provided in this application can include non-volatile and / or volatile memory. Non-volatile memory can include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM) or flash memory. Volatile memory can include random access memory (RAM) or external cache memory. As an illustration and not limitation, RAM is available in many forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous link (Synchlink) DRAM (SLDRAM), memory bus (Rambus) direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM).
[0100] Those skilled in the art can clearly understand that for the convenience and simplicity of description, only the division of the above-mentioned functional units and modules is used as an example. In actual applications, the above-mentioned functions can be distributed and completed by different functional units and modules as needed, that is, the internal structure of the device can be divided into different functional units or modules to complete all or part of the functions described above.
[0101] The embodiments described above are only used to illustrate the technical solutions of the present invention, rather than to limit the same. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that the technical solutions described in the aforementioned embodiments may still be modified, or some of the technical features may be replaced by equivalents. Such modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present invention, and should all be included in the protection scope of the present invention.
Claims
1. A method for controlling the power consumption of the entire SSD, characterized in that: include: Configure the power consumption factor corresponding to the FLASH command and a total power consumption pool; Get the FLASH command and apply for power consumption from the power pool according to the power consumption factor corresponding to the FLASH command; Determine whether there are sufficient power consumption resources remaining in the power consumption pool; If there are enough power resources remaining in the power pool, the FLASH command is executed, and the corresponding power consumption is released to the power pool after the execution is completed.
2. The method for controlling the power consumption of the entire SSD according to claim 1, characterized in that: The steps of configuring the power consumption factor corresponding to the FLASH command and a total power consumption pool include: in the SSD disk, the types of FLASH commands include erase commands, write commands, and read commands, and different power consumption factors corresponding to the erase commands, write commands, and read commands are configured to obtain configuration parameters, and the FLASH command obtains the corresponding power consumption factor according to the configuration parameters.
3. The method for controlling the power consumption of the entire SSD according to claim 1, characterized in that: After the step of determining whether the power consumption pool has sufficient power consumption resources remaining, the method also includes: if the power consumption pool does not have sufficient power consumption resources remaining, blocking the FLASH command until the power consumption pool has sufficient power consumption resources remaining, and returning to execute the obtain FLASH command, and applying for power consumption from the power consumption pool according to the power consumption factor corresponding to the FLASH command.
4. The method for controlling the power consumption of the entire SSD according to claim 1, characterized in that: After executing the FLASH command and releasing the corresponding power consumption to the power consumption pool after the execution is completed, the method further includes: regularly detecting the SSD disk temperature; when the SSD disk temperature is too high, increasing the power consumption factor corresponding to the FLASH command; when the SSD disk temperature drops to a normal level, decreasing the power consumption factor corresponding to the FLASH command.
5. A device for controlling the power consumption of the entire SSD, characterized in that: include: A configuration unit, used to configure a power consumption factor corresponding to a FLASH command and a total power consumption pool; An acquisition application unit is used to obtain a FLASH command and apply for power consumption from a power consumption pool according to a power consumption factor corresponding to the FLASH command; A judging unit, used to judge whether there are enough power consumption resources remaining in the power consumption pool; The execution release unit is used to execute the FLASH command if there are enough power consumption resources remaining in the power consumption pool, and release the corresponding power consumption to the power consumption pool after the execution is completed.
6. The device for controlling the power consumption of the entire SSD according to claim 5, characterized in that: The configuration unit includes: in the SSD disk, the types of FLASH commands include erase commands, write commands, and read commands, and different power consumption factors corresponding to the erase commands, write commands, and read commands are configured to obtain configuration parameters, and the FLASH command obtains the corresponding power consumption factor according to the configuration parameters.
7. The device for controlling the power consumption of the entire SSD according to claim 5, characterized in that: The device also includes: a blocking return unit, which is used to block the FLASH command if the power consumption pool does not have enough power consumption resources left, until the power consumption pool has enough power consumption resources left, and return to execute the obtain FLASH command, and apply for power consumption from the power consumption pool according to the power consumption factor corresponding to the FLASH command.
8. The device for controlling the power consumption of the entire SSD according to claim 5, characterized in that: The device also includes: a detection and adjustment unit, which is used to regularly detect the temperature of the SSD disk; when the temperature of the SSD disk is too high, the power consumption factor corresponding to the FLASH command is increased, and when the temperature of the SSD disk drops to a normal level, the power consumption factor corresponding to the FLASH command is decreased.
9. A computer device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that: When the processor executes the computer program, the steps of the method for controlling the power consumption of the entire SSD as described in any one of claims 1 to 4 are implemented.
10. A storage medium, wherein the computer-readable storage medium stores a computer program, characterized in that: When the computer program is executed by a processor, the steps of the method for controlling the power consumption of the entire SSD as claimed in any one of claims 1 to 4 are implemented.