US20060137377A1 - Method and apparatus for external processor thermal control - Google Patents
Method and apparatus for external processor thermal control Download PDFInfo
- Publication number
- US20060137377A1 US20060137377A1 US11/027,433 US2743304A US2006137377A1 US 20060137377 A1 US20060137377 A1 US 20060137377A1 US 2743304 A US2743304 A US 2743304A US 2006137377 A1 US2006137377 A1 US 2006137377A1
- Authority
- US
- United States
- Prior art keywords
- component
- slave
- throttling
- temperature
- signal
- 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.)
- Abandoned
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
Definitions
- Embodiments of the invention pertain to cooling systems for computer systems. More particularly, embodiments of the invention pertain to throttling a component of a computer system based on a criterion.
- thermal sensors are attached to a die to read the actual temperature of the die hot spots.
- that die reduces its temperature independently of the other die using some form of reduction in work per unit time, also called throttling.
- This throttling prevents a die from reaching its maximum working temperature and damaging the system. Throttling may be performed by clock gating and clock frequency reduction.
- the throttling may be triggered if the thermal sensors read a throttling threshold temperature up to some maximum tolerable temperature. To ensure safety, this maximum temperature may be set well below a temperature that causes actual catastrophic damage.
- GMCH graphics memory and controller hub
- FIG. 1 illustrates one embodiment of a computing system according to the present invention.
- FIG. 2 illustrates in a diagram one embodiment of the shared cooling system according to the present invention.
- FIG. 3 illustrates in a flow chart one method for throttling a component to reduce the temperature by using a PROCHOT pin according to an embodiment of the present invention.
- FIG. 4 illustrates in a flow chart one method for throttling a component to reduce the temperature by using the FSB according to an embodiment of the present invention.
- FIG. 5 illustrates in a flow chart one method for using a selection policy in throttling a component to reduce the temperature according to an embodiment of the present invention.
- FIG. 6 illustrates in a flow chart one of a method for using an action-based selection policy according to an embodiment of the present invention.
- a system and method for throttling a slave component of a computer system to reduce an overall temperature of the computing system upon receiving a first signal is disclosed.
- the first signal may be from a master component indicating that a temperature for the master component has exceeded its threshold temperature.
- the slave component or the master component may be a central processing unit (CPU), a graphics memory and controller hub (GMCH), or a CPU memory controller hub.
- the slave component may send a second signal to indicate that a temperature for the slave component has exceeded its temperature.
- the master component may then initiate throttling of the master component to reduce the overall temperature of the computing system.
- the master component may be throttled to a degree less than the slave component.
- a first component may be designated the master component and the second component may be designated the slave component based on a selection policy.
- the selection policy may be received from a user through a graphical user interface.
- the selection policy may be based on an action being performed by the computing system.
- Embodiments of the present invention also relate to apparatus for performing the operations herein.
- This apparatus may be specially constructed for the required purposes, or it may comprise a general purpose computer selectively activated or reconfigured by a computer program stored in the computer.
- a computer program may be stored in a computer readable storage medium, such as, but not limited to, any type of disk including floppy disks, optical disks, compact disk-read only memories (CD-ROMs), and magnetic-optical disks, read-only memories (ROMs), random access memories (RAMs), erasable programmable read only memories (EPROMs), electronically erasable programmable read only memories (EEPROMs), magnetic or optical cards, or any type of media suitable for storing electronic instructions, and each coupled to a computer system bus.
- ROMs read-only memories
- RAMs random access memories
- EPROMs erasable programmable read only memories
- EEPROMs electronically erasable programmable read only memories
- Instructions are executable using one or more devices (e.g., central processing units, etc.).
- steps of the present invention might be performed by specific hardware components that contain reconfigurable or hardwired logic for performing the steps, or by any combination of programmed computer components and custom hardware components.
- FIG. 1 illustrates one embodiment of a computing system 100 according to the present invention.
- a first component such as a CPU 110
- a second component such as a GMCH 120
- FFB front side bus
- FIG. 1 illustrates one embodiment of a computing system 100 according to the present invention.
- a first component such as a CPU 110
- a GMCH 120 may be coupled to a second component, such as a GMCH 120 , by a front side bus (FSB) 130 .
- FFB front side bus
- the component may also be a CPU memory controller hub.
- the CPU 110 and the GMCH 120 share a cooling system 140 .
- This cooling system 140 may take one of any number of forms known in the art, such as air circulation units, heat exchangers, or other methods.
- the cooling system 140 should be able to handle the sum of the thermal design power (TDP) of both the CPU 110 and the GMCH 120 in most computing systems, in some computing systems this is not the case for various reasons.
- the TDP for a component is defined as the steady state power for which a thermal solution for that component should be designed so that the component will not exceed any reliability temperature threshold, and is generally quoted at a specific ambient temperature.
- the maximum power for the CPU 110 and GMCH 120 may be more than the TDP of each device. Since the maximum power is more than the TDP power, physical damage due to overheating may occur when operating beyond the TDP power for a sufficiently long time.
- the minimum residual GMCH thermal power budget is the power available to the GMCH 120 when the CPU 110 is at its maximum operating power in steady state.
- the minimum residual CPU thermal power budget is the power available to the CPU 110 when the GMCH 120 is at its maximum operating power in steady state.
- the CPU 110 has a microprocessor 111 to process software instructions.
- the CPU 110 may have a thermal sensor 112 to detect when the CPU 110 is getting too hot.
- the thermal sensor 112 may alert a CPU throttling arbiter 113 , which may contain throttling control logic to control CPU throttling hardware 114 .
- the throttling hardware 114 then reduces the amount of processing being performed by the microprocessor.
- a graphics driver 115 may be used to interact with the GMCH 120 via the FSB 130 . Messages may be transmitted via the FSB 130 using the inband message protocol 116 .
- the GMCH 120 may have a graphics engine 121 to execute graphics processing.
- the GMCH 120 may have a thermal sensor 122 to detect when the GMCH 120 is getting too hot.
- the thermal sensor 122 may alert a GMCH throttling arbiter 123 , which may contain throttling control logic to control GMCH throttling hardware 124 .
- the throttling hardware 114 then reduces the amount of graphics execution being performed by the microprocessor. Messages may be transmitted via the FSB 130 using the inband message protocol 125 .
- the CPU 110 may have a pin 150 , such as a PROCHOT pin, which receives a signal from the GMCH 120 .
- the CPU throttling arbiter 113 may cause the CPU throttling hardware 114 to throttle the microprocessor 111 .
- the GMCH 120 may also have a PROCHOT pin 160 , which receives a signal from the CPU 110 .
- the GMCH throttling arbiter 123 may cause the graphics throttling hardware 124 to throttle the graphics engine 121 .
- FIG. 2 illustrates in a simplified diagram one embodiment of the shared cooling system 140 .
- a first junction 210 may couple the CPU 110 to a shared thermal solution 220 .
- the first junction 210 has a heat capacity 212 and a thermal conductivity 214 and the shared thermal solution 220 has a heat capacity 222 and a thermal conductivity 224 .
- a second junction 230 may couple the CPU 110 to the shared thermal solution 220 .
- the second junction 230 also has a heat capacity 232 and a thermal conductivity 234 .
- the shared cooling system may reduce the entire system to the ambient temperature 240 of the surroundings.
- the heat capacity 222 and the thermal conductivity 224 of the shared thermal solution 220 create a heat reduction factor ⁇ sa .
- the heat capacity 212 and the thermal conductivity 214 of the first junction 210 create a heat reduction factor ⁇ js1 .
- the heat capacity 232 and the thermal conductivity 234 of the second junction 230 create a heat reduction factor ⁇ js2 .
- FIG. 3 illustrates in a flow chart one embodiment of a method 300 for throttling a component to reduce the temperature by using a PROCHOT pin.
- the process starts (Block 302 ) when a first component, designated the slave component (SCOMP), receives a first signal via the first PROCHOT pin from a second component, designated the master component (MCOMP) (Block 304 ).
- SCOMP and MCOMP may be either the CPU 110 or the GMCH 120 , depending on the circumstances.
- the CPU 110 or the GMCH 120 may be a master component at one moment and a slave component at the next moment.
- MCOMP is indicating with the first signal that the temperature of MCOMP (MCT) has exceeded the threshold temperature of MCOMP (MCTT).
- MCT temperature of MCOMP
- MCTT threshold temperature of MCOMP
- the throttling arbiter then has the throttling hardware throttle the performance of SCOMP (Block 306 ).
- SCOMP may also receive a temperature reading of SCOMP (SCT) from its thermal sensor (Block 308 ). If SCT is not greater than the threshold temperature of SCOMP (SCTT) (Block 310 ), then the process ends (Block 312 ).
- SCT temperature reading of SCOMP
- a second signal may optionally be sent to the PROCHOT pin of MCOMP (Block 314 ), ending the process (Block 312 ). This second signal indicates to the throttling arbiter of MCOMP to throttle MCOMP.
- FIG. 4 illustrates in a flow chart one embodiment of a method 400 for throttling a component to reduce the temperature by using the FSB 130 .
- the process starts (Block 402 ) when SCOMP receives a first signal via the FSB from MCOMP (Block 404 ). Again, MCOMP is indicating with the first signal that MCT has exceeded MCTT.
- the throttling arbiter then has the throttling hardware throttle the performance of SCOMP (Block 406 ).
- SCOMP receives SCT from its thermal sensor (Block 408 ). If SCT is not greater than SCTT (Block 410 ), then the process ends (Block 412 ).
- a selection policy may be used to designate which component is throttled.
- FIG. 5 illustrates in a flow chart one embodiment of a method 500 for using a selection policy in throttling a component to reduce the temperature.
- the selection policy may be devised in a number of ways. In one embodiment, the process starts (Block 502 ) when the computing system 100 receives a selection policy by a user through a graphical user interface (GUI) or other method (Block 504 ). The selection policy may also be already present in the system or received by some other method.
- GUI graphical user interface
- the throttling arbiter of a first component registers a first component temperature (CT 1 ) received from the thermal sensor exceeding a first threshold temperature for that component (CTT 1 ) (Block 506 ).
- the throttling arbiter refers to the selection policy (Block 508 ). If the selection policy indicates COMP 1 is the slave component and should be throttled (Block 510 ), then the throttling arbiter has the throttling hardware throttle COMP 1 (Block 512 ).
- a second component receives a second component temperature (CT 2 ) from its thermal sensor.
- CT 2 is not greater than the second component threshold temperature (CTT 2 ) at this point (Block 514 ), the process ends (Block 516 ). If CT 2 is still greater than CTT 2 (Block 514 ), then the throttling arbiter of COMP 2 has the throttling hardware of COMP 2 throttle COMP 2 (Block 518 ), ending the process (Block 516 ). If the selection policy indicates COMP 2 is the slave component and should be throttled (Block 510 ), then the throttling arbiter of COMP 2 has the throttling hardware of COMP 2 throttle COMP 2 (Block 520 ). The throttling arbiters of COMP 1 and COMP 2 may communicate using the methods described in FIG. 3 and FIG. 4 .
- CT 1 is not greater than CTT 1 at this point (Block 522 )
- the process ends (Block 516 ). If CT 1 is still greater than CTT 1 (Block 522 ), then the throttling arbiter of COMP 1 has the throttling hardware of COMP 1 throttle COMP 1 (Block 524 ), ending the process (Block 516 ).
- the second throttling may be to a lesser degree than the first throttling.
- a selection policy may be based on the actions being performed by the computing system at that time.
- FIG. 6 illustrates in a flow chart one embodiment of a method 600 for using an action-based selection policy.
- the process starts (Block 602 ) when the throttling arbiter of COMP 1 registers a temperature received from the thermal sensor exceeding CTT 1 (Block 604 ).
- the throttling arbiter refers to the selection policy (Block 606 ). If a processing intensive action is being performed (Block 608 ), then the GMCH throttling arbiter 123 has the graphics throttling hardware 124 throttle the graphics engine 121 (Block 610 ), ending the process (Block 612 ). If a graphics intensive action is being performed (Block 608 ), then the CPU throttling arbiter 113 has the CPU throttling hardware 114 throttle the microprocessor 111 (Block 610 ), ending the process (Block 612 ).
Abstract
A system and method for throttling a slave component of a computer system to reduce an overall temperature of the computing system upon receiving a first signal is disclosed. The first signal may be from a master component indicating that a temperature for the master component has exceeded its threshold temperature. The slave component or the master component may be a central processing unit, a graphics memory and controller hub, or a central processing unit memory controller hub. The slave component may send a second signal to indicate that a temperature for the slave component has exceeded its temperature. The master component would then initiate throttling of the master component to reduce the overall temperature of the computing system. The master component may be throttled to a degree less than the slave component. A first component may be designated the master component and the second component may be designated the slave component based on a selection policy. The selection policy may be received from a user through a graphical user interface. The selection policy may be based on an action being performed by the computing system.
Description
- Embodiments of the invention pertain to cooling systems for computer systems. More particularly, embodiments of the invention pertain to throttling a component of a computer system based on a criterion.
- The movement of electrons within the electrical components of a computer system causes a great deal of heat to be generated. Unless the heat is dissipated, it will accumulate, causing damage to the system. Such damage may include the warping of the electrical components and possible fire hazards.
- Currently, thermal sensors are attached to a die to read the actual temperature of the die hot spots. When the hot spot temperatures are exceeded on a particular die, that die reduces its temperature independently of the other die using some form of reduction in work per unit time, also called throttling. This throttling prevents a die from reaching its maximum working temperature and damaging the system. Throttling may be performed by clock gating and clock frequency reduction.
- The throttling may be triggered if the thermal sensors read a throttling threshold temperature up to some maximum tolerable temperature. To ensure safety, this maximum temperature may be set well below a temperature that causes actual catastrophic damage.
- Usually, different components in a system, such as the central unit and the graphics memory and controller hub (GMCH), may share a cooling system for a more efficient design to the computer system. However, these different components often have different cooling needs.
-
FIG. 1 illustrates one embodiment of a computing system according to the present invention. -
FIG. 2 illustrates in a diagram one embodiment of the shared cooling system according to the present invention. -
FIG. 3 illustrates in a flow chart one method for throttling a component to reduce the temperature by using a PROCHOT pin according to an embodiment of the present invention. -
FIG. 4 illustrates in a flow chart one method for throttling a component to reduce the temperature by using the FSB according to an embodiment of the present invention. -
FIG. 5 illustrates in a flow chart one method for using a selection policy in throttling a component to reduce the temperature according to an embodiment of the present invention. -
FIG. 6 illustrates in a flow chart one of a method for using an action-based selection policy according to an embodiment of the present invention. - A system and method for throttling a slave component of a computer system to reduce an overall temperature of the computing system upon receiving a first signal is disclosed. The first signal may be from a master component indicating that a temperature for the master component has exceeded its threshold temperature. The slave component or the master component may be a central processing unit (CPU), a graphics memory and controller hub (GMCH), or a CPU memory controller hub. The slave component may send a second signal to indicate that a temperature for the slave component has exceeded its temperature. The master component may then initiate throttling of the master component to reduce the overall temperature of the computing system. The master component may be throttled to a degree less than the slave component. A first component may be designated the master component and the second component may be designated the slave component based on a selection policy. The selection policy may be received from a user through a graphical user interface. The selection policy may be based on an action being performed by the computing system.
- Embodiments of the present invention also relate to apparatus for performing the operations herein. This apparatus may be specially constructed for the required purposes, or it may comprise a general purpose computer selectively activated or reconfigured by a computer program stored in the computer. Such a computer program may be stored in a computer readable storage medium, such as, but not limited to, any type of disk including floppy disks, optical disks, compact disk-read only memories (CD-ROMs), and magnetic-optical disks, read-only memories (ROMs), random access memories (RAMs), erasable programmable read only memories (EPROMs), electronically erasable programmable read only memories (EEPROMs), magnetic or optical cards, or any type of media suitable for storing electronic instructions, and each coupled to a computer system bus. Instructions are executable using one or more devices (e.g., central processing units, etc.). In other embodiments, steps of the present invention might be performed by specific hardware components that contain reconfigurable or hardwired logic for performing the steps, or by any combination of programmed computer components and custom hardware components.
-
FIG. 1 illustrates one embodiment of acomputing system 100 according to the present invention. A first component, such as aCPU 110, may be coupled to a second component, such as a GMCH 120, by a front side bus (FSB) 130. While this description will refer specifically to a CPU and a GMCH, it is to be understood that other components may also be used. For example, the component may also be a CPU memory controller hub. TheCPU 110 and the GMCH 120 share acooling system 140. Thiscooling system 140 may take one of any number of forms known in the art, such as air circulation units, heat exchangers, or other methods. While thecooling system 140 should be able to handle the sum of the thermal design power (TDP) of both theCPU 110 and the GMCH 120 in most computing systems, in some computing systems this is not the case for various reasons. The TDP for a component is defined as the steady state power for which a thermal solution for that component should be designed so that the component will not exceed any reliability temperature threshold, and is generally quoted at a specific ambient temperature. The maximum power for theCPU 110 and GMCH 120 may be more than the TDP of each device. Since the maximum power is more than the TDP power, physical damage due to overheating may occur when operating beyond the TDP power for a sufficiently long time. - The minimum residual GMCH thermal power budget is the power available to the GMCH 120 when the
CPU 110 is at its maximum operating power in steady state. The minimum residual CPU thermal power budget is the power available to theCPU 110 when the GMCH 120 is at its maximum operating power in steady state. - The
CPU 110 has amicroprocessor 111 to process software instructions. TheCPU 110 may have athermal sensor 112 to detect when theCPU 110 is getting too hot. Thethermal sensor 112 may alert aCPU throttling arbiter 113, which may contain throttling control logic to controlCPU throttling hardware 114. Thethrottling hardware 114 then reduces the amount of processing being performed by the microprocessor. For acomputing system 100 that executes graphics, agraphics driver 115 may be used to interact with the GMCH 120 via the FSB 130. Messages may be transmitted via the FSB 130 using theinband message protocol 116. - The GMCH 120 may have a
graphics engine 121 to execute graphics processing. The GMCH 120 may have athermal sensor 122 to detect when the GMCH 120 is getting too hot. Thethermal sensor 122 may alert a GMCHthrottling arbiter 123, which may contain throttling control logic to control GMCHthrottling hardware 124. Thethrottling hardware 114 then reduces the amount of graphics execution being performed by the microprocessor. Messages may be transmitted via the FSB 130 using theinband message protocol 125. - The
CPU 110 may have apin 150, such as a PROCHOT pin, which receives a signal from the GMCH 120. Upon receiving the signal, theCPU throttling arbiter 113 may cause theCPU throttling hardware 114 to throttle themicroprocessor 111. Additionally, the GMCH 120 may also have a PROCHOTpin 160, which receives a signal from theCPU 110. Upon receiving the signal, the GMCHthrottling arbiter 123 may cause thegraphics throttling hardware 124 to throttle thegraphics engine 121. -
FIG. 2 illustrates in a simplified diagram one embodiment of the sharedcooling system 140. Afirst junction 210 may couple theCPU 110 to a sharedthermal solution 220. Thefirst junction 210 has aheat capacity 212 and athermal conductivity 214 and the sharedthermal solution 220 has aheat capacity 222 and athermal conductivity 224. Asecond junction 230 may couple theCPU 110 to the sharedthermal solution 220. Thesecond junction 230 also has aheat capacity 232 and athermal conductivity 234. The shared cooling system may reduce the entire system to theambient temperature 240 of the surroundings. - The
heat capacity 222 and thethermal conductivity 224 of the sharedthermal solution 220 create a heat reduction factor θsa. Theheat capacity 212 and thethermal conductivity 214 of thefirst junction 210 create a heat reduction factor θjs1. Theheat capacity 232 and thethermal conductivity 234 of thesecond junction 230 create a heat reduction factor θjs2. The temperature for theCPU 110 and theGMCH 120 may be governed by the equations:
Tcpu=(Pcpu+Pgmch)*θsa +Ta +Pcpu*θjs1
Tgmch=(Pcpu+Pgmch)*θsa+Ta +Pgmch*θjs2
where Pcpu is the power fromCPU 110, Pgmch is the power from theGMCH 120, and Ta is theambient temperature 240. If the temperature of theCPU 110 is greater than its maximum allowed die junction temperature, then the temperature of theCPU 110 must be reduced. If the temperature of theGMCH 120 is greater than its maximum allowed die junction temperature, then the temperature of theGMCH 120 must be reduced. - The temperatures of the
CPU 110 and theGMCH 120 may be reduced in a number of ways.FIG. 3 illustrates in a flow chart one embodiment of amethod 300 for throttling a component to reduce the temperature by using a PROCHOT pin. The process starts (Block 302) when a first component, designated the slave component (SCOMP), receives a first signal via the first PROCHOT pin from a second component, designated the master component (MCOMP) (Block 304). SCOMP and MCOMP may be either theCPU 110 or theGMCH 120, depending on the circumstances. Further, theCPU 110 or theGMCH 120 may be a master component at one moment and a slave component at the next moment. Additionally, the master-slave relationship of the components need not extend past the cooling situation described herein. MCOMP is indicating with the first signal that the temperature of MCOMP (MCT) has exceeded the threshold temperature of MCOMP (MCTT). The throttling arbiter then has the throttling hardware throttle the performance of SCOMP (Block 306). SCOMP may also receive a temperature reading of SCOMP (SCT) from its thermal sensor (Block 308). If SCT is not greater than the threshold temperature of SCOMP (SCTT) (Block 310), then the process ends (Block 312). If SCT is greater than SCTT (Block 310), then a second signal may optionally be sent to the PROCHOT pin of MCOMP (Block 314), ending the process (Block 312). This second signal indicates to the throttling arbiter of MCOMP to throttle MCOMP. -
FIG. 4 illustrates in a flow chart one embodiment of amethod 400 for throttling a component to reduce the temperature by using theFSB 130. The process starts (Block 402) when SCOMP receives a first signal via the FSB from MCOMP (Block 404). Again, MCOMP is indicating with the first signal that MCT has exceeded MCTT. The throttling arbiter then has the throttling hardware throttle the performance of SCOMP (Block 406). SCOMP receives SCT from its thermal sensor (Block 408). If SCT is not greater than SCTT (Block 410), then the process ends (Block 412). If SCT is greater than SCTT (Block 410), then a second signal is sent to MCOMP via the FSB (Block 414), ending the process(Block 412). This second signal indicates to the throttling arbiter of MCOMP to throttle MCOMP. - In a further embodiment, a selection policy may be used to designate which component is throttled.
FIG. 5 illustrates in a flow chart one embodiment of amethod 500 for using a selection policy in throttling a component to reduce the temperature. The selection policy may be devised in a number of ways. In one embodiment, the process starts (Block 502) when thecomputing system 100 receives a selection policy by a user through a graphical user interface (GUI) or other method (Block 504). The selection policy may also be already present in the system or received by some other method. The throttling arbiter of a first component (COMP1) registers a first component temperature (CT1) received from the thermal sensor exceeding a first threshold temperature for that component (CTT1) (Block 506). The throttling arbiter refers to the selection policy (Block 508). If the selection policy indicates COMP1 is the slave component and should be throttled (Block 510), then the throttling arbiter has the throttling hardware throttle COMP1 (Block 512). At the same time, a second component (COMP2) receives a second component temperature (CT2) from its thermal sensor. If CT2 is not greater than the second component threshold temperature (CTT2) at this point (Block 514), the process ends (Block 516). If CT2 is still greater than CTT2 (Block 514), then the throttling arbiter of COMP2 has the throttling hardware of COMP2 throttle COMP2 (Block 518), ending the process (Block 516). If the selection policy indicates COMP2 is the slave component and should be throttled (Block 510), then the throttling arbiter of COMP2 has the throttling hardware of COMP2 throttle COMP2 (Block 520). The throttling arbiters of COMP1 and COMP2 may communicate using the methods described inFIG. 3 andFIG. 4 . If CT1 is not greater than CTT1 at this point (Block 522), the process ends (Block 516). If CT1 is still greater than CTT1 (Block 522), then the throttling arbiter of COMP1 has the throttling hardware of COMP1 throttle COMP1 (Block 524), ending the process (Block 516). The second throttling may be to a lesser degree than the first throttling. - In a further embodiment, a selection policy may be based on the actions being performed by the computing system at that time.
FIG. 6 illustrates in a flow chart one embodiment of amethod 600 for using an action-based selection policy. In one embodiment, the process starts (Block 602) when the throttling arbiter of COMP1 registers a temperature received from the thermal sensor exceeding CTT1 (Block 604). The throttling arbiter refers to the selection policy (Block 606). If a processing intensive action is being performed (Block 608), then theGMCH throttling arbiter 123 has thegraphics throttling hardware 124 throttle the graphics engine 121 (Block 610), ending the process (Block 612). If a graphics intensive action is being performed (Block 608), then theCPU throttling arbiter 113 has theCPU throttling hardware 114 throttle the microprocessor 111 (Block 610), ending the process (Block 612). - In the above description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the present invention. It will be apparent, however, to one skilled in the art that the present invention can be practiced without these specific details.
Claims (22)
1. A method comprising:
receiving in a slave component a first signal from a master component indicating that a temperature for the master component has exceeded a master threshold temperature; and
throttling the slave component to reduce an overall temperature of the computing system.
2. The method of claim 1 , further comprising:
sending to the master component a second signal from the slave component indicating that a temperature for the slave component has exceeded a slave threshold temperature to initiate throttling of the master component to reduce the overall temperature of the computing system.
3. The method of claim 2 , further comprising throttling the master component to a degree less than the slave component.
4. The method of claim 1 , further comprising:
selecting a first component to be the master component based on a selection policy; and
selecting a second component to be the slave component based on a selection policy.
5. The method of claim 4 , further comprising allowing a user to create the selection policy.
6. The method of claim 5 , wherein the selection policy is determined by an action being performed by the computing system.
7. A set of instructions residing in a storage medium, said set of instructions to be executed by a processor to implement a method for processing data, the method comprising:
receiving at a pin of a slave component a first signal from a master component indicating that a temperature for the master component has exceeded a master threshold temperature; and
throttling the slave component to reduce an overall temperature of the computing system.
8. The set of instructions of claim 7 , further comprising:
sending to the master component a second signal from the slave component indicating that a temperature for the slave component has exceeded a slave threshold temperature to initiate throttling of the master component to reduce the overall temperature of the computing system.
9. The set of instructions of claim 7 , further comprising:
selecting a first component to be the master component based on a selection policy; and
selecting a second component to be the slave component based on a selection policy.
10. The set of instructions of claim 9 , wherein the selection policy is determined by an action being performed by the computing system.
11. A slave component of a computing system comprising:
a slave throttling hardware to throttle the slave component; upon receiving; and
a throttling control logic to activate the slave throttling hardware of the slave component upon receiving a first signal from a master component that shares a cooling system with the slave component, the signal indicating that a temperature for the master component has exceeded a master threshold temperature.
12. The slave component of claim 11 , wherein the master component and the slave component are each one of a central processing unit, a graphics memory and controller hub, or a central processing unit memory controller hub.
13. The slave component of claim 11 , further comprising a first slave pin to receive the first signal.
14. The slave component of claim 13 , further comprising:
a thermal sensor to read a temperature for the slave component; and
a second slave pin to send a second signal from the slave component indicating that a temperature for the slave component has exceeded a slave threshold temperature to induce throttling of the master component.
15. A computing system comprising:
a first component including:
a first component throttling hardware to throttle the first component; and
a first throttling control logic to activate the first throttling hardware of the first component upon receiving a first signal;
a second component including:
a second component thermal sensor to sense a temperature of the second component; and
a second throttling control logic to send the first signal indicating that the temperature of the second component has exceeded a second threshold temperature; and
a shared cooling solution to cool the first component and the second component.
16. The computing system of claim 15 , wherein the first component and the second component are each one of a central processing unit, a graphics memory and controller hub, or a central processing unit memory controller hub.
17. The computing system of claim 15 , wherein
the first component further includes a first component thermal sensor to read a temperature for the slave component;
the second component further includes a second component throttling hardware to throttle the second component; and
the first throttling control logic sends a second signal to the second throttling control logic to throttle the second component.
18. The computing system of claim 17 , wherein the first throttling control logic and the second throttling control logic select the first component to be a master component and the second component to be a slave component based on a selection policy.
19. The computing system of claim 18 , further comprising a graphical user interface to allow a user to create the selection policy.
20. The computing system of claim 18 , wherein the selection policy is determined by an action being performed by the computing system.
21. The computing system of claim 17 , wherein
the first component further includes a first receiving pin to receive the first signal and a first transmitting pin to send the second signal; and
the second component further includes a second receiving pin to receive the second signal and a second transmitting pin to send the first signal.
22. The computing system of claim 17 , further comprising a front side bus coupling the first component to the second component to communicate the first signal and the second signal.
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/027,433 US20060137377A1 (en) | 2004-12-29 | 2004-12-29 | Method and apparatus for external processor thermal control |
PCT/US2005/047677 WO2006072097A2 (en) | 2004-12-29 | 2005-12-29 | Method and apparatus for external processor thermal control |
CNB2005800446806A CN100557548C (en) | 2004-12-29 | 2005-12-29 | The temperature controlled method and apparatus of ppu |
TW094147273A TWI294566B (en) | 2004-12-29 | 2005-12-29 | Method,slave component and computing system for external processor thermal control via signal transmission between master and slave components,and computer readable medium recorded with relevant instructions to be executed |
DE112005003324T DE112005003324B4 (en) | 2004-12-29 | 2005-12-29 | Method and apparatus for external thermal control of a processor |
US12/980,648 US8781641B2 (en) | 2004-12-29 | 2010-12-29 | Method and apparatus for external processor thermal control |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/027,433 US20060137377A1 (en) | 2004-12-29 | 2004-12-29 | Method and apparatus for external processor thermal control |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/980,648 Continuation US8781641B2 (en) | 2004-12-29 | 2010-12-29 | Method and apparatus for external processor thermal control |
Publications (1)
Publication Number | Publication Date |
---|---|
US20060137377A1 true US20060137377A1 (en) | 2006-06-29 |
Family
ID=36609819
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/027,433 Abandoned US20060137377A1 (en) | 2004-12-29 | 2004-12-29 | Method and apparatus for external processor thermal control |
US12/980,648 Active US8781641B2 (en) | 2004-12-29 | 2010-12-29 | Method and apparatus for external processor thermal control |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/980,648 Active US8781641B2 (en) | 2004-12-29 | 2010-12-29 | Method and apparatus for external processor thermal control |
Country Status (5)
Country | Link |
---|---|
US (2) | US20060137377A1 (en) |
CN (1) | CN100557548C (en) |
DE (1) | DE112005003324B4 (en) |
TW (1) | TWI294566B (en) |
WO (1) | WO2006072097A2 (en) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070049134A1 (en) * | 2005-08-25 | 2007-03-01 | Conroy David G | Methods and apparatuses for dynamic power control |
US7529953B1 (en) * | 2006-06-05 | 2009-05-05 | Intel Corporation | Communication bus power state management |
US20090164684A1 (en) * | 2007-12-20 | 2009-06-25 | International Business Machines Corporation | Throttling A Point-To-Point, Serial Input/Output Expansion Subsystem Within A Computing System |
US20100100254A1 (en) * | 2008-10-21 | 2010-04-22 | Dell Products, Lp | System and Method for Adapting a Power Usage of a Server During a Data Center Cooling Failure |
US20140208071A1 (en) * | 2013-01-24 | 2014-07-24 | Bub-chul Jeong | Adaptive service controller, system on chip and method of controlling the same |
US20150277454A1 (en) * | 2014-03-28 | 2015-10-01 | Intel Corporation | Coordinating control loops for temperature control |
US9400545B2 (en) | 2011-12-22 | 2016-07-26 | Intel Corporation | Method, apparatus, and system for energy efficiency and energy conservation including autonomous hardware-based deep power down in devices |
EP2939080A4 (en) * | 2012-12-27 | 2017-02-22 | Intel Corporation | Methods, systems and apparatus to manage power consumption of a graphics engine |
US10775863B2 (en) | 2003-08-15 | 2020-09-15 | Apple Inc. | Methods and apparatuses for controlling the temperature of a data processing system |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060137377A1 (en) | 2004-12-29 | 2006-06-29 | Samson Eric C | Method and apparatus for external processor thermal control |
CN101994729A (en) * | 2010-12-22 | 2011-03-30 | 西安交通大学苏州研究院 | Oil temperature control system and control method of refrigeration type hydraulic system |
US9304570B2 (en) * | 2011-12-15 | 2016-04-05 | Intel Corporation | Method, apparatus, and system for energy efficiency and energy conservation including power and performance workload-based balancing between multiple processing elements |
WO2015188784A1 (en) * | 2014-06-12 | 2015-12-17 | Mediatek Inc. | Thermal management method and electronic system with thermal management mechanism |
US10048744B2 (en) * | 2014-11-26 | 2018-08-14 | Intel Corporation | Apparatus and method for thermal management in a multi-chip package |
TWI694376B (en) * | 2019-04-10 | 2020-05-21 | 敦宏科技股份有限公司 | Light sensor device controlled with dual-mode master-and-slave mcu application |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5502838A (en) * | 1994-04-28 | 1996-03-26 | Consilium Overseas Limited | Temperature management for integrated circuits |
US6173217B1 (en) * | 1997-11-26 | 2001-01-09 | Intel Corporation | Method and apparatus to control core logic temperature |
US6466226B1 (en) * | 2000-01-10 | 2002-10-15 | Intel Corporation | Method and apparatus for pixel filtering using shared filter resource between overlay and texture mapping engines |
US20030177405A1 (en) * | 2002-03-15 | 2003-09-18 | Greiner Robert J. | Processor temperature control interface |
US6704877B2 (en) * | 2000-12-29 | 2004-03-09 | Intel Corporation | Dynamically changing the performance of devices in a computer platform |
US20040148528A1 (en) * | 2003-01-24 | 2004-07-29 | Silvester Kelan C. | Using multiple thermal points to enable component level power and thermal management |
US6928565B2 (en) * | 2001-04-13 | 2005-08-09 | Dell Products L.P. | Computer system thermal lap management method and apparatus |
US7058824B2 (en) * | 2001-06-15 | 2006-06-06 | Microsoft Corporation | Method and system for using idle threads to adaptively throttle a computer |
US7210048B2 (en) * | 2003-02-14 | 2007-04-24 | Intel Corporation | Enterprise power and thermal management |
US7240225B2 (en) * | 2003-11-10 | 2007-07-03 | Dell Products L.P. | System and method for throttling power in one or more information handling systems |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5895596A (en) | 1997-01-27 | 1999-04-20 | Semitool Thermal | Model based temperature controller for semiconductor thermal processors |
US5990461A (en) * | 1997-11-26 | 1999-11-23 | Eastman Kodak Company | Photothermographic media processor thermal control |
US6535944B1 (en) | 1999-03-30 | 2003-03-18 | International Business Machines Corporation | Hot plug control of MP based computer system |
US6560514B1 (en) | 1999-09-23 | 2003-05-06 | Kic Thermal Profiling | Method and apparatus for optimizing control of a part temperature in conveyorized thermal processor |
KR100935574B1 (en) | 2002-11-04 | 2010-01-07 | 삼성전자주식회사 | System for protecting overheating of ??? |
US20050030171A1 (en) * | 2003-08-06 | 2005-02-10 | Tse-Hung Liu | Cooling system for computing device |
US20060137377A1 (en) | 2004-12-29 | 2006-06-29 | Samson Eric C | Method and apparatus for external processor thermal control |
-
2004
- 2004-12-29 US US11/027,433 patent/US20060137377A1/en not_active Abandoned
-
2005
- 2005-12-29 CN CNB2005800446806A patent/CN100557548C/en not_active Expired - Fee Related
- 2005-12-29 TW TW094147273A patent/TWI294566B/en not_active IP Right Cessation
- 2005-12-29 DE DE112005003324T patent/DE112005003324B4/en not_active Expired - Fee Related
- 2005-12-29 WO PCT/US2005/047677 patent/WO2006072097A2/en active Application Filing
-
2010
- 2010-12-29 US US12/980,648 patent/US8781641B2/en active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5502838A (en) * | 1994-04-28 | 1996-03-26 | Consilium Overseas Limited | Temperature management for integrated circuits |
US6173217B1 (en) * | 1997-11-26 | 2001-01-09 | Intel Corporation | Method and apparatus to control core logic temperature |
US6466226B1 (en) * | 2000-01-10 | 2002-10-15 | Intel Corporation | Method and apparatus for pixel filtering using shared filter resource between overlay and texture mapping engines |
US6704877B2 (en) * | 2000-12-29 | 2004-03-09 | Intel Corporation | Dynamically changing the performance of devices in a computer platform |
US6928565B2 (en) * | 2001-04-13 | 2005-08-09 | Dell Products L.P. | Computer system thermal lap management method and apparatus |
US7058824B2 (en) * | 2001-06-15 | 2006-06-06 | Microsoft Corporation | Method and system for using idle threads to adaptively throttle a computer |
US20030177405A1 (en) * | 2002-03-15 | 2003-09-18 | Greiner Robert J. | Processor temperature control interface |
US20040148528A1 (en) * | 2003-01-24 | 2004-07-29 | Silvester Kelan C. | Using multiple thermal points to enable component level power and thermal management |
US7210048B2 (en) * | 2003-02-14 | 2007-04-24 | Intel Corporation | Enterprise power and thermal management |
US7240225B2 (en) * | 2003-11-10 | 2007-07-03 | Dell Products L.P. | System and method for throttling power in one or more information handling systems |
Cited By (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10775863B2 (en) | 2003-08-15 | 2020-09-15 | Apple Inc. | Methods and apparatuses for controlling the temperature of a data processing system |
US8662943B2 (en) * | 2005-08-25 | 2014-03-04 | Apple Inc. | Thermal control arrangement for a data processing system |
US9671845B2 (en) | 2005-08-25 | 2017-06-06 | Apple Inc. | Methods and apparatuses for dynamic power control |
US20070049134A1 (en) * | 2005-08-25 | 2007-03-01 | Conroy David G | Methods and apparatuses for dynamic power control |
US7529953B1 (en) * | 2006-06-05 | 2009-05-05 | Intel Corporation | Communication bus power state management |
US20090157933A1 (en) * | 2006-06-05 | 2009-06-18 | Shaun Conrad | Communication bus power state management |
US7908497B2 (en) | 2006-06-05 | 2011-03-15 | Intel Corporation | Communication bus power state management |
US20090164684A1 (en) * | 2007-12-20 | 2009-06-25 | International Business Machines Corporation | Throttling A Point-To-Point, Serial Input/Output Expansion Subsystem Within A Computing System |
US7809869B2 (en) | 2007-12-20 | 2010-10-05 | International Business Machines Corporation | Throttling a point-to-point, serial input/output expansion subsystem within a computing system |
US8386824B2 (en) | 2008-10-21 | 2013-02-26 | Dell Products, Lp | System and method for adapting a power usage of a server during a data center cooling failure |
US8195970B2 (en) | 2008-10-21 | 2012-06-05 | Dell Products, Lp | System and method for adapting a power usage of a server during a data center cooling failure |
US20110239025A1 (en) * | 2008-10-21 | 2011-09-29 | Dell Products, Lp | System and Method for Adapting a Power Usage of a Server During a Data Center Cooling Failure |
US7975156B2 (en) * | 2008-10-21 | 2011-07-05 | Dell Products, Lp | System and method for adapting a power usage of a server during a data center cooling failure |
US20100100254A1 (en) * | 2008-10-21 | 2010-04-22 | Dell Products, Lp | System and Method for Adapting a Power Usage of a Server During a Data Center Cooling Failure |
US11467740B2 (en) | 2011-12-22 | 2022-10-11 | Intel Corporation | Method, apparatus, and system for energy efficiency and energy conservation including autonomous hardware-based deep power down in devices |
US9400545B2 (en) | 2011-12-22 | 2016-07-26 | Intel Corporation | Method, apparatus, and system for energy efficiency and energy conservation including autonomous hardware-based deep power down in devices |
US10509576B2 (en) | 2011-12-22 | 2019-12-17 | Intel Corporation | Method, apparatus, and system for energy efficiency and energy conservation including autonomous hardware-based deep power down in devices |
US9792064B2 (en) | 2011-12-22 | 2017-10-17 | Intel Corporation | Method, apparatus, and system for energy efficiency and energy conservation including autonomous hardware-based deep power down in devices |
EP3521973A1 (en) * | 2012-12-27 | 2019-08-07 | Intel Corporation | Methods, systems and apparatus to manage power consumption of a graphics engine |
EP2939080A4 (en) * | 2012-12-27 | 2017-02-22 | Intel Corporation | Methods, systems and apparatus to manage power consumption of a graphics engine |
US20140208071A1 (en) * | 2013-01-24 | 2014-07-24 | Bub-chul Jeong | Adaptive service controller, system on chip and method of controlling the same |
US9684633B2 (en) * | 2013-01-24 | 2017-06-20 | Samsung Electronics Co., Ltd. | Adaptive service controller, system on chip and method of controlling the same |
US9625890B2 (en) * | 2014-03-28 | 2017-04-18 | Intel Corporation | Coordinating control loops for temperature control |
US20150277454A1 (en) * | 2014-03-28 | 2015-10-01 | Intel Corporation | Coordinating control loops for temperature control |
Also Published As
Publication number | Publication date |
---|---|
WO2006072097A2 (en) | 2006-07-06 |
DE112005003324B4 (en) | 2009-11-12 |
CN101088063A (en) | 2007-12-12 |
TW200700966A (en) | 2007-01-01 |
CN100557548C (en) | 2009-11-04 |
WO2006072097A3 (en) | 2006-09-14 |
US8781641B2 (en) | 2014-07-15 |
US20110090640A1 (en) | 2011-04-21 |
TWI294566B (en) | 2008-03-11 |
DE112005003324T5 (en) | 2007-11-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8781641B2 (en) | Method and apparatus for external processor thermal control | |
TW522300B (en) | ACPI compliant computer system and overtemperature protection method therefor | |
US20070094436A1 (en) | System and method for thermal management in PCI express system | |
US8304698B1 (en) | Thermal throttling of peripheral components in a processing device | |
EP1861786B1 (en) | Enforcing strongly-ordered requests in a weakly-ordered processing system | |
JP4855451B2 (en) | Storage device access method and apparatus | |
EP2225695B1 (en) | Method and apparatus for delegation of secure operating mode access privilege from processor to peripheral | |
EP1869561B1 (en) | Minimizing memory barriers when enforcing strongly-ordered requests in a weakly-ordered processing system | |
US7596638B2 (en) | Method, system, and apparatus to decrease CPU temperature through I/O bus throttling | |
JP5149039B2 (en) | Virus check device and data communication method using the same | |
JP6691981B2 (en) | Thermal management via operating system | |
US20070011288A1 (en) | Apparatus and method for achieving thermal management through the allocation of redundant data processing devices | |
US20020087287A1 (en) | Method, apparatus, and machine-readable medium to enhance microprocessor performance | |
US7475263B2 (en) | Method for power management of central processor unit | |
JP6546479B2 (en) | Information processing device | |
US7415625B2 (en) | Policy table rule based processor side bus signaling | |
US8903565B2 (en) | Operating efficiency of a rear door heat exchanger | |
US20130339624A1 (en) | Processor, information processing device, and control method for processor | |
US6927961B2 (en) | Data processing apparatus | |
CN105786744B (en) | Interconnection device and interconnection operation method | |
TWI724004B (en) | Application processor and operating method thereof, and data processing system and operating method thereof | |
JP2008544436A (en) | Remote media cache optimization system and method for use with multiple processing units (data processing system and computer program) | |
JP3110024B2 (en) | Memory control system | |
KR200467248Y1 (en) | Cooler controlling apparatus of computer | |
TW201301125A (en) | Method of control applies to computer device and control system of computer device thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: INTEL CORPORATION, CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:SAMSON, ERIC C.;HORIGAN, JOHN WILLIAM;JACKSON, ROBERT T.;AND OTHERS;REEL/FRAME:016388/0550;SIGNING DATES FROM 20050203 TO 20050308 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |