US20030110423A1 - Variable maximum die temperature based on performance state - Google Patents
Variable maximum die temperature based on performance state Download PDFInfo
- Publication number
- US20030110423A1 US20030110423A1 US10/015,031 US1503101A US2003110423A1 US 20030110423 A1 US20030110423 A1 US 20030110423A1 US 1503101 A US1503101 A US 1503101A US 2003110423 A1 US2003110423 A1 US 2003110423A1
- Authority
- US
- United States
- Prior art keywords
- temperature
- performance
- performance state
- maximum
- state
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/16—Constructional details or arrangements
- G06F1/20—Cooling means
- G06F1/206—Cooling means comprising thermal management
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Definitions
- This invention relates to computer systems and more particularly to power management of computer systems.
- the rated processor speed can be limited by power and thermal considerations and more specifically is determined, at least in significant part, by operating frequency, voltage, and temperature. If the die temperature can be kept sufficiently low, the rated processor clock speed can be increased. In one prior art approach to maximizing frequency at which a processor can be marketed, the processor includes an on-die temperature sensor that automatically throttles (reduces) the CPU's clock by 50% if the processor's temperature crosses a factory set threshold. If the maximum die temperature is set at a sufficiently low level of, e.g., 70 degrees C., the processor is able to meet the timing budget for the silicon process in which it is manufactured at a higher frequency at a given voltage than if the die temperature was significantly higher.
- the processor includes an on-die temperature sensor that automatically throttles (reduces) the CPU's clock by 50% if the processor's temperature crosses a factory set threshold. If the maximum die temperature is set at a sufficiently low level of, e.g., 70 degrees C., the processor is able to meet the timing
- the timing budget is the amount of time a signal has to propagate through combinational logic from one set of storage elements (e.g., flip-flops) to another set of storage elements and meet the setup and hold times associated with the flip-flops.
- a device can more easily meet a timing budget because, e.g., the propagation delays are reduced.
- the processor clock is throttled back to, e.g., 50% of its rated speed, which reduces the power consumption and thus the temperature.
- a processor rated at 2 GHz would run at 1 GHz upon crossing of the maximum die temperature threshold. In that way the processor can be rated at a higher speed at or below 70 degrees C., although it may operate with significantly reduced capability above that temperature.
- the invention provides a system in which the maximum performance state, which is typically based on such factors as operating frequency and voltage, changes according to thermal criteria.
- the thermal criteria may be, for example, a die temperature of the microprocessor. Once the temperature crosses above a predetermined temperature threshold, the maximum performance state available to the system is changed to a lower performance state. As the temperature crossed above successive temperature thresholds, successively lower maximum performance states become available to the system. That allows processor performance to be impacted less than the throttling alternative described above as the temperature increases. When the temperature crosses below a predetermined temperature threshold, a higher maximum performance state is again available to the system. Hysteresis may be implemented to ensure the system does not rapidly switch between performance states when the temperature is close to predetermined thresholds.
- the invention provides a processor that has multiple performance states determined by such factors as operating frequency and/or voltage. In a first temperature range, the processor operates with a first maximum performance state and in a second temperature range, higher than the first temperature range, the processor operates with a lower maximum performance state.
- the invention provides a method of operating a computing system that includes determining a temperature associated with an integrated circuit and operating the integrated circuit with a first performance state as a maximum performance state according to the determined temperature, the first performance state being one of a plurality of performance states available at the determined temperature.
- a method for providing a variable maximum die temperature for an integrated circuit in a computer system having a plurality of different maximum performance states comprising increasing the maximum allowable die temperature as a maximum allowable performance state is decreased.
- FIG. 1 is a high level flow diagram of power management operations based on CPU utilization.
- FIG. 2 illustrates switching between performance states according to utilization.
- FIG. 3 illustrates an exemplary processing system that can change performance state.
- FIG. 4 illustrates a table including various temperature trip points for an exemplary system.
- FIG. 5 shows the high level flow of an embodiment of the invention in which the maximum performance state available is adjusted according to temperature measurements.
- a computer system has a plurality of processor performance states, the processor performance states being generally determined by unique voltage/frequency combinations.
- the computing system provides lower maximum performance states as the detected temperature of, e.g. the processor die, increases.
- the computer system may change to a different performance states based on such factors as processor utilization as explained more fully herein.
- the detected temperatures may be related directly to the processor by measuring the die temperature directly using a sensor on the die or may measure the die temperature indirectly using a sensor that is off-die.
- other indirect measurements may be taken such as ambient temperatures or measurements of the temperature of other computer system components to determine the appropriate mode of operation although indirect measurements may reduce accuracy. Because the different temperature ranges have different maximum performance states, the maximum amount of power that can be consumed grows less as the temperature increases through the various temperature ranges and lower maximum performance states are provided.
- processor performance states could be determined by an amount of chip area that was enabled for processing.
- portions of the processor may be selectively disabled to control the amount of power consumed.
- the number of execution units that are enabled may vary.
- a power management control function in the computer system periodically determines the utilization level of the processor, i.e., how much of the available processor resources are being utilized, and selects a performance state that is appropriate for the utilization level.
- FIG. 1 a flow diagram illustrates at a high level, operation of an embodiment of a power management function utilized to provide the requisite power management control.
- the current CPU utilization is periodically determined in 101 . That current utilization is then compared to a high threshold level, e.g., 80% of processing resources, in 103 .
- the power management control function increases the performance state of the processor in 105 . In one embodiment, that can be accomplished by selecting a voltage/frequency pair that provides greater performance and then causing the processor to operate at the new voltage and frequency, as described further herein.
- the current utilization is below the high threshold, then the current utilization is compared to the low threshold in 107 .
- An exemplary low threshold level is 55%. If the current utilization is below that low threshold, the power management control function decreases the performance state of the processor in 109 . As described further herein, that may be accomplished by selecting, e.g., a voltage/frequency pair providing lower performance and then causing the performance change to occur. The power management control function then returns to 101 to periodically determine the utilization level and again compare the current utilization level to the high and low threshold levels. In that way the power management can tailor the performance state of the processor to the actual requirements.
- the management control function determines that more performance is necessary to meet performance requirements, one approach to providing increased performance is to increase the performance one step at a time until the current utilization is below the high threshold level.
- the power management control function selects the highest performance state regardless of the current performance state.
- the reasons for always selecting the highest possible performance state when a higher performance state is needed are as follows. In computer systems, performance demands are often of a bursty nature. When a higher performance state is required based on the current utilization level, stepping the performance state to a next higher level can result in degradation of performance that can be perceived by the user. That is especially true when the task that needs the increased performance requires a near real-time response, for instance, while decoding an audio or video file.
- FIG. 2 illustrates that concept. Assume the processor has five performance states P 0 -P 4 , with P 0 being the highest and P 4 the lowest. Whenever the power management determines that a higher performance state is required when operating at any of the levels P 1 -P 4 , the power management selects the maximum performance state P 0 as the next performance state. Thus, in one embodiment, if the performance state is always taken straight to the maximum performance state when a performance increase is required, rather than stepping up to the maximum performance state, there is less of a chance that a user could notice any performance degradation. In effect, the power management control function anticipates a peak loading by assuming that any indication of a required increase in performance is assumed to be a burst requiring peak performance.
- next lower performance state is selected.
- P 1 is selected as the next lower performance state.
- P 2 when a performance decrease is effectuated by the power management control function. In that way, if the performance is still too high, successively lower performance states can be selected and the chance than any degradation is detected by a system user is reduced.
- the power management control function selects the maximum (or near maximum) performance state, while a decrease in performance causes the power management control function to step to the next lowest performance state.
- processor utilization is kept within the range of the high and low thresholds, then a user should experience a crisp, high performance system, while still getting the benefit of power savings for those applications or those portions of applications requiring less performance. That approach reduces power consumption, extends battery life, reduces temperature resulting in less need for cooling and thus less fan noise, while still maintaining high performance and thus maintaining a perception of fast response to the user. Note that running at a lower average CPU die temperature increases CPU reliability, and that a lower CPU temperature results in a lower system temperature, which increases system reliability.
- the power management software has to cause the voltage and frequency used by the CPU to change.
- a processor is shown that can dynamically adjust its frequency and/or operating voltage to provide better thermal and power management in accordance with processor utilization.
- Processor 301 includes a programmable voltage control field 303 , core clock frequency control field 304 and count field 305 . Those fields may be located in one or more programmable registers.
- the processor and/or system determines that a change to the operating voltage and/or frequency is desired to increase or decrease the performance state, the desired frequency and voltage control information are loaded into frequency control field 304 and voltage control field 303 , respectively.
- Access to a register containing those fields, or an access to another register location, or access to a particular field in one of those registers can be used as a trigger to initiate the protocol for a performance state change.
- the protocol which will vary according to processor design, ensures that the processor enters a quiescent state that is suitable for performance state transitions.
- bus interface 310 is implemented separately from CPU core logic 311 and functions to hold off traffic to CPU core logic 311 during performance state transitions.
- Various messages may be sent or signals provided indicating that the processor has or is about to enter the quiescent state.
- various control and/or status signals 309 and 313 may be provided to and from core logic 311 .
- various power planes and clock grids may ensure some parts of the processor are unaffected by the processor core logic 311 entering the quiescent state.
- the quiescent state may vary according to processor design. For example, for one processor the quiescent state may have the clocks turned off and in other processors, the clocks may be reduced to an extent to allow appropriate voltage changes.
- the power state changes may include clock frequency changes, voltage changes or both. In x86 architectures, such a quiescent state has been referred to as the “stop grant” state in which execution of operating system and application code is stopped.
- stop grant state in which execution of operating system and application code is stopped.
- other ways may be used to initiate the protocol necessary to enter the quiescent state suitable for performance state changes. For example, initiation of the protocol to enter the quiescent state may be indicated by writing a command over a communication link coupling the processor to another device.
- the processor can transition the voltage and frequency to the new states specified in voltage control field 303 and clock frequency control field 304 .
- the processor core clocks are stopped after the processor enters the quiescent state to suitable for changing performance states.
- the processor core clock frequency is reduced to a frequency which can safely tolerate desired voltage changes.
- clock control frequency information is supplied as multiplier values for a clock that is supplied to processor 301 .
- the voltage control information specified in voltage control field 303 is supplied to voltage regulator 315 which in turn supplies CPU core logic 311 with the new voltage during the quiescent state.
- the voltage information may be supplied from a device outside the processor, or may be supplied by a communication link with a voltage regulator circuit.
- the quiescent state is typically maintained for a period of time to allow the new voltage and clock frequency to stabilize. That time period may be specified in count field 305 and counted using a counter in the processor or in another location in the computer system. Once the count is complete, the protocol is initiated to exit the quiescent state and resume executing operating system and application code, including restarting any buses that have been “turned off” by the processor as part of entering the quiescent state.
- FIG. 4 illustrates an exemplary set of temperature “trip points” at which power management activities take place.
- the power management control described herein may be implemented as part of the operating system (OS), in whole or in part.
- separate power management applications may incorporate some or all of the capability described herein.
- the various power management tasks may be shared between the operating system, software applications running under the operating system and BIOS routines.
- the power management techniques may be implemented in hardware.
- a temperature trip point that causes the system to make a higher maximum performance state available differs from the temperature trip point that causes a lower maximum performance state to be available. That provides hysteresis and avoids frequent changes in the available maximum performance state if the temperature is at or near a trip point.
- hysteresis is implemented by causing P 0 to become unavailable as the maximum performance state at 70C but to again become available at a temperature trip point of 68C.
- P 0 becomes the maximum performance state.
- P 1 becomes unavailable as the maximum performance state at 80C but again become available as the maximum performance state when the temperature crosses back below 78C.
- the system may detect whether the temperature is greater than, greater than or equal to, equal to, less than or less than or equal to a particular temperature, as appropriate for the particular situation, to determine if the system has crossed a temperature trip point.
- the available performance states may be implemented as a table or other data structure in BIOS, in application software, or in a power management portion of the operating system software.
- Other ways to encode the appropriate performance states according to the temperature would be readily apparent to those of skill in the art.
- FIG. 5 provides a high level illustration of the operation of an embodiment of the invention.
- FIG. 5 deals with maximum performance state transitions and does not illustrate operations of all power management functions.
- the flow chart corresponds to an embodiment of the invention that utilizes three temperature ranges illustrated in FIG. 4.
- a temperature associated with the microprocessor e.g., a die temperature of the microprocessor
- the system checks to see if it is operating with the maximum performance state being P 0 in 503 . If so, the system checks to see if the temperature has crossed above the 70C trip point. If so, at 507 , the system changes the maximum available performance state to P 1 and returns to obtain another temperature reading.
- the system checks to see at 509 if the maximum performance state is P 1 . If so, system checks to see if the temperature has crossed below 68C in 511 . If so, the maximum performance state is changed to P 0 in 513 . If not, the system checks in 515 if the temperature has crossed above the 80C trip point. If so, the maximum performance state is reduced to P 2 in 517 .
- the system determines that the maximum performance state is P 2 and the system checks to see if the temperature is less than or equal to the 78C trip point in 521 . If so, the maximum performance state is increased to P 1 in 523 and the system returns to 500 to obtain a current temperature.
- FIG. 5 provides for increasing or decreasing the maximum performance state by one performance state.
- the system software and/or hardware may allow for maximum performance state changes of more than one performance state.
- the number of trip points can of course vary depending on system design.
- hysteresis is implemented at 511 and 521 such that the temperature at which the system switches back to a higher maximum performance state is different (and lower) than the temperature at which it switched away from that maximum performance state to a lower maximum performance state. While implementation of hysteresis is not necessary to practice the invention, it does prevent frequent switching between maximum allowable performance states when the temperature is hovering around a trip point.
- the maximum performance state remains the same. The process continues periodically evaluating temperatures and setting the appropriate maximum performance state based on the evaluated temperature. In that way, the maximum performance state is determined based on thermal criteria. The system is free to switch to lower performance states according to power management considerations such as processor utilization.
- determining when temperature thresholds have been crossed may be interrupt driven.
- temperature sensor apparatus may include programmable high and low thresholds, and generate an interrupt when one of the thresholds is crossed. If the threshold that is crossed causes a maximum performance state change, the high and low thresholds may be set to new threshold values appropriate for the new maximum performance state. The control software is then invoked to change maximum performance states on occurrence of another interrupt.
- a computer dynamically adapts its maximum performance state according to a thermal indicator.
- the description of the invention set forth herein is illustrative, and is not intended to limit the scope of the invention as set forth in the following claims.
- the teachings herein may also be utilized in other computing devices, such as servers, multi-processor systems, work stations and/or portable computing devices such as personal digital assistants, (PDAs), which are handheld devices that typically combine computing, telephone/fax, and networking features or in other computing and/or communication equipment, where such power management techniques described herein may prove useful.
- PDAs personal digital assistants
- Other variations and modifications of the embodiments disclosed herein may be made based on the description set forth herein, without departing from the scope and spirit of the invention as set forth in the following claims.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Power Sources (AREA)
Abstract
Description
- 1. Field of the Invention
- This invention relates to computer systems and more particularly to power management of computer systems.
- 2. Description of the Related Art
- An important market criteria for microprocessors is the rated frequency at which the microprocessor operates, typically denominated in hundreds of MHz or GHz. Rated frequency is used as a surrogate for performance and higher performance processors command higher prices. Thus, it is advantageous to market processors with the highest possible frequency rating.
- However, there are limitations as to how high one may rate a processor in terms of frequency. As the number of transistors provided on a single integrated circuit has increased and the clock speed of integrated circuits has increased, power and related thermal considerations have become an important consideration in computer design. Power and thermal considerations can limit processor performance in certain environments, particularly in mobile applications. Computer systems measure the die temperature or case temperature using sensors on or close to the processor. In order to keep processor die temperatures within safe bounds to avoid potential damage to the processor, passive and active cooling have traditionally been employed to control temperature. Passive cooling has been accomplished by reducing a processors clocks speed, either by throttling processor clocks (reducing effective frequency by turning clocks off for a predetermined period) or by reducing actual frequency of the clocks. Reducing the actual and/or effective frequency of an integrated circuit causes a reduction in power consumption and thus reduces temperature. In addition to reducing clock frequency, it is known in the art to reduce voltage in conjunction with reduced clock speed to achieve additional cooling.
- Thus, the rated processor speed can be limited by power and thermal considerations and more specifically is determined, at least in significant part, by operating frequency, voltage, and temperature. If the die temperature can be kept sufficiently low, the rated processor clock speed can be increased. In one prior art approach to maximizing frequency at which a processor can be marketed, the processor includes an on-die temperature sensor that automatically throttles (reduces) the CPU's clock by 50% if the processor's temperature crosses a factory set threshold. If the maximum die temperature is set at a sufficiently low level of, e.g., 70 degrees C., the processor is able to meet the timing budget for the silicon process in which it is manufactured at a higher frequency at a given voltage than if the die temperature was significantly higher. The timing budget is the amount of time a signal has to propagate through combinational logic from one set of storage elements (e.g., flip-flops) to another set of storage elements and meet the setup and hold times associated with the flip-flops. At a lower temperature, a device can more easily meet a timing budget because, e.g., the propagation delays are reduced. Thus, to ensure that timing budgets are met, in the prior art approach described above, when the maximum die temperature associated with the device is crossed, e.g., 70 degrees C., the processor clock is throttled back to, e.g., 50% of its rated speed, which reduces the power consumption and thus the temperature. Thus, a processor rated at 2 GHz would run at 1 GHz upon crossing of the maximum die temperature threshold. In that way the processor can be rated at a higher speed at or below 70 degrees C., although it may operate with significantly reduced capability above that temperature.
- While that allows the processor to be rated highly, it also results in a system that operates at a significantly lower clock speed in certain environments. It would be desirable to ship more higher speed rated processors without having to drastically sacrifice performance when the critical temperature threshold is crossed.
- Accordingly, the invention provides a system in which the maximum performance state, which is typically based on such factors as operating frequency and voltage, changes according to thermal criteria. The thermal criteria may be, for example, a die temperature of the microprocessor. Once the temperature crosses above a predetermined temperature threshold, the maximum performance state available to the system is changed to a lower performance state. As the temperature crossed above successive temperature thresholds, successively lower maximum performance states become available to the system. That allows processor performance to be impacted less than the throttling alternative described above as the temperature increases. When the temperature crosses below a predetermined temperature threshold, a higher maximum performance state is again available to the system. Hysteresis may be implemented to ensure the system does not rapidly switch between performance states when the temperature is close to predetermined thresholds.
- In an embodiment, the invention provides a processor that has multiple performance states determined by such factors as operating frequency and/or voltage. In a first temperature range, the processor operates with a first maximum performance state and in a second temperature range, higher than the first temperature range, the processor operates with a lower maximum performance state.
- In another embodiment the invention provides a method of operating a computing system that includes determining a temperature associated with an integrated circuit and operating the integrated circuit with a first performance state as a maximum performance state according to the determined temperature, the first performance state being one of a plurality of performance states available at the determined temperature.
- In another embodiment a method for providing a variable maximum die temperature for an integrated circuit in a computer system having a plurality of different maximum performance states, comprising increasing the maximum allowable die temperature as a maximum allowable performance state is decreased.
- The present invention may be better understood, and its numerous objects, features, and advantages made apparent to those skilled in the art by referencing the accompanying drawings in which the use of the same reference symbols in different drawings indicates similar or identical items.
- FIG. 1 is a high level flow diagram of power management operations based on CPU utilization.
- FIG. 2 illustrates switching between performance states according to utilization.
- FIG. 3 illustrates an exemplary processing system that can change performance state.
- FIG. 4 illustrates a table including various temperature trip points for an exemplary system.
- FIG. 5 shows the high level flow of an embodiment of the invention in which the maximum performance state available is adjusted according to temperature measurements.
- A computer system according to one embodiment of the invention has a plurality of processor performance states, the processor performance states being generally determined by unique voltage/frequency combinations. The computing system provides lower maximum performance states as the detected temperature of, e.g. the processor die, increases. In addition to having a different maximum performance state associated with particular temperature ranges, the computer system may change to a different performance states based on such factors as processor utilization as explained more fully herein. The detected temperatures may be related directly to the processor by measuring the die temperature directly using a sensor on the die or may measure the die temperature indirectly using a sensor that is off-die. In addition, other indirect measurements may be taken such as ambient temperatures or measurements of the temperature of other computer system components to determine the appropriate mode of operation although indirect measurements may reduce accuracy. Because the different temperature ranges have different maximum performance states, the maximum amount of power that can be consumed grows less as the temperature increases through the various temperature ranges and lower maximum performance states are provided.
- While a performance state is commonly based in operating voltage and frequency, other criteria can also be used. For example, in some embodiments, processor performance states could be determined by an amount of chip area that was enabled for processing. Thus, portions of the processor may be selectively disabled to control the amount of power consumed. For example, the number of execution units that are enabled may vary.
- In order to more fully appreciate the invention, the use of performance states is described in which a power management control function in the computer system periodically determines the utilization level of the processor, i.e., how much of the available processor resources are being utilized, and selects a performance state that is appropriate for the utilization level. Referring to FIG. 1, a flow diagram illustrates at a high level, operation of an embodiment of a power management function utilized to provide the requisite power management control. The current CPU utilization is periodically determined in101. That current utilization is then compared to a high threshold level, e.g., 80% of processing resources, in 103. If the utilization level is above the high threshold level, indicating that processor resources are being utilized at a level above 80%, the power management control function increases the performance state of the processor in 105. In one embodiment, that can be accomplished by selecting a voltage/frequency pair that provides greater performance and then causing the processor to operate at the new voltage and frequency, as described further herein.
- If the current utilization is below the high threshold, then the current utilization is compared to the low threshold in107. An exemplary low threshold level is 55%. If the current utilization is below that low threshold, the power management control function decreases the performance state of the processor in 109. As described further herein, that may be accomplished by selecting, e.g., a voltage/frequency pair providing lower performance and then causing the performance change to occur. The power management control function then returns to 101 to periodically determine the utilization level and again compare the current utilization level to the high and low threshold levels. In that way the power management can tailor the performance state of the processor to the actual requirements.
- In a computer system with several possible processing performance states, if the management control function determines that more performance is necessary to meet performance requirements, one approach to providing increased performance is to increase the performance one step at a time until the current utilization is below the high threshold level. However, in another approach rather than increasing the performance state one step at a time, the power management control function selects the highest performance state regardless of the current performance state. The reasons for always selecting the highest possible performance state when a higher performance state is needed are as follows. In computer systems, performance demands are often of a bursty nature. When a higher performance state is required based on the current utilization level, stepping the performance state to a next higher level can result in degradation of performance that can be perceived by the user. That is especially true when the task that needs the increased performance requires a near real-time response, for instance, while decoding an audio or video file.
- FIG. 2 illustrates that concept. Assume the processor has five performance states P0-P4, with P0 being the highest and P4 the lowest. Whenever the power management determines that a higher performance state is required when operating at any of the levels P1-P4, the power management selects the maximum performance state P0 as the next performance state. Thus, in one embodiment, if the performance state is always taken straight to the maximum performance state when a performance increase is required, rather than stepping up to the maximum performance state, there is less of a chance that a user could notice any performance degradation. In effect, the power management control function anticipates a peak loading by assuming that any indication of a required increase in performance is assumed to be a burst requiring peak performance.
- However, if a lower performance state is required, a next lower performance state is selected. Thus, if at performance state P0, P1 is selected as the next lower performance state. If the current performance state is P1, the next lower performance state selected is P2 when a performance decrease is effectuated by the power management control function. In that way, if the performance is still too high, successively lower performance states can be selected and the chance than any degradation is detected by a system user is reduced. Thus, if the utilization information indicates that an increase in performance is necessary, the power management control function selects the maximum (or near maximum) performance state, while a decrease in performance causes the power management control function to step to the next lowest performance state.
- If the processor utilization is kept within the range of the high and low thresholds, then a user should experience a crisp, high performance system, while still getting the benefit of power savings for those applications or those portions of applications requiring less performance. That approach reduces power consumption, extends battery life, reduces temperature resulting in less need for cooling and thus less fan noise, while still maintaining high performance and thus maintaining a perception of fast response to the user. Note that running at a lower average CPU die temperature increases CPU reliability, and that a lower CPU temperature results in a lower system temperature, which increases system reliability.
- In order to effect changes to the performance state, the power management software has to cause the voltage and frequency used by the CPU to change. In one embodiment that can be accomplished as follows. Referring to FIG. 3, a processor is shown that can dynamically adjust its frequency and/or operating voltage to provide better thermal and power management in accordance with processor utilization.
Processor 301 includes a programmablevoltage control field 303, core clock frequency control field 304 and countfield 305. Those fields may be located in one or more programmable registers. When the processor and/or system determines that a change to the operating voltage and/or frequency is desired to increase or decrease the performance state, the desired frequency and voltage control information are loaded into frequency control field 304 andvoltage control field 303, respectively. Access to a register containing those fields, or an access to another register location, or access to a particular field in one of those registers can be used as a trigger to initiate the protocol for a performance state change. The protocol, which will vary according to processor design, ensures that the processor enters a quiescent state that is suitable for performance state transitions. - In some protocols, that will ensure that the portion of the processor, referred to for convenience herein as the
CPU core logic 311 becomes quiescent, including anyexternal bus interfaces 310 and interfaces with internal logic that may not be affected by the performance state change. Note that in oneimplementation bus interface 310 is implemented separately fromCPU core logic 311 and functions to hold off traffic toCPU core logic 311 during performance state transitions. Various messages may be sent or signals provided indicating that the processor has or is about to enter the quiescent state. In addition various control and/or status signals 309 and 313 may be provided to and fromcore logic 311. Note that in some processor implementations, various power planes and clock grids may ensure some parts of the processor are unaffected by theprocessor core logic 311 entering the quiescent state. Further, the quiescent state may vary according to processor design. For example, for one processor the quiescent state may have the clocks turned off and in other processors, the clocks may be reduced to an extent to allow appropriate voltage changes. Note also that the power state changes may include clock frequency changes, voltage changes or both. In x86 architectures, such a quiescent state has been referred to as the “stop grant” state in which execution of operating system and application code is stopped. As would be known to those of skill in the art, other ways may be used to initiate the protocol necessary to enter the quiescent state suitable for performance state changes. For example, initiation of the protocol to enter the quiescent state may be indicated by writing a command over a communication link coupling the processor to another device. - Once in the quiescent state, the processor can transition the voltage and frequency to the new states specified in
voltage control field 303 and clock frequency control field 304. As described above, in some processor implementations, the processor core clocks are stopped after the processor enters the quiescent state to suitable for changing performance states. In other processor implementations, the processor core clock frequency is reduced to a frequency which can safely tolerate desired voltage changes. In one implementation clock control frequency information is supplied as multiplier values for a clock that is supplied toprocessor 301. Those of skill in the art appreciate that many other approaches can be used to specify the core operating frequency. In either case, the voltage control information specified involtage control field 303 is supplied tovoltage regulator 315 which in turn suppliesCPU core logic 311 with the new voltage during the quiescent state. As will be appreciated by those of skill in the art, there are many alternatives to supplying the voltage information to an external voltage regulator from a register in the processor. For example, the voltage information may be supplied from a device outside the processor, or may be supplied by a communication link with a voltage regulator circuit. - Because changing the voltage and frequency can not be done instantaneously, the quiescent state is typically maintained for a period of time to allow the new voltage and clock frequency to stabilize. That time period may be specified in
count field 305 and counted using a counter in the processor or in another location in the computer system. Once the count is complete, the protocol is initiated to exit the quiescent state and resume executing operating system and application code, including restarting any buses that have been “turned off” by the processor as part of entering the quiescent state. - Note that changing both voltage and frequency to enter a new performance state can be particularly effective. Changes in the processor's core clock frequency have an approximately linear affect on the power dissipated by the processor. Thus, a 20% reduction in clock frequency reduces the power dissipated by the processor by 20%. The range of change is significant since a ratio of highest frequency to lowest frequency is usually greater than 2:1. Consequently, the processor's power may be changed by similar ratio. Changes in the processor's core voltage have an approximately square law effect. That is, potential power savings is proportional to the square of the voltage reduction. The square law effect results in significant changes in the processor's power if the core voltage of the processor is reduced.
- In addition to modifying processor frequency and/or voltage and to match processor utilization, computer systems also monitor temperature and take active or passive power management actions to ensure that the temperature of the processor die stays within operational levels using power management control software such as that associated with the Advanced Configuration and Power Interface (ACPI) Specification. For example, at certain temperatures, the computing system may take actions that take active power management action such as turning on a fan, or increasing fan speed. At other temperatures, a computer system may take passive actions such as throttling the processor (reducing its effective frequency by stopping or slowing clocks with a predetermined duty cycle and period appropriate for the processor). At another temperature threshold, the processor may shut down the computer system to prevent potential damage. FIG. 4 illustrates an exemplary set of temperature “trip points” at which power management activities take place. As shown in FIG. 4, there are “active” trip points at which various actions are performed such as adjusting fan speed. The types of actions described in FIG. 4 are in addition to the utilization based power management described previously. The actual temperatures, the number of trip points, and the specific actions taken will of course vary according to the particulars of the computer system.
- Note that the power management control described herein may be implemented as part of the operating system (OS), in whole or in part. In addition, separate power management applications may incorporate some or all of the capability described herein. In other computer systems, the various power management tasks may be shared between the operating system, software applications running under the operating system and BIOS routines. In addition, the power management techniques may be implemented in hardware.
- Now that the process of changing processor states has been described, and the utilization of trip points in power management has been described, the utilization of different maximum performance states based on temperature will be described. Assume that a processor system has five performance states P0-P4, with P0 being the highest performance state. The highest performance state is that state having the highest clock frequency (and in some embodiments the highest voltage) and having the highest power consumption. Referring again to FIG. 4, the performance states available are shown to be based on temperature range.
- In the example shown in the last column of the table in FIG. 4, when the die temperature is below 70C, all the performance states are available (P0-P4) and the maximum performance state available, e.g., for utilization based (or other) power management activities, is the maximum performance state that the system provides, namely P0. When the temperature is between 70C and 80C, the performance states available are P1-P4 with the maximum available performance state being P1. Finally, when the temperature crosses above 80C the available performance states are further reduced, with the maximum available performance state being P2. Thus, the embodiment represented in FIG. 4, both the number of performance states and the maximum performance state changes based on temperature trip points of 70C and 80C.
- When the temperature falls back into a temperature range, e.g., <70C, the higher maximum performance state once again becomes available. However, in one embodiment a temperature trip point that causes the system to make a higher maximum performance state available differs from the temperature trip point that causes a lower maximum performance state to be available. That provides hysteresis and avoids frequent changes in the available maximum performance state if the temperature is at or near a trip point.
- In the example shown in FIG. 4, hysteresis is implemented by causing P0 to become unavailable as the maximum performance state at 70C but to again become available at a temperature trip point of 68C. Thus, if the system is operating with P1 as the maximum performance state and a temperature of 68C is detected, P0 becomes the maximum performance state. Similarly, P1 becomes unavailable as the maximum performance state at 80C but again become available as the maximum performance state when the temperature crosses back below 78C. Note that in various implementations, the system may detect whether the temperature is greater than, greater than or equal to, equal to, less than or less than or equal to a particular temperature, as appropriate for the particular situation, to determine if the system has crossed a temperature trip point.
- Note that the available performance states may be implemented as a table or other data structure in BIOS, in application software, or in a power management portion of the operating system software. Other ways to encode the appropriate performance states according to the temperature would be readily apparent to those of skill in the art.
- The flow chart in FIG. 5 provides a high level illustration of the operation of an embodiment of the invention. For ease of understanding, FIG. 5 deals with maximum performance state transitions and does not illustrate operations of all power management functions. The flow chart corresponds to an embodiment of the invention that utilizes three temperature ranges illustrated in FIG. 4. In500, a temperature associated with the microprocessor, e.g., a die temperature of the microprocessor, is supplied or obtained. The system checks to see if it is operating with the maximum performance state being P0 in 503. If so, the system checks to see if the temperature has crossed above the 70C trip point. If so, at 507, the system changes the maximum available performance state to P1 and returns to obtain another temperature reading. If the maximum available performance state is not P0, then the system checks to see at 509 if the maximum performance state is P1. If so, system checks to see if the temperature has crossed below 68C in 511. If so, the maximum performance state is changed to P0 in 513. If not, the system checks in 515 if the temperature has crossed above the 80C trip point. If so, the maximum performance state is reduced to P2 in 517.
- If the maximum performance state was determined in509 to not be P1, then the system determines that the maximum performance state is P2 and the system checks to see if the temperature is less than or equal to the 78C trip point in 521. If so, the maximum performance state is increased to P1 in 523 and the system returns to 500 to obtain a current temperature.
- Note that the embodiment illustrated in FIG. 5 provides for increasing or decreasing the maximum performance state by one performance state. In other embodiments, the system software and/or hardware may allow for maximum performance state changes of more than one performance state. In addition, while only two trip points are illustrated for reducing a maximum performance state and only two trip points are illustrated for increasing the maximum performance state, the number of trip points can of course vary depending on system design.
- In the embodiment illustrated in FIG. 5, hysteresis is implemented at511 and 521 such that the temperature at which the system switches back to a higher maximum performance state is different (and lower) than the temperature at which it switched away from that maximum performance state to a lower maximum performance state. While implementation of hysteresis is not necessary to practice the invention, it does prevent frequent switching between maximum allowable performance states when the temperature is hovering around a trip point.
- If no trip points are crossed, then the maximum performance state remains the same. The process continues periodically evaluating temperatures and setting the appropriate maximum performance state based on the evaluated temperature. In that way, the maximum performance state is determined based on thermal criteria. The system is free to switch to lower performance states according to power management considerations such as processor utilization.
- While FIG. 5 provides a high level description of the operation of an embodiment of the invention, determining when temperature thresholds have been crossed may be interrupt driven. For example, temperature sensor apparatus may include programmable high and low thresholds, and generate an interrupt when one of the thresholds is crossed. If the threshold that is crossed causes a maximum performance state change, the high and low thresholds may be set to new threshold values appropriate for the new maximum performance state. The control software is then invoked to change maximum performance states on occurrence of another interrupt.
- In comparison to prior art approaches, changing the maximum available performance state according to temperature provides for more gradual reduction in performance as temperature increases. That more gradual reduction in performance results in higher average system performance as temperature increases in comparison to the prior art approach of throttling the clock by a fixed percentage, e.g., 50%, as soon as a first temperature trip point is reached. Thus, a more gradual reduction in performance is provided while still maintaining a high speed rating of the processor in more ideal conditions.
- In addition, decreasing the maximum allowable performance state as the temperature goes higher as described herein, allows the case temperature to go higher than solutions that utilize throttling that try to maintain the case temperature at or below a fixed temperature. Allowing the temperature to go higher and not being limited to a fixed case temperature may reduce thermal design costs since the higher allowable case temperature can simplify the thermal design by allowing the system to remove less heat from the system.
- As described herein, a computer dynamically adapts its maximum performance state according to a thermal indicator. The description of the invention set forth herein is illustrative, and is not intended to limit the scope of the invention as set forth in the following claims. For instance, while this invention has been described with relation to computer systems such as desktops and a class of mobile computers referred to herein as notebooks (which may also be referred to as laptops or portable computers), the teachings herein may also be utilized in other computing devices, such as servers, multi-processor systems, work stations and/or portable computing devices such as personal digital assistants, (PDAs), which are handheld devices that typically combine computing, telephone/fax, and networking features or in other computing and/or communication equipment, where such power management techniques described herein may prove useful. Other variations and modifications of the embodiments disclosed herein, may be made based on the description set forth herein, without departing from the scope and spirit of the invention as set forth in the following claims.
Claims (23)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/015,031 US6889332B2 (en) | 2001-12-11 | 2001-12-11 | Variable maximum die temperature based on performance state |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/015,031 US6889332B2 (en) | 2001-12-11 | 2001-12-11 | Variable maximum die temperature based on performance state |
Publications (2)
Publication Number | Publication Date |
---|---|
US20030110423A1 true US20030110423A1 (en) | 2003-06-12 |
US6889332B2 US6889332B2 (en) | 2005-05-03 |
Family
ID=21769165
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/015,031 Expired - Lifetime US6889332B2 (en) | 2001-12-11 | 2001-12-11 | Variable maximum die temperature based on performance state |
Country Status (1)
Country | Link |
---|---|
US (1) | US6889332B2 (en) |
Cited By (78)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020087896A1 (en) * | 2000-12-29 | 2002-07-04 | Cline Leslie E. | Processor performance state control |
US20030126479A1 (en) * | 2001-12-28 | 2003-07-03 | Burns James S. | Digital throttle for multiple operating points |
US20030140265A1 (en) * | 2001-12-20 | 2003-07-24 | Michael Henninger | Method for controlling a safety-critical system which has a microcontroller |
US20040268174A1 (en) * | 2001-12-12 | 2004-12-30 | Barnes Cooper | Operating system coordinated thermal management |
US20050071705A1 (en) * | 2003-09-29 | 2005-03-31 | Ati Technologies, Inc. | Adaptive temperature dependent feedback clock control system and method |
US20060052970A1 (en) * | 2004-08-23 | 2006-03-09 | Tawfik Arabi | On-die temperature control data for communicating to a thermal actuator |
US20060075265A1 (en) * | 2004-09-22 | 2006-04-06 | Yoshiyuki Hamaoka | Self-organized parallel processing system |
US20060100798A1 (en) * | 2004-11-05 | 2006-05-11 | Schweitzer Engineering Laboratories, Inc. | Method to increase the maximum allowable ambient temperature rating of an electronic device |
US20060149974A1 (en) * | 2004-12-30 | 2006-07-06 | Efraim Rotem | Device and method for on-die temperature measurement |
GB2422461A (en) * | 2005-01-21 | 2006-07-26 | Hewlett Packard Development Co | Maintaining the performance of an integrated circuit |
US20070005152A1 (en) * | 2005-06-30 | 2007-01-04 | Ben Karr | Method and apparatus for monitoring power in integrated circuits |
US20070058547A1 (en) * | 2005-09-13 | 2007-03-15 | Viktors Berstis | Method and apparatus for a grid network throttle and load collector |
US20070250219A1 (en) * | 2002-10-03 | 2007-10-25 | Via Technologies, Inc. | Microprocessor capable of dynamically reducing its power consumption in response to varying operating temperature |
US20070250736A1 (en) * | 2002-10-03 | 2007-10-25 | Via Technologies, Inc. | Microprocessor with improved performance during p-state transitions |
US20070255972A1 (en) * | 2002-10-03 | 2007-11-01 | Via Technologies, Inc. | Microprocessor capable of dynamically increasing its performance in response to varying operating temperature |
US20080011467A1 (en) * | 2006-06-23 | 2008-01-17 | Intel Corporation | Method, apparatus and system for thermal management using power density feedback |
US20080040622A1 (en) * | 2006-08-14 | 2008-02-14 | Advanced Micro Devices, Inc. | System and method for limiting processor performance |
US20080036613A1 (en) * | 2002-10-03 | 2008-02-14 | Via Technologies, Inc. | Microprocessor with improved thermal monitoring and protection mechanism |
US20080141047A1 (en) * | 2004-09-10 | 2008-06-12 | Freescale Semiconductor, Inc. | Apparatus and Method for Controlling Voltage and Frequency |
CN100422942C (en) * | 2004-11-04 | 2008-10-01 | 株式会社东芝 | Processor system with temperature sensor and control method of the same |
US7479753B1 (en) | 2004-02-24 | 2009-01-20 | Nvidia Corporation | Fan speed controller |
US20090144572A1 (en) * | 2004-09-10 | 2009-06-04 | Freescale Semiconductor, Inc. | Apparatus and method for controlling voltage and frequency |
US7793291B2 (en) | 2004-12-22 | 2010-09-07 | International Business Machines Corporation | Thermal management of a multi-processor computer system |
US7882369B1 (en) | 2002-11-14 | 2011-02-01 | Nvidia Corporation | Processor performance adjustment system and method |
US7886164B1 (en) | 2002-11-14 | 2011-02-08 | Nvidia Corporation | Processor temperature adjustment system and method |
US20120096288A1 (en) * | 2010-10-13 | 2012-04-19 | Bates Benjamin D | Controlling operation of temperature sensors |
US8370663B2 (en) | 2008-02-11 | 2013-02-05 | Nvidia Corporation | Power management with dynamic frequency adjustments |
US20130086395A1 (en) * | 2011-09-30 | 2013-04-04 | Qualcomm Incorporated | Multi-Core Microprocessor Reliability Optimization |
US20130178999A1 (en) * | 2012-01-09 | 2013-07-11 | International Business Machines Corporation | Managing workload distribution among computing systems to optimize heat dissipation by computing systems |
US20140201562A1 (en) * | 2010-10-10 | 2014-07-17 | Liqid Inc. | Systems and methods for optimizing data storage among a plurality of solid state memory subsystems |
US20140222242A1 (en) * | 2011-12-29 | 2014-08-07 | Rajesh Poornachandran | Adaptive thermal throttling with user configuration capability |
US8839006B2 (en) | 2010-05-28 | 2014-09-16 | Nvidia Corporation | Power consumption reduction systems and methods |
CN104049714A (en) * | 2013-03-15 | 2014-09-17 | 英特尔公司 | Processor having frequency of operation information for guaranteed operation under high temperature events |
US8972754B2 (en) | 2011-09-08 | 2015-03-03 | Asustek Computer Inc. | Computer device and frequency adjusting method for central processing unit |
US8996902B2 (en) | 2012-10-23 | 2015-03-31 | Qualcomm Incorporated | Modal workload scheduling in a heterogeneous multi-processor system on a chip |
EP1965286A3 (en) * | 2007-03-01 | 2015-04-01 | VIA Technologies, Inc. | Microprocessor with improved thermal monitoring and protection mechanism |
US20150098476A1 (en) * | 2013-10-03 | 2015-04-09 | International Business Machines Corporation | Temperature sensitive routing of data in a computer system |
US20150169016A1 (en) * | 2012-06-29 | 2015-06-18 | Qualcomm Incorporated | System and method for adaptive thermal management in a portable computing device |
US9134782B2 (en) | 2007-05-07 | 2015-09-15 | Nvidia Corporation | Maintaining optimum voltage supply to match performance of an integrated circuit |
US9158311B2 (en) | 2011-12-14 | 2015-10-13 | International Business Machines Corporation | Integrating a data center thermal control system and individual fan controllers for controlling a thermal environment in a data center room |
US20150331433A1 (en) * | 2014-05-14 | 2015-11-19 | Advanced Micro Devices, Inc. | Hybrid system and method for determining performance levels based on thermal conditions within a processor |
US9256265B2 (en) | 2009-12-30 | 2016-02-09 | Nvidia Corporation | Method and system for artificially and dynamically limiting the framerate of a graphics processing unit |
CN105334939A (en) * | 2014-06-30 | 2016-02-17 | 北京安兔兔科技有限公司 | Terminal power consumption control method and terminal power consumption control device |
US20160274629A1 (en) * | 2015-03-20 | 2016-09-22 | Dominick Adam Lovicott | Systems And Methods Of Adaptive Thermal Control For Information Handling Systems |
EP2796961A3 (en) * | 2013-04-25 | 2016-10-26 | Intel Corporation | Controlling power and performance in a system agent of a processor |
US20170017608A1 (en) * | 2015-07-16 | 2017-01-19 | Motorola Mobility Llc | Apparatus and method for improving application performance within a group of communication devices |
US9645902B2 (en) | 2014-06-23 | 2017-05-09 | Liqid Inc. | Modular switched fabric for data storage systems |
US9652019B2 (en) | 2014-06-02 | 2017-05-16 | Advanced Micro Devices, Inc. | System and method for adjusting processor performance based on platform and ambient thermal conditions |
US9678910B2 (en) | 2014-04-25 | 2017-06-13 | Liqid Inc. | Power handling in a scalable storage system |
CN107153592A (en) * | 2016-03-02 | 2017-09-12 | 神讯电脑(昆山)有限公司 | Electronic installation and its power management method |
US9830889B2 (en) | 2009-12-31 | 2017-11-28 | Nvidia Corporation | Methods and system for artifically and dynamically limiting the display resolution of an application |
EP3291048A1 (en) * | 2016-09-05 | 2018-03-07 | Intel IP Corporation | Method and device for thermal management control of an electronic device |
US10001819B2 (en) | 2014-09-04 | 2018-06-19 | Liqid Inc. | Dual-sided rackmount modular data processing assembly |
US10001800B1 (en) | 2015-09-10 | 2018-06-19 | Apple Inc. | Systems and methods for determining temperatures of integrated circuits |
US10019388B2 (en) | 2015-04-28 | 2018-07-10 | Liqid Inc. | Enhanced initialization for data storage assemblies |
US20180203494A1 (en) * | 2015-07-29 | 2018-07-19 | Zte Corporation | Method and apparatus for controlling hot plug operation of cpu in mobile terminal |
US10108422B2 (en) | 2015-04-28 | 2018-10-23 | Liqid Inc. | Multi-thread network stack buffering of data frames |
US10175748B2 (en) * | 2017-01-05 | 2019-01-08 | Nuvoton Technology Corporation | System, method and computer program product for improved regulation of an electrical device's consumption of power from an external power supply |
US10180924B2 (en) | 2017-05-08 | 2019-01-15 | Liqid Inc. | Peer-to-peer communication for graphics processing units |
US10191691B2 (en) | 2015-04-28 | 2019-01-29 | Liqid Inc. | Front-end quality of service differentiation in storage system operations |
US20190034241A1 (en) * | 2016-08-16 | 2019-01-31 | International Business Machines Corporation | Optimized resource metering in a multi tenanted distributed file system |
US10198183B2 (en) | 2015-02-06 | 2019-02-05 | Liqid Inc. | Tunneling of storage operations between storage nodes |
US10255215B2 (en) | 2016-01-29 | 2019-04-09 | Liqid Inc. | Enhanced PCIe storage device form factors |
US10362107B2 (en) | 2014-09-04 | 2019-07-23 | Liqid Inc. | Synchronization of storage transactions in clustered storage systems |
US10402363B2 (en) | 2016-06-10 | 2019-09-03 | Liqid Inc. | Multi-port interposer architectures in data storage systems |
US10467166B2 (en) | 2014-04-25 | 2019-11-05 | Liqid Inc. | Stacked-device peripheral storage card |
US10585827B1 (en) | 2019-02-05 | 2020-03-10 | Liqid Inc. | PCIe fabric enabled peer-to-peer communications |
US10592291B2 (en) | 2016-08-12 | 2020-03-17 | Liqid Inc. | Disaggregated fabric-switched computing platform |
US10614022B2 (en) | 2017-04-27 | 2020-04-07 | Liqid Inc. | PCIe fabric connectivity expansion card |
US10660228B2 (en) | 2018-08-03 | 2020-05-19 | Liqid Inc. | Peripheral storage card with offset slot alignment |
US11086371B2 (en) * | 2018-06-06 | 2021-08-10 | Lenovo (Singapore) Pte. Ltd. | Heat suppression in an information processing device in an initial setting mode |
US11256649B2 (en) | 2019-04-25 | 2022-02-22 | Liqid Inc. | Machine templates for predetermined compute units |
US11265219B2 (en) | 2019-04-25 | 2022-03-01 | Liqid Inc. | Composed computing systems with converged and disaggregated component pool |
US11294839B2 (en) | 2016-08-12 | 2022-04-05 | Liqid Inc. | Emulated telemetry interfaces for fabric-coupled computing units |
US11399720B2 (en) | 2016-04-05 | 2022-08-02 | Qulacomm Incorporated | Circuits and methods providing temperature mitigation for computing devices |
US11442776B2 (en) | 2020-12-11 | 2022-09-13 | Liqid Inc. | Execution job compute unit composition in computing clusters |
US11880326B2 (en) | 2016-08-12 | 2024-01-23 | Liqid Inc. | Emulated telemetry interfaces for computing units |
WO2024183598A1 (en) * | 2023-03-03 | 2024-09-12 | 华为技术有限公司 | Frequency control method for processor, and electronic device |
Families Citing this family (38)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6895520B1 (en) | 2001-03-02 | 2005-05-17 | Advanced Micro Devices, Inc. | Performance and power optimization via block oriented performance measurement and control |
US6893979B2 (en) * | 2001-03-15 | 2005-05-17 | International Business Machines Corporation | Method for improved plasma nitridation of ultra thin gate dielectrics |
US7231531B2 (en) * | 2001-03-16 | 2007-06-12 | Dualcor Technologies, Inc. | Personal electronics device with a dual core processor |
US7020786B2 (en) * | 2002-07-23 | 2006-03-28 | Dell Products L.P. | System and method for selecting a voltage output reference |
KR20050085962A (en) * | 2003-01-13 | 2005-08-29 | 에이알엠 리미티드 | Data processing performance control |
US7085945B2 (en) * | 2003-01-24 | 2006-08-01 | Intel Corporation | Using multiple thermal points to enable component level power and thermal management |
DE602004007525T2 (en) * | 2003-07-09 | 2008-03-13 | Nxp B.V. | IC WITH INTEGRATED CHARACTERISTIC PROVISION |
US8237386B2 (en) | 2003-08-15 | 2012-08-07 | Apple Inc. | Methods and apparatuses for operating a data processing system |
US7308590B2 (en) * | 2004-10-15 | 2007-12-11 | Intel Corporation | Automatic dynamic processor operating voltage control |
US20060161375A1 (en) * | 2004-12-30 | 2006-07-20 | Allen Duberstein | Optimizing processing speed based on measured temperatures |
US7194645B2 (en) * | 2005-02-09 | 2007-03-20 | International Business Machines Corporation | Method and apparatus for autonomic policy-based thermal management in a data processing system |
US7562234B2 (en) | 2005-08-25 | 2009-07-14 | Apple Inc. | Methods and apparatuses for dynamic power control |
US7337339B1 (en) | 2005-09-15 | 2008-02-26 | Azul Systems, Inc. | Multi-level power monitoring, filtering and throttling at local blocks and globally |
US7577860B2 (en) * | 2006-01-09 | 2009-08-18 | Microsoft Corporation | Processor specific BIOS interface for power management |
US7886167B2 (en) * | 2006-05-11 | 2011-02-08 | Intel Corporation | Load circuit supply voltage control |
US8044697B2 (en) * | 2006-06-29 | 2011-10-25 | Intel Corporation | Per die temperature programming for thermally efficient integrated circuit (IC) operation |
US20090049459A1 (en) * | 2007-08-14 | 2009-02-19 | Microsoft Corporation | Dynamically converting symbolic links |
US8078890B2 (en) * | 2007-09-11 | 2011-12-13 | Dell Products L.L.P. | System and method for providing memory performance states in a computing system |
US8001402B2 (en) * | 2007-12-05 | 2011-08-16 | International Business Machines Corporation | Method for power capping with co-operative dynamic voltage and frequency scaling via shared p-state table |
US8341433B2 (en) * | 2008-01-04 | 2012-12-25 | Dell Products L.P. | Method and system for managing the power consumption of an information handling system |
US20090235108A1 (en) * | 2008-03-11 | 2009-09-17 | Gold Spencer M | Automatic processor overclocking |
US20090256622A1 (en) * | 2008-04-11 | 2009-10-15 | Nortel Networks Limited | Soft thermal failure in a high capacity transmission system |
US8037325B1 (en) | 2008-12-09 | 2011-10-11 | Google Inc. | System and method for determining power consumption |
US8458498B2 (en) * | 2008-12-23 | 2013-06-04 | Intel Corporation | Method and apparatus of power management of processor |
US8064197B2 (en) * | 2009-05-22 | 2011-11-22 | Advanced Micro Devices, Inc. | Heat management using power management information |
US8301873B2 (en) * | 2009-12-01 | 2012-10-30 | Getac Technology Corporation | Method and computer system for thermal throttling protection |
US8909961B2 (en) | 2011-11-29 | 2014-12-09 | Ati Technologies Ulc | Method and apparatus for adjusting power consumption level of an integrated circuit |
US9223383B2 (en) | 2012-12-21 | 2015-12-29 | Advanced Micro Devices, Inc. | Guardband reduction for multi-core data processor |
US9360918B2 (en) | 2012-12-21 | 2016-06-07 | Advanced Micro Devices, Inc. | Power control for multi-core data processor |
US9483092B2 (en) | 2013-10-14 | 2016-11-01 | Advanced Micro Devices, Inc. | Performance state boost for multi-core integrated circuit |
US9625986B2 (en) * | 2015-03-13 | 2017-04-18 | Kabushiki Kaisha Toshiba | Semiconductor device and temperature control method of semiconductor device |
US10248186B2 (en) | 2016-06-10 | 2019-04-02 | Microsoft Technology Licensing, Llc | Processor device voltage characterization |
US10209726B2 (en) | 2016-06-10 | 2019-02-19 | Microsoft Technology Licensing, Llc | Secure input voltage adjustment in processing devices |
US10310572B2 (en) | 2016-06-10 | 2019-06-04 | Microsoft Technology Licensing, Llc | Voltage based thermal control of processing device |
US10338670B2 (en) | 2016-06-10 | 2019-07-02 | Microsoft Technology Licensing, Llc | Input voltage reduction for processing devices |
US10572183B2 (en) * | 2017-10-18 | 2020-02-25 | Advanced Micro Devices, Inc. | Power efficient retraining of memory accesses |
US11892893B2 (en) | 2019-10-01 | 2024-02-06 | Microsoft Technology Licensing, Llc | Systems and methods for thermal system management |
US11720158B2 (en) | 2020-03-13 | 2023-08-08 | Google Llc | Power throttling mechanism using instruction rate limiting in high power machine-learning ASICs |
Citations (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US36839A (en) * | 1862-11-04 | gordan | ||
US5502838A (en) * | 1994-04-28 | 1996-03-26 | Consilium Overseas Limited | Temperature management for integrated circuits |
US5511203A (en) * | 1994-02-02 | 1996-04-23 | Advanced Micro Devices | Power management system distinguishing between primary and secondary system activity |
US5682273A (en) * | 1995-06-30 | 1997-10-28 | International Business Machines Corporation | Disk drive for portable computer with adaptive demand-driven power management |
US5713030A (en) * | 1995-10-11 | 1998-01-27 | Vlsi Technology, Inc. | Thermal management device and method for a computer processor |
US5745375A (en) * | 1995-09-29 | 1998-04-28 | Intel Corporation | Apparatus and method for controlling power usage |
US5752011A (en) * | 1994-06-20 | 1998-05-12 | Thomas; C. Douglas | Method and system for controlling a processor's clock frequency in accordance with the processor's temperature |
US5812860A (en) * | 1996-02-12 | 1998-09-22 | Intel Corporation | Method and apparatus providing multiple voltages and frequencies selectable based on real time criteria to control power consumption |
US5818968A (en) * | 1995-03-20 | 1998-10-06 | Sony Corporation | High-efficiency coding method, high-efficiency coding apparatus, recording and reproducing apparatus, and information transmission system |
US5852737A (en) * | 1995-04-24 | 1998-12-22 | National Semiconductor Corporation | Method and apparatus for operating digital static CMOS components in a very low voltage mode during power-down |
US5873000A (en) * | 1996-07-19 | 1999-02-16 | Compaq Computer Corporation | System incorporating hot docking and undocking capabilities without requiring a standby or suspend mode by placing local arbiters of system and base into idle state |
US5881298A (en) * | 1996-09-05 | 1999-03-09 | Micron Technology, Inc. | Portable computer with selectively operable cooling unit |
US5884049A (en) * | 1996-12-31 | 1999-03-16 | Compaq Computer Corporation | Increased processor performance comparable to a desktop computer from a docked portable computer |
US5887179A (en) * | 1996-06-11 | 1999-03-23 | Motorola, Inc. | System power saving means and method |
US5925133A (en) * | 1994-10-19 | 1999-07-20 | Advanced Micro Devices, Inc. | Integrated processor system adapted for portable personal information devices |
US5954820A (en) * | 1997-09-26 | 1999-09-21 | International Business Machines Corporation | Portable computer with adaptive demand-driven power management |
US6119241A (en) * | 1996-12-23 | 2000-09-12 | International Business Machines Corporation | Self regulating temperature/performance/voltage scheme for micros (X86) |
US6363490B1 (en) * | 1999-03-30 | 2002-03-26 | Intel Corporation | Method and apparatus for monitoring the temperature of a processor |
US6630754B1 (en) * | 1993-09-21 | 2003-10-07 | Intel Corporation | Temperature-based cooling device controller apparatus and method |
US6647320B1 (en) * | 1999-09-13 | 2003-11-11 | Fujitsu Limited | Software-based temperature controller circuit in electronic apparatus |
US6701273B2 (en) * | 1994-03-28 | 2004-03-02 | Kabushiki Kaisha Toshiba | Method and apparatus for controlling internal heat generating circuitry |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0632360A1 (en) | 1993-06-29 | 1995-01-04 | Xerox Corporation | Reducing computer power consumption by dynamic voltage and frequency variation |
WO1996025701A1 (en) | 1995-02-14 | 1996-08-22 | Vlsi Technology, Inc. | Method and apparatus for reducing power consumption in digital electronic circuits |
JP3075957B2 (en) | 1995-05-30 | 2000-08-14 | 株式会社東芝 | Computer system |
US5838968A (en) | 1996-03-01 | 1998-11-17 | Chromatic Research, Inc. | System and method for dynamic resource management across tasks in real-time operating systems |
US6006248A (en) | 1996-07-12 | 1999-12-21 | Nec Corporation | Job application distributing system among a plurality of computers, job application distributing method and recording media in which job application distributing program is recorded |
JPH10268963A (en) | 1997-03-28 | 1998-10-09 | Mitsubishi Electric Corp | Information processor |
US6151681A (en) | 1997-06-25 | 2000-11-21 | Texas Instruments Incorporated | Dynamic device power management |
US6035388A (en) | 1997-06-27 | 2000-03-07 | Sandcraft, Inc. | Method and apparatus for dual issue of program instructions to symmetric multifunctional execution units |
US5958058A (en) | 1997-07-18 | 1999-09-28 | Micron Electronics, Inc. | User-selectable power management interface with application threshold warnings |
JPH11184554A (en) | 1997-12-24 | 1999-07-09 | Mitsubishi Electric Corp | Clock control type information processor |
US6128745A (en) | 1998-05-28 | 2000-10-03 | Phoenix Technologies Ltd. | Power management inactivity monitoring using software threads |
JP3297389B2 (en) | 1998-12-07 | 2002-07-02 | インターナショナル・ビジネス・マシーンズ・コーポレーション | Power consumption control method and electric equipment |
US6442700B1 (en) | 1999-08-10 | 2002-08-27 | Intel Corporation | Thermal control within systems having multiple CPU performance states |
US6711129B1 (en) | 1999-10-26 | 2004-03-23 | Avaya Technology Corp. | Real-time admission control |
-
2001
- 2001-12-11 US US10/015,031 patent/US6889332B2/en not_active Expired - Lifetime
Patent Citations (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US36839A (en) * | 1862-11-04 | gordan | ||
US6630754B1 (en) * | 1993-09-21 | 2003-10-07 | Intel Corporation | Temperature-based cooling device controller apparatus and method |
US5511203A (en) * | 1994-02-02 | 1996-04-23 | Advanced Micro Devices | Power management system distinguishing between primary and secondary system activity |
US6701273B2 (en) * | 1994-03-28 | 2004-03-02 | Kabushiki Kaisha Toshiba | Method and apparatus for controlling internal heat generating circuitry |
US5502838A (en) * | 1994-04-28 | 1996-03-26 | Consilium Overseas Limited | Temperature management for integrated circuits |
US5752011A (en) * | 1994-06-20 | 1998-05-12 | Thomas; C. Douglas | Method and system for controlling a processor's clock frequency in accordance with the processor's temperature |
US5925133A (en) * | 1994-10-19 | 1999-07-20 | Advanced Micro Devices, Inc. | Integrated processor system adapted for portable personal information devices |
US5818968A (en) * | 1995-03-20 | 1998-10-06 | Sony Corporation | High-efficiency coding method, high-efficiency coding apparatus, recording and reproducing apparatus, and information transmission system |
US5852737A (en) * | 1995-04-24 | 1998-12-22 | National Semiconductor Corporation | Method and apparatus for operating digital static CMOS components in a very low voltage mode during power-down |
US5682273A (en) * | 1995-06-30 | 1997-10-28 | International Business Machines Corporation | Disk drive for portable computer with adaptive demand-driven power management |
US5745375A (en) * | 1995-09-29 | 1998-04-28 | Intel Corporation | Apparatus and method for controlling power usage |
US5713030A (en) * | 1995-10-11 | 1998-01-27 | Vlsi Technology, Inc. | Thermal management device and method for a computer processor |
US5812860A (en) * | 1996-02-12 | 1998-09-22 | Intel Corporation | Method and apparatus providing multiple voltages and frequencies selectable based on real time criteria to control power consumption |
US5887179A (en) * | 1996-06-11 | 1999-03-23 | Motorola, Inc. | System power saving means and method |
US5873000A (en) * | 1996-07-19 | 1999-02-16 | Compaq Computer Corporation | System incorporating hot docking and undocking capabilities without requiring a standby or suspend mode by placing local arbiters of system and base into idle state |
US5881298A (en) * | 1996-09-05 | 1999-03-09 | Micron Technology, Inc. | Portable computer with selectively operable cooling unit |
US6119241A (en) * | 1996-12-23 | 2000-09-12 | International Business Machines Corporation | Self regulating temperature/performance/voltage scheme for micros (X86) |
US5884049A (en) * | 1996-12-31 | 1999-03-16 | Compaq Computer Corporation | Increased processor performance comparable to a desktop computer from a docked portable computer |
US5954820A (en) * | 1997-09-26 | 1999-09-21 | International Business Machines Corporation | Portable computer with adaptive demand-driven power management |
US6363490B1 (en) * | 1999-03-30 | 2002-03-26 | Intel Corporation | Method and apparatus for monitoring the temperature of a processor |
US6647320B1 (en) * | 1999-09-13 | 2003-11-11 | Fujitsu Limited | Software-based temperature controller circuit in electronic apparatus |
Cited By (171)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020087896A1 (en) * | 2000-12-29 | 2002-07-04 | Cline Leslie E. | Processor performance state control |
US6988211B2 (en) * | 2000-12-29 | 2006-01-17 | Intel Corporation | System and method for selecting a frequency and voltage combination from a table using a selection field and a read-only limit field |
US7054720B2 (en) * | 2001-12-12 | 2006-05-30 | Intel Corporation | Operating system coordinated thermal management |
US20040268174A1 (en) * | 2001-12-12 | 2004-12-30 | Barnes Cooper | Operating system coordinated thermal management |
US20030140265A1 (en) * | 2001-12-20 | 2003-07-24 | Michael Henninger | Method for controlling a safety-critical system which has a microcontroller |
US7171582B2 (en) * | 2001-12-20 | 2007-01-30 | Siemens Aktiengesellschaft | Method for controlling a safety-critical system which has a microcontroller |
US20030126479A1 (en) * | 2001-12-28 | 2003-07-03 | Burns James S. | Digital throttle for multiple operating points |
US7281140B2 (en) * | 2001-12-28 | 2007-10-09 | Intel Corporation | Digital throttle for multiple operating points |
US20100324750A1 (en) * | 2002-10-03 | 2010-12-23 | Via Technologies, Inc. | Microprocessor with improved thermal monitoring and protection mechanism |
US7770042B2 (en) | 2002-10-03 | 2010-08-03 | Via Technologies, Inc. | Microprocessor with improved performance during P-state transitions |
US20080036613A1 (en) * | 2002-10-03 | 2008-02-14 | Via Technologies, Inc. | Microprocessor with improved thermal monitoring and protection mechanism |
US20070255972A1 (en) * | 2002-10-03 | 2007-11-01 | Via Technologies, Inc. | Microprocessor capable of dynamically increasing its performance in response to varying operating temperature |
US7814350B2 (en) * | 2002-10-03 | 2010-10-12 | Via Technologies, Inc. | Microprocessor with improved thermal monitoring and protection mechanism |
US20070250736A1 (en) * | 2002-10-03 | 2007-10-25 | Via Technologies, Inc. | Microprocessor with improved performance during p-state transitions |
US7774627B2 (en) * | 2002-10-03 | 2010-08-10 | Via Technologies, Inc. | Microprocessor capable of dynamically increasing its performance in response to varying operating temperature |
US8412962B2 (en) | 2002-10-03 | 2013-04-02 | Via Technologies, Inc. | Microprocessor with improved thermal monitoring and protection mechanism |
US7698583B2 (en) | 2002-10-03 | 2010-04-13 | Via Technologies, Inc. | Microprocessor capable of dynamically reducing its power consumption in response to varying operating temperature |
US20070250219A1 (en) * | 2002-10-03 | 2007-10-25 | Via Technologies, Inc. | Microprocessor capable of dynamically reducing its power consumption in response to varying operating temperature |
US7886164B1 (en) | 2002-11-14 | 2011-02-08 | Nvidia Corporation | Processor temperature adjustment system and method |
US7882369B1 (en) | 2002-11-14 | 2011-02-01 | Nvidia Corporation | Processor performance adjustment system and method |
EP1519259A3 (en) * | 2003-09-29 | 2006-08-16 | ATI Technologies Inc. | Adaptive temperature dependent feedback clock control system and method |
US20050071705A1 (en) * | 2003-09-29 | 2005-03-31 | Ati Technologies, Inc. | Adaptive temperature dependent feedback clock control system and method |
US7467318B2 (en) | 2003-09-29 | 2008-12-16 | Ati Technologies Ulc | Adaptive temperature dependent feedback clock control system and method |
US7479753B1 (en) | 2004-02-24 | 2009-01-20 | Nvidia Corporation | Fan speed controller |
US20060052970A1 (en) * | 2004-08-23 | 2006-03-09 | Tawfik Arabi | On-die temperature control data for communicating to a thermal actuator |
US7117114B2 (en) * | 2004-08-23 | 2006-10-03 | Intel Corporation | On-die temperature control data for communicating to a thermal actuator |
US20080141047A1 (en) * | 2004-09-10 | 2008-06-12 | Freescale Semiconductor, Inc. | Apparatus and Method for Controlling Voltage and Frequency |
US20090144572A1 (en) * | 2004-09-10 | 2009-06-04 | Freescale Semiconductor, Inc. | Apparatus and method for controlling voltage and frequency |
US7975155B2 (en) | 2004-09-10 | 2011-07-05 | Freescale Semiconductor, Inc. | Apparatus and method for controlling voltage and frequency |
US20060075265A1 (en) * | 2004-09-22 | 2006-04-06 | Yoshiyuki Hamaoka | Self-organized parallel processing system |
US7543091B2 (en) * | 2004-09-22 | 2009-06-02 | Kabushiki Kaisha Toshiba | Self-organized parallel processing system |
US7913006B2 (en) | 2004-09-22 | 2011-03-22 | Kabushiki Kaisha Toshiba | Self-organized parallel processing system |
US20090172016A1 (en) * | 2004-09-22 | 2009-07-02 | Yoshiyuki Hamaoka | Self-Organized Parallel Processing System |
CN100422942C (en) * | 2004-11-04 | 2008-10-01 | 株式会社东芝 | Processor system with temperature sensor and control method of the same |
US20060100798A1 (en) * | 2004-11-05 | 2006-05-11 | Schweitzer Engineering Laboratories, Inc. | Method to increase the maximum allowable ambient temperature rating of an electronic device |
US7313500B2 (en) * | 2004-11-05 | 2007-12-25 | Schweitzer Engineering Labortories, Inc. | Method to increase the maximum allowable ambient temperature rating of an electronic device |
US7793291B2 (en) | 2004-12-22 | 2010-09-07 | International Business Machines Corporation | Thermal management of a multi-processor computer system |
US20060149974A1 (en) * | 2004-12-30 | 2006-07-06 | Efraim Rotem | Device and method for on-die temperature measurement |
US7878016B2 (en) * | 2004-12-30 | 2011-02-01 | Intel Corporation | Device and method for on-die temperature measurement |
US7661003B2 (en) * | 2005-01-21 | 2010-02-09 | Hewlett-Packard Development Company, L.P. | Systems and methods for maintaining performance of an integrated circuit within a working power limit |
US20060167657A1 (en) * | 2005-01-21 | 2006-07-27 | Naffziger Samuel D | Systems and methods for maintaining performance |
GB2422461B (en) * | 2005-01-21 | 2008-09-03 | Hewlett Packard Development Co | Systems and methods for maintaining performance |
GB2422461A (en) * | 2005-01-21 | 2006-07-26 | Hewlett Packard Development Co | Maintaining the performance of an integrated circuit |
US20070005152A1 (en) * | 2005-06-30 | 2007-01-04 | Ben Karr | Method and apparatus for monitoring power in integrated circuits |
US20070058547A1 (en) * | 2005-09-13 | 2007-03-15 | Viktors Berstis | Method and apparatus for a grid network throttle and load collector |
US7995474B2 (en) * | 2005-09-13 | 2011-08-09 | International Business Machines Corporation | Grid network throttle and load collector |
US20080011467A1 (en) * | 2006-06-23 | 2008-01-17 | Intel Corporation | Method, apparatus and system for thermal management using power density feedback |
TWI411913B (en) * | 2006-08-14 | 2013-10-11 | Globalfoundries Us Inc | System and method for limiting processor performance |
US7747881B2 (en) * | 2006-08-14 | 2010-06-29 | Globalfoundries Inc. | System and method for limiting processor performance |
US20080040622A1 (en) * | 2006-08-14 | 2008-02-14 | Advanced Micro Devices, Inc. | System and method for limiting processor performance |
GB2454400B (en) * | 2006-08-14 | 2011-02-23 | Advanced Micro Devices Inc | System and method for limiting processor performance |
EP1965286A3 (en) * | 2007-03-01 | 2015-04-01 | VIA Technologies, Inc. | Microprocessor with improved thermal monitoring and protection mechanism |
EP1965287A3 (en) * | 2007-03-02 | 2010-11-24 | VIA Technologies, Inc. | Microprocessor capable of dynamically increasing its performance in response to varying operating temperature |
EP1965287A2 (en) * | 2007-03-02 | 2008-09-03 | VIA Technologies, Inc. | Microprocessor capable of dynamically increasing its performance in response to varying operating temperature |
US9134782B2 (en) | 2007-05-07 | 2015-09-15 | Nvidia Corporation | Maintaining optimum voltage supply to match performance of an integrated circuit |
US8370663B2 (en) | 2008-02-11 | 2013-02-05 | Nvidia Corporation | Power management with dynamic frequency adjustments |
US8775843B2 (en) | 2008-02-11 | 2014-07-08 | Nvidia Corporation | Power management with dynamic frequency adjustments |
US9256265B2 (en) | 2009-12-30 | 2016-02-09 | Nvidia Corporation | Method and system for artificially and dynamically limiting the framerate of a graphics processing unit |
US9830889B2 (en) | 2009-12-31 | 2017-11-28 | Nvidia Corporation | Methods and system for artifically and dynamically limiting the display resolution of an application |
US8839006B2 (en) | 2010-05-28 | 2014-09-16 | Nvidia Corporation | Power consumption reduction systems and methods |
US20140201562A1 (en) * | 2010-10-10 | 2014-07-17 | Liqid Inc. | Systems and methods for optimizing data storage among a plurality of solid state memory subsystems |
US10191667B2 (en) | 2010-10-10 | 2019-01-29 | Liqid Inc. | Systems and methods for optimizing data storage among a plurality of storage drives |
US9285827B2 (en) * | 2010-10-10 | 2016-03-15 | Liqid Inc. | Systems and methods for optimizing data storage among a plurality of solid state memory subsystems |
US10795584B2 (en) | 2010-10-10 | 2020-10-06 | Liqid Inc. | Data storage among a plurality of storage drives |
US11366591B2 (en) | 2010-10-10 | 2022-06-21 | Liqid Inc. | Data storage among a plurality of storage drives |
US9317082B2 (en) * | 2010-10-13 | 2016-04-19 | Advanced Micro Devices, Inc. | Controlling operation of temperature sensors |
US20120096288A1 (en) * | 2010-10-13 | 2012-04-19 | Bates Benjamin D | Controlling operation of temperature sensors |
US8972754B2 (en) | 2011-09-08 | 2015-03-03 | Asustek Computer Inc. | Computer device and frequency adjusting method for central processing unit |
US20130086395A1 (en) * | 2011-09-30 | 2013-04-04 | Qualcomm Incorporated | Multi-Core Microprocessor Reliability Optimization |
US9158310B2 (en) | 2011-12-14 | 2015-10-13 | International Business Machines Corporation | Integrating a data center thermal control system and individual fan controllers for controlling a thermal environment in a data center room |
US9158311B2 (en) | 2011-12-14 | 2015-10-13 | International Business Machines Corporation | Integrating a data center thermal control system and individual fan controllers for controlling a thermal environment in a data center room |
US20140222242A1 (en) * | 2011-12-29 | 2014-08-07 | Rajesh Poornachandran | Adaptive thermal throttling with user configuration capability |
US9798335B2 (en) * | 2011-12-29 | 2017-10-24 | Intel Corporation | Adaptive thermal throttling with user configuration capability |
US20140052311A1 (en) * | 2012-01-09 | 2014-02-20 | International Business Machines Corporation | Managing workload distribution among computing systems to optimize heat dissipation by computing systems |
US9176508B2 (en) * | 2012-01-09 | 2015-11-03 | International Business Machines Corporation | Managing workload distribution among computing systems to optimize heat dissipation by computing systems |
US20130178999A1 (en) * | 2012-01-09 | 2013-07-11 | International Business Machines Corporation | Managing workload distribution among computing systems to optimize heat dissipation by computing systems |
US9459633B2 (en) * | 2012-01-09 | 2016-10-04 | International Business Machines Corporation | Managing workload distribution among computing systems to optimize heat dissipation by computing systems |
US20150169016A1 (en) * | 2012-06-29 | 2015-06-18 | Qualcomm Incorporated | System and method for adaptive thermal management in a portable computing device |
US9360907B2 (en) * | 2012-06-29 | 2016-06-07 | Qualcomm Incorporated | System and method for adaptive thermal management in a portable computing device |
US8996902B2 (en) | 2012-10-23 | 2015-03-31 | Qualcomm Incorporated | Modal workload scheduling in a heterogeneous multi-processor system on a chip |
CN104049714A (en) * | 2013-03-15 | 2014-09-17 | 英特尔公司 | Processor having frequency of operation information for guaranteed operation under high temperature events |
US20140281445A1 (en) * | 2013-03-15 | 2014-09-18 | Ankush Varma | Processor having frequency of operation information for guaranteed operation under high temperature events |
GB2512745B (en) * | 2013-03-15 | 2016-07-20 | Intel Corp | Processor having frequency of operation information for guaranteed operation under high temperature events |
GB2512745A (en) * | 2013-03-15 | 2014-10-08 | Intel Corp | Processor having frequency of operation information for guaranteed operation under high temperature events |
US9494996B2 (en) * | 2013-03-15 | 2016-11-15 | Intel Corporation | Processor having frequency of operation information for guaranteed operation under high temperature events |
EP2796961A3 (en) * | 2013-04-25 | 2016-10-26 | Intel Corporation | Controlling power and performance in a system agent of a processor |
US9485168B2 (en) * | 2013-10-03 | 2016-11-01 | International Business Machines Corporation | Temperature sensitive routing of data in a computer system |
US9544221B2 (en) * | 2013-10-03 | 2017-01-10 | International Business Machines Corporation | Temperature sensitive routing of data in a computer system |
US20150098476A1 (en) * | 2013-10-03 | 2015-04-09 | International Business Machines Corporation | Temperature sensitive routing of data in a computer system |
US9838300B2 (en) | 2013-10-03 | 2017-12-05 | International Business Machines Corporation | Temperature sensitive routing of data in a computer system |
US20150100681A1 (en) * | 2013-10-03 | 2015-04-09 | International Business Machines Corporation | Temperature sensitive routing of data in a computer system |
US10114784B2 (en) | 2014-04-25 | 2018-10-30 | Liqid Inc. | Statistical power handling in a scalable storage system |
US9678910B2 (en) | 2014-04-25 | 2017-06-13 | Liqid Inc. | Power handling in a scalable storage system |
US10467166B2 (en) | 2014-04-25 | 2019-11-05 | Liqid Inc. | Stacked-device peripheral storage card |
US11816054B2 (en) | 2014-04-25 | 2023-11-14 | Liqid Inc. | Scalable communication switch system |
US10733130B2 (en) | 2014-04-25 | 2020-08-04 | Liqid Inc. | Scalable storage system |
US10474608B2 (en) | 2014-04-25 | 2019-11-12 | Liqid Inc. | Stacked-device peripheral storage card |
US12086089B2 (en) | 2014-04-25 | 2024-09-10 | Liqid Inc. | Processor-endpoint isolation in communication switch coupled computing system |
US11269798B2 (en) | 2014-04-25 | 2022-03-08 | Liqid Inc. | Scalable communication fabric system |
US10037296B2 (en) | 2014-04-25 | 2018-07-31 | Liqid Inc. | Power handling in a scalable storage system |
US10983941B2 (en) | 2014-04-25 | 2021-04-20 | Liqid Inc. | Stacked storage drives in storage apparatuses |
US9671767B2 (en) * | 2014-05-14 | 2017-06-06 | Advanced Micro Devices, Inc. | Hybrid system and method for determining performance levels based on thermal conditions within a processor |
US20150331433A1 (en) * | 2014-05-14 | 2015-11-19 | Advanced Micro Devices, Inc. | Hybrid system and method for determining performance levels based on thermal conditions within a processor |
US9652019B2 (en) | 2014-06-02 | 2017-05-16 | Advanced Micro Devices, Inc. | System and method for adjusting processor performance based on platform and ambient thermal conditions |
US9798636B2 (en) | 2014-06-23 | 2017-10-24 | Liqid Inc. | Front end traffic handling in modular switched fabric based data storage systems |
US10223315B2 (en) | 2014-06-23 | 2019-03-05 | Liqid Inc. | Front end traffic handling in modular switched fabric based data storage systems |
US9645902B2 (en) | 2014-06-23 | 2017-05-09 | Liqid Inc. | Modular switched fabric for data storage systems |
US10754742B2 (en) | 2014-06-23 | 2020-08-25 | Liqid Inc. | Network failover handling in computing systems |
US9684575B2 (en) | 2014-06-23 | 2017-06-20 | Liqid Inc. | Failover handling in modular switched fabric for data storage systems |
US10180889B2 (en) | 2014-06-23 | 2019-01-15 | Liqid Inc. | Network failover handling in modular switched fabric based data storage systems |
US10503618B2 (en) | 2014-06-23 | 2019-12-10 | Liqid Inc. | Modular switched fabric for data storage systems |
US10496504B2 (en) | 2014-06-23 | 2019-12-03 | Liqid Inc. | Failover handling in modular switched fabric for data storage systems |
CN105334939A (en) * | 2014-06-30 | 2016-02-17 | 北京安兔兔科技有限公司 | Terminal power consumption control method and terminal power consumption control device |
US10001819B2 (en) | 2014-09-04 | 2018-06-19 | Liqid Inc. | Dual-sided rackmount modular data processing assembly |
US10362107B2 (en) | 2014-09-04 | 2019-07-23 | Liqid Inc. | Synchronization of storage transactions in clustered storage systems |
US10198183B2 (en) | 2015-02-06 | 2019-02-05 | Liqid Inc. | Tunneling of storage operations between storage nodes |
US10585609B2 (en) | 2015-02-06 | 2020-03-10 | Liqid Inc. | Transfer of storage operations between processors |
US9785208B2 (en) * | 2015-03-20 | 2017-10-10 | Dell Products Lp | Systems and methods of adaptive thermal control for information handling systems |
US10353446B2 (en) | 2015-03-20 | 2019-07-16 | Dell Products L.P. | Systems and methods of adaptive thermal control for information handling systems |
US20160274629A1 (en) * | 2015-03-20 | 2016-09-22 | Dominick Adam Lovicott | Systems And Methods Of Adaptive Thermal Control For Information Handling Systems |
US10019388B2 (en) | 2015-04-28 | 2018-07-10 | Liqid Inc. | Enhanced initialization for data storage assemblies |
US10191691B2 (en) | 2015-04-28 | 2019-01-29 | Liqid Inc. | Front-end quality of service differentiation in storage system operations |
US10402197B2 (en) | 2015-04-28 | 2019-09-03 | Liqid Inc. | Kernel thread network stack buffering |
US10423547B2 (en) | 2015-04-28 | 2019-09-24 | Liqid Inc. | Initialization of modular data storage assemblies |
US10740034B2 (en) | 2015-04-28 | 2020-08-11 | Liqid Inc. | Front-end quality of service differentiation in data systems |
US10108422B2 (en) | 2015-04-28 | 2018-10-23 | Liqid Inc. | Multi-thread network stack buffering of data frames |
US10521394B2 (en) * | 2015-07-16 | 2019-12-31 | Motorola Mobility Llc | Apparatus and method for improving application performance within a group of communication devices |
US20170017608A1 (en) * | 2015-07-16 | 2017-01-19 | Motorola Mobility Llc | Apparatus and method for improving application performance within a group of communication devices |
US20180203494A1 (en) * | 2015-07-29 | 2018-07-19 | Zte Corporation | Method and apparatus for controlling hot plug operation of cpu in mobile terminal |
US10599195B2 (en) * | 2015-07-29 | 2020-03-24 | Zte Corporation | Method and apparatus for controlling hot plug operation of CPU in mobile terminal |
US10001800B1 (en) | 2015-09-10 | 2018-06-19 | Apple Inc. | Systems and methods for determining temperatures of integrated circuits |
US10990553B2 (en) | 2016-01-29 | 2021-04-27 | Liqid Inc. | Enhanced SSD storage device form factors |
US10255215B2 (en) | 2016-01-29 | 2019-04-09 | Liqid Inc. | Enhanced PCIe storage device form factors |
CN107153592A (en) * | 2016-03-02 | 2017-09-12 | 神讯电脑(昆山)有限公司 | Electronic installation and its power management method |
US11399720B2 (en) | 2016-04-05 | 2022-08-02 | Qulacomm Incorporated | Circuits and methods providing temperature mitigation for computing devices |
US10402363B2 (en) | 2016-06-10 | 2019-09-03 | Liqid Inc. | Multi-port interposer architectures in data storage systems |
US10866923B2 (en) | 2016-06-10 | 2020-12-15 | Liqid Inc. | Storage control interposers in data storage systems |
US11922218B2 (en) | 2016-08-12 | 2024-03-05 | Liqid Inc. | Communication fabric coupled compute units |
US11294839B2 (en) | 2016-08-12 | 2022-04-05 | Liqid Inc. | Emulated telemetry interfaces for fabric-coupled computing units |
US11880326B2 (en) | 2016-08-12 | 2024-01-23 | Liqid Inc. | Emulated telemetry interfaces for computing units |
US10642659B2 (en) | 2016-08-12 | 2020-05-05 | Liqid Inc. | Telemetry handling for disaggregated fabric-switched computing units |
US10983834B2 (en) | 2016-08-12 | 2021-04-20 | Liqid Inc. | Communication fabric coupled compute units |
US10592291B2 (en) | 2016-08-12 | 2020-03-17 | Liqid Inc. | Disaggregated fabric-switched computing platform |
US10691647B2 (en) * | 2016-08-16 | 2020-06-23 | International Business Machines Corporation | Distributed file system metering and hardware resource usage |
US20190034241A1 (en) * | 2016-08-16 | 2019-01-31 | International Business Machines Corporation | Optimized resource metering in a multi tenanted distributed file system |
WO2018041530A3 (en) * | 2016-09-05 | 2018-06-14 | Intel IP Corporation | Method and device for thermal management control of an electronic device |
EP3291048A1 (en) * | 2016-09-05 | 2018-03-07 | Intel IP Corporation | Method and device for thermal management control of an electronic device |
TWI652569B (en) | 2017-01-05 | 2019-03-01 | 新唐科技股份有限公司 | Apparatus, system, method and computer program product for improved regulation of electrical device's consumption of power from external power supply |
US10175748B2 (en) * | 2017-01-05 | 2019-01-08 | Nuvoton Technology Corporation | System, method and computer program product for improved regulation of an electrical device's consumption of power from an external power supply |
US10614022B2 (en) | 2017-04-27 | 2020-04-07 | Liqid Inc. | PCIe fabric connectivity expansion card |
US11615044B2 (en) | 2017-05-08 | 2023-03-28 | Liqid Inc. | Graphics processing unit peer-to-peer arrangements |
US10795842B2 (en) | 2017-05-08 | 2020-10-06 | Liqid Inc. | Fabric switched graphics modules within storage enclosures |
US12038859B2 (en) | 2017-05-08 | 2024-07-16 | Liqid Inc. | Peer-to-peer arrangements among endpoint devices |
US10628363B2 (en) | 2017-05-08 | 2020-04-21 | Liqid Inc. | Peer-to-peer communication for graphics processing units |
US11314677B2 (en) | 2017-05-08 | 2022-04-26 | Liqid Inc. | Peer-to-peer device arrangements in communication fabrics |
US10180924B2 (en) | 2017-05-08 | 2019-01-15 | Liqid Inc. | Peer-to-peer communication for graphics processing units |
US10936520B2 (en) | 2017-05-08 | 2021-03-02 | Liqid Inc. | Interfaces for peer-to-peer graphics processing unit arrangements |
US11086371B2 (en) * | 2018-06-06 | 2021-08-10 | Lenovo (Singapore) Pte. Ltd. | Heat suppression in an information processing device in an initial setting mode |
US10993345B2 (en) | 2018-08-03 | 2021-04-27 | Liqid Inc. | Peripheral storage card with offset slot alignment |
US10660228B2 (en) | 2018-08-03 | 2020-05-19 | Liqid Inc. | Peripheral storage card with offset slot alignment |
US11609873B2 (en) | 2019-02-05 | 2023-03-21 | Liqid Inc. | PCIe device peer-to-peer communications |
US11119957B2 (en) | 2019-02-05 | 2021-09-14 | Liqid Inc. | PCIe device peer-to-peer communications |
US11921659B2 (en) | 2019-02-05 | 2024-03-05 | Liqid Inc. | Peer-to-peer communications among communication fabric coupled endpoint devices |
US10585827B1 (en) | 2019-02-05 | 2020-03-10 | Liqid Inc. | PCIe fabric enabled peer-to-peer communications |
US11256649B2 (en) | 2019-04-25 | 2022-02-22 | Liqid Inc. | Machine templates for predetermined compute units |
US11949559B2 (en) | 2019-04-25 | 2024-04-02 | Liqid Inc. | Composed computing systems with converged and disaggregated component pool |
US11973650B2 (en) | 2019-04-25 | 2024-04-30 | Liqid Inc. | Multi-protocol communication fabric control |
US11265219B2 (en) | 2019-04-25 | 2022-03-01 | Liqid Inc. | Composed computing systems with converged and disaggregated component pool |
US12056077B2 (en) | 2019-04-25 | 2024-08-06 | Liqid Inc. | Machine templates for compute units |
US11442776B2 (en) | 2020-12-11 | 2022-09-13 | Liqid Inc. | Execution job compute unit composition in computing clusters |
WO2024183598A1 (en) * | 2023-03-03 | 2024-09-12 | 华为技术有限公司 | Frequency control method for processor, and electronic device |
Also Published As
Publication number | Publication date |
---|---|
US6889332B2 (en) | 2005-05-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6889332B2 (en) | Variable maximum die temperature based on performance state | |
US7647513B2 (en) | Method and apparatus for improving responsiveness of a power management system in a computing device | |
US6845456B1 (en) | CPU utilization measurement techniques for use in power management | |
EP0712064B1 (en) | Variable frequency clock control for microprocessor-based computer systems | |
EP2485117B1 (en) | Method and apparatus for adjusting the voltage and frequency to minimize power dissipation in a multiprocessor system | |
US6795927B1 (en) | Power state resynchronization | |
US8095818B2 (en) | Method and apparatus for on-demand power management | |
US8122269B2 (en) | Regulating power consumption in a multi-core processor by dynamically distributing power and processing requests by a managing core to a configuration of processing cores | |
EP1361501B1 (en) | Power conservation and thermal management arrangements for computers | |
US8412962B2 (en) | Microprocessor with improved thermal monitoring and protection mechanism | |
US7698583B2 (en) | Microprocessor capable of dynamically reducing its power consumption in response to varying operating temperature | |
US7730334B2 (en) | Method and apparatus for on-demand power management | |
US7774627B2 (en) | Microprocessor capable of dynamically increasing its performance in response to varying operating temperature | |
JP4125370B2 (en) | Method and apparatus for enhancing processor performance | |
US6996730B2 (en) | Adjusting voltage supplied to a processor in response to clock frequency | |
US7770042B2 (en) | Microprocessor with improved performance during P-state transitions | |
US20060174146A1 (en) | Microprocessor performance mode control utilizing sensed temperature as an indication of microprocessor utilization | |
US9785218B2 (en) | Performance state selection for low activity scenarios | |
EP1965286B1 (en) | Microprocessor with improved thermal monitoring and protection mechanism | |
JP2001337736A (en) | Computer system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: ADVANCED MICRO DEVICES, INC., CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:HELMS, FRANK P.;BRINKLEY, JEFFREY A.;REEL/FRAME:012399/0224;SIGNING DATES FROM 20011203 TO 20011207 |
|
FEPP | Fee payment procedure |
Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
FPAY | Fee payment |
Year of fee payment: 4 |
|
FPAY | Fee payment |
Year of fee payment: 8 |
|
IPR | Aia trial proceeding filed before the patent and appeal board: inter partes review |
Free format text: TRIAL NO: IPR2015-00323 Opponent name: LG ELECTRONICS USA, INC.,LG ELECTRONICS MOBILECOMM Effective date: 20141210 |
|
FPAY | Fee payment |
Year of fee payment: 12 |