USPatent applicationPatented

Device throttling system from neighboring device

Granted 5 Jan 2010 · 2 office actions

Life of the application

13 dated events
⤢ drag to zoom20062008201020122014201620182020202220242026ProsecutionOwnershipTerm & fees
ProsecutionOwnershipTerm & feeshover for detail · click to open

Abstract

An array of electronic devices includes at least one throttlable device in the array of devices and a management module connected to the at least one throttlable device for reducing heat effects to an overheating device from neighboring devices in the array of electronic devices device. The management module is configured to detect the overheating of the overheating device, detect at least one throttlable device neighboring the overheating device and in the array of devices, and throttle the at least one throttlable device. The array of devices are an array of blade servers within a blade center, and the management module is separate from the at least one throttlable device.

Description

5 parts
›BACKGROUND OF THE INVENTION

1. Field of the Invention

The disclosure relates generally to electronic systems and, more specifically, to a system and method for controlling throttlable devices within an array of devices in a computer system.

2. Description of the Related Art

Many types of electronic devices are assembled in arrays. For example, a single blade center may include several blade servers arrayed one next to another. A byproduct of the operation of the electronic devices is heat, and since the array of electronic devices are typically located in a confined area, heat generated by a single electronic device affects neighboring electronic devices and vice-versa. Many electronic devices, however, are sensitive to heat, and as a result, many electronic devices include one or more fans to cool the devices.

An issue associated with these arrays of devices occurs when one of the electronic devices overheats. The overheating may be for many reasons, but a typical reason for a device to overheat is that one or more of the fans cooling that particular device have failed. If the overheating device was alone, the overheating may not be a serious issue. However, since the overheating device is in the midst of an array of other heat-producing devices, the issue of overheating is exacerbated. Once the temperature of the device rises to a certain level, the device may fail or failsafe measures within the device may cause the device to shut down.

Although the shutting down of a particular device among an array of devices may not be a serious issue, in other instances, if the device is performing a critical function, the failure (or shutting down) of the device is an occurrence to be avoided. There is, therefore, a need for system and method for reducing the heat effects to a particular overheating device from neighboring devices in an array of devices.

›BRIEF SUMMARY OF THE INVENTION

Embodiments of the invention address deficiencies of the art in respect to electronic systems and provide a novel and non-obvious method and system for reducing heat effects to an overheating device from neighboring devices in the array of electronic devices. The array of electronic devices includes at least one throttlable device in the array of devices and a management module connected to the at least one throttlable device. The management module is configured to detect the overheating of the overheating device, detect at least one throttlable device neighboring the overheating device and in the array of devices, and throttle the at least one throttlable device. The array of devices are an array of blade servers within a blade center, and the management module is separate from the at least one throttlable device.

In certain aspects, the at least one throttlable device has different levels of throttling, and the management module is configured to partially throttle the at least one throttlable device. The management module is also configured to repeat the throttling of the least one throttlable device using an increased level of throttling. The management module is configured to detect at least one additional throttlable device in the array of devices after the at least one throttlable device has reached a maximum throttle.

Additional aspects of the invention will be set forth in part in the description which follows, and in part will be obvious from the description, or may be learned by practice of the invention. The aspects of the invention will be realized and attained by means of the elements and combinations particularly pointed out in the appended claims. It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the invention, as claimed.

›BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS

The accompanying drawings, which are incorporated in and constitute part of this specification, illustrate embodiments of the invention and together with the description, serve to explain the principles of the invention. The embodiments illustrated herein are presently preferred, it being understood, however, that the invention is not limited to the precise arrangements and instrumentalities shown, wherein:

FIG. 1 is a block diagram of a computer system in accordance with the inventive arrangements; and.

FIG. 2 is a flow chart diagram illustrating a method of reducing heat to an overheating device from neighboring devices in accordance with the inventive arrangements.

›DETAILED DESCRIPTION OF THE INVENTION · 1 of 2

FIG. 1 illustrates an array 10 of electronic devices 12 A- 12 E that are configured to reduce the amount of heat being generated by the array 10 when one of the electronic devices 12 begins to overheat. This reduction in heat generation is accomplished by throttling at least one of the other devices 12 that has not overheated.

The electronic devices 12 are not limited as to a particular type. Moreover, the electronic devices 12 may each be different kinds of devices. However, in certain aspects of the array 10 , each of the electronic devices 12 are blade servers attached to a midplane 14 of a blade center (hereinafter, the electronic devices are referred to as servers 12 ) with at least one of the servers 12 being throttlable.

A throttlable server 12 is not limited in the manner in which the server 12 can be throttled (i.e., reduce power consumption). For example, portions of the server 12 may be turned off, the computing portion of the server 12 may be placed into a lower power state through clock throttling, and/or the server 12 may be limited in the amount of electrical power that the server 12 can draw from a power source.

The array 10 of servers 12 may include a management module 16 . The management module 16 may be separate from the servers 12 (as shown) and/or a portion of the management module 16 may be incorporated within each of the servers 12 . If multiple management modules 16 are provided, these management modules 16 may communicate between one another or the management modules 16 may operate independently.

The management module 16 makes the determination that a particular server 12 B is overheating and requires temperature relief. Many different manners of determining the temperature of a particular server are known, and the management module 16 is not limited as to any manner so capable. For example, the management module 16 may employ a sensor to determine the temperature at a particular location relative to the server 12 . Other examples include reading a temperature of a CPU with the server 12 and/or determining the temperature of a power supply within the server 12 .

Once the management module 16 makes the determination that a particular server 12 B is overheating and requires temperature relief, the management module 16 controls the process of throttling servers 12 adjacent to the overheating server 12 B. By throttling servers 12 adjacent to the overheating server 12 B, the amount of heat generated proximate the overheating server 12 B can be reduced, which can stop or reduce the effects of overheating on the overheating server 12 B.

Certain of the functional units described in this specification have been labeled as modules, in order to more particularly emphasize their implementation independence. For example, a module may be implemented as a hardware circuit comprising custom circuits or gate arrays, off-the-shelf semiconductors such as logic chips, transistors, or other discrete components. A module may also be implemented in programmable hardware devices such as field programmable gate arrays, programmable array logic, programmable logic devices or the like.

Modules may also be implemented in software for execution by various types of processors. An identified module of executable code may, for instance, comprise one or more physical or logical blocks of computer instructions which may, for instance, be organized as an object, procedure, or function. Nevertheless, the executables of an identified module need not be physically located together, but may comprise disparate instructions stored in different locations which, when joined logically together, comprise the module and achieve the stated purpose for the module.

A module of executable code could be a single instruction, or many instructions, and may even be distributed over several different code segments, among different programs, and across several memory devices. Similarly, operational data may be identified and illustrated herein within modules, and may be embodied in any suitable form and organized within any suitable type of data structure. The operational data may be collected as a single data set, or may be distributed over different locations including over different storage devices, and may exist, at least partially, merely as electronic signals on a system or network.

FIG. 2 illustrates an exemplary process for reducing the heat effects to an overheating device from neighboring devices in an array 10 of devices 12 . In certain instances, at step 110 , the process starts and proceeds to step 120 after the overheating server 12 B has exhausted any self-corrective actions that can be performed to reduce the amount of heat generated by the server 12 B. For example, if the server 12 B is throttlable, the server 12 B may be throttled down and/or portions of the server 12 B may be shut down to reduce the amount of heat being generated by the overheating server 12 B itself.

There may be circumstances, however, where actions that could be taken by the overheating server 12 B are not taken prior to the process proceeding to step 120 . For example, although the overheating server 12 B may be able to throttle and/or shut down portions of the server 12 B, it is not desirable to take these actions because to do so would impair a critical function of the server 12 B. In this circumstance, for example, it may be desirable that other servers 12 , and not the overheating server 12 B, take action to reduce the amount of heat being generated.

In other instances, the server 12 B itself cannot take measures to reduce the amount of heat being generated by the overheating server 12 B since the sever 122 B is non-throttlable. In these instances, the process proceeds to step 120 .

In step 130 , a determination is made as to whether or not an additional action needs to be taken to reduce the heat effects to the overheating server 12 B from neighboring devices in the array 10 of servers 12 . The manner in which this determination is made is not limited as to a particular measurement and/or circumstance. For example, the determination may be made after the overheating server has been above a particular temperature after a specified length of time. In certain aspects, this determination is made after the temperature of the overheating server 12 B has risen past a specified temperature.

›DETAILED DESCRIPTION OF THE INVENTION · 2 of 2

In step 140 , after a determination is made that an additional action needs to be taken, a determination is made as to whether or not any throttlable servers 12 are neighboring, and the methodology is not limited in the manner in which this determination is made. For example, a neighboring server 12 may be defined by the relative physical proximity of the server 12 to the overheating server 12 B.

Additionally, the determination may take into account how heat is transferred from one server 12 to the overheating server 12 B. For example, the airflow patterns around the overheating server 12 B may dictate that a server 12 upstream of the overheating server 12 B be considered to be “neighboring” and a server 12 downstream of the overheating server 12 B may be considered not to be neighboring even though the upstream server 12 is physically further away from the overheating server 12 B than the downstream server 12 . Example of different types of heat transfer include a fan that creates an airflow (i.e., forced convection) and heated air rising (i.e., free convection).

As previously described, many types of throttlable servers 12 exist and the methodology is not limited as to a particular type of throttlable server 12 . However, the methodology may taken into account whether or not the throttlable server 12 is throttlable at that particular time. For example, a server 12 may be throttlable in most instances, but in certain instances, the same server 12 may not be deemed throttlable because that particular server 12 is currently performing a critical function and cannot be throttled without hampering the capability of the server 12 to perform the critical function.

Using the example configuration illustrated in FIG. 1 , servers 12 A and 12 C can be deemed as neighboring the overheating server 12 B. However, since server 12 C is not a throttlable, only server 12 A is considered to be neighboring and throttlable.

In step 150 , once one or more neighboring throttlable servers 12 A have been identified, these servers 12 A are throttled, and the manner by which the servers 12 A are throttled is not limited. For example, certain throttlable servers 12 A may have different levels of throttling, and more than one neighboring throttlable server 12 may be present. Thus, the management module 16 may prioritize which particular neighboring throttlable server 12 is throttled and/or the level to which the throttlable server 12 is throttled. This prioritization may be based, for example, on the relative importance of one server 12 to the next and/or upon the anticipated cost (in performance) to benefit (in heat reduction) ratio of the various levels of throttling available from the one or more throttlable servers 12 A. If, however, only a single level of throttling is available from a single throttlable server 12 A, the throttlable server 12 A may be throttled without any additional determination and the methodology may proceed to step 160 .

In step 160 , a determination is made whether or not additional throttling is required, and if so, in step 170 , a determination is made as to whether of not additional throttling can be performed by the neighboring throttlable servers 12 A. If additional throttling can be performed, the process proceeds back to step 150 . The manner in which the determination is made whether or not additional throttling is required in not limited. However, in certain aspects, the determination is made that additional throttling is required if the device temperature continues to rise after a predetermined period of time.

In step 170 , if a determination is made that maximum throttle has been reached with the neighboring servers 12 A, a determination is made as to whether or not other additional throttlable servers 12 are present. Using the example configuration illustrated in FIG. 1 , the servers 12 D and 12 E can be deemed as additional throttlable servers. These servers 12 D, 12 E may then be throttled in step 190 , which is comparable to step 150 . However, if no additional throttlable servers 12 are present, the process ends at step 200 .

The process illustrated in FIG. 2 describes the methodology when the temperature of the overheating server 12 B does not stop rising. However, the methodology is not limited in this manner. Upon a determination that the temperature of the overheating server 12 B has been arrested and/or begins to drop, the throttling process may be reversed so that those servers 12 that have been throttled down may be restored to their normal operating state.

A typical combination of hardware and software could be a general purpose computer system with a computer program that, when being loaded and executed, controls the computer system such that it carries out the methods described herein. The present invention can also be embedded in a computer program product, which comprises all the features enabling the implementation of the methods described herein, and which, when loaded in a computer system is able to carry out these methods.

Computer program or application in the present context means any expression, in any language, code or notation, of a set of instructions intended to cause a system having an information processing capability to perform a particular function either directly or after either or both of the following a) conversion to another language, code or notation; b) reproduction in a different material form. Significantly, this invention can be embodied in other specific forms without departing from the spirit or essential attributes thereof, and accordingly, reference should be had to the following claims, rather than to the foregoing specification, as indicating the scope of the invention.

Claims as granted

17 claims

Log in to read the claims of this application.

Log in to unlock

Classifications

2 codes
IPC · International Patent Classification
Section G — Physics
  • G06F1/00
USPC · US Patent Classification
713/300

Claim changes

Soon
Coming soonHow the claims changed between publication and grant

See which claims were amended, added or cancelled during examination, with every added and removed word marked.

AmendedAddedCancelledUnchanged

The published claims of this application are not paired with the granted ones in what we hold.

File wrapper

⤢ drag to zoomJan 2006Jul 2006Jan 2007Jul 2007Jan 2008Jul 2008Jan 2009Jul 2009Jan 2010USPTOApplicantNon-final rejectionResponse after non-finalResponse after final
USPTOApplicanthover for detail · click to open
Pendency
4.0 y
1,467 days filing → grant
Office actions
2
non-final + final
Responses
3
no RCE
Interviews
1
examiner interview summaries
Examiner
Chun Cao
art unit 2116 · TC 2100
Citations: 6 back · 0 forward

See the full prosecution history — every USPTO and applicant action on this file, in order.

Log in to unlock

Documents

Log in to open the documents of this file: the application as filed, every office action and response, the notice of allowance.

Log in to unlock

Chain of title

⤢ drag to zoom20062008201020122014201620182020202220242026Owner 1Owner 2
Titlehover for detail · click to open

See the full assignment history — every owner this patent has passed through, with recordation dates and reel/frame numbers.

Log in to unlock