Systems and methods for thermal management of an information handling system including cooling for third-party information handling resource

In accordance with these and other embodiments of the present disclosure, a system may include a plurality of temperature sensors configured to sense temperatures at a plurality of locations associated with an information handling system, a cooling subsystem comprising at least one cooling fan configured to generate a cooling airflow in the information handling system, and a thermal manager communicatively coupled to the plurality of temperature sensors and the cooling subsystem. The thermal manager may be configured to, based on at least a power provided to a subsystem of the information handling system, estimate a thermal condition proximate to the subsystem, based on a maximum power consumption for a component of the subsystem, determine an estimated linear airflow velocity requirement for the component, and set a speed of the at least one cooling fan based on the estimated thermal condition and the estimated linear airflow velocity requirement.

TECHNICAL FIELD

The present disclosure relates in general to information handling systems, and more particularly to thermal management of an information handling system at a modular level.

BACKGROUND

As processors, graphics cards, random access memory (RAM) and other components in information handling systems have increased in clock speed and power consumption, the amount of heat produced by such components as a side-effect of normal operation has also increased. Often, the temperatures of these components need to be kept within a reasonable range to prevent overheating, instability, malfunction and damage leading to a shortened component lifespan. Accordingly, thermal management systems including air movers (e.g., cooling fans and blowers) have often been used in information handling systems to cool information handling systems and their components. Various input parameters to a thermal management system, such as measurements from temperature sensors and inventories of information handling system components are often utilized by thermal management systems to control air movers and/or throttle power consumption of components in order to provide adequate cooling of components.

However, instances may exist in which a thermal management system may not have sufficient input parameters in order to adequately determine thermal health of various components. For example, Peripheral Component Interconnect (PCI) and other input/output (I/O) cards are a common example of a component that in many typical information handling system topologies, lacks sufficient thermal data in order for efficient thermal control. Thermal control of many such cards typically includes generating an automatic or manually-configured predefined air mover response which is static in nature and does not dynamically take into account varying thermal parameters of an information handling system. A disadvantage of this approach is that it must assume a worst-case scenario, meaning more airflow may be used to cool such I/O cards than may actually be required to operate correctly, leading to wasted electrical power required to operate air movers. Another disadvantage of this approach is that expecting users to manually configure cooling levels for I/O card cooling may be risky and may provide a bad user experience.

As another example, many information handling system components may not be capable of reporting their temperatures. Accordingly, thermal management of such components may include setting minimum open loop air mover speeds which may be defined based on system characterization during design and development of an information handling system, and may require extensive testing to determine optimum air mover speeds.

SUMMARY

In accordance with the teachings of the present disclosure, disadvantages and problems associated with thermal management of an information handling system may be reduced or eliminated.

In accordance with embodiments of the present disclosure, a system may include a plurality of temperature sensors configured to sense temperatures at a plurality of locations associated with an information handling system, a cooling subsystem comprising at least one cooling fan configured to generate a cooling airflow in the information handling system and a thermal manager communicatively coupled to the plurality of temperature sensors and the cooling subsystem. The thermal manager may be configured to, based on at least a power provided to a subsystem of the information handling system, estimate a thermal condition proximate to the subsystem and set a speed of the at least one cooling fan based on the estimated thermal condition and a required linear airflow velocity associated with the subsystem.

In accordance with these and other embodiments of the present disclosure, a method may include sensing temperatures at a plurality of locations associated with an information handling system, and based on at least a power provided to a subsystem of the information handling system, estimating a thermal condition proximate to the subsystem, and setting a speed of at least one cooling fan of a cooling subsystem for generating a cooling airflow in the information handling system based on the estimated thermal condition and a required linear airflow velocity associated with the subsystem.

In accordance with these and other embodiments of the present disclosure, a system may include a plurality of temperature sensors configured to sense temperatures at a plurality of locations associated with an information handling system, a cooling subsystem comprising at least one cooling fan configured to generate a cooling airflow in the information handling system, and a thermal manager communicatively coupled to the plurality of temperature sensors and the cooling subsystem. The thermal manager may be configured to, based on at least a power provided to a subsystem of the information handling system, estimate a thermal condition proximate to the subsystem and set a speed of the at least one cooling fan based on the estimated thermal condition and a required cubic airflow rate associated with the subsystem, wherein the required cubic airflow rate is determined based on a required linear airflow velocity associated with the subsystem and a net cross-sectional area through which the cooling airflow travels.

In accordance with these and other embodiments of the present disclosure, a method may include sensing temperatures at a plurality of locations associated with an information handling system and based on at least a power provided to a subsystem of the information handling system, estimating a thermal condition proximate to the subsystem, and setting a speed of the at least one cooling fan based on the estimated thermal condition and a required cubic airflow rate associated with the subsystem, wherein the required cubic airflow rate is determined based on a required linear airflow velocity associated with the subsystem and a net cross-sectional area through which the cooling airflow travels.

In accordance with these and other embodiments of the present disclosure, a system may include a plurality of temperature sensors configured to sense temperatures at a plurality of locations associated with an information handling system, a cooling subsystem comprising at least one cooling fan configured to generate a cooling airflow in the information handling system, and a thermal manager communicatively coupled to the plurality of temperature sensors and the cooling subsystem. The thermal manager may be configured to, based on at least a power provided to a subsystem of the information handling system, estimate a thermal condition proximate to the subsystem, correlate each of a plurality of components of the subsystem and a linear airflow velocity requirement of the component to a respective speed of the at least one cooling fan required to provide such airflow requirement, and set a speed of the at least one cooling fan based on the respective speeds.

In accordance with these and other embodiments of the present disclosure, a method may include sensing temperatures at a plurality of locations associated with an information handling system and based on at least a power provided to a subsystem of the information handling system, estimating a thermal condition proximate to the subsystem, correlating each of a plurality of components of the subsystem and a linear airflow velocity requirement of the component to a respective speed of the at least one cooling fan required to provide such airflow requirement, and setting a speed of the at least one cooling fan based on the respective speeds.

In accordance with these and other embodiments of the present disclosure, a system may include a plurality of temperature sensors configured to sense temperatures at a plurality of locations associated with an information handling system, a cooling subsystem comprising at least one cooling fan configured to generate a cooling airflow in the information handling system, and a thermal manager communicatively coupled to the plurality of temperature sensors and the cooling subsystem. The thermal manager may be configured to, based on at least a power provided to a subsystem of the information handling system, estimate a thermal condition proximate to the subsystem, based on a maximum power consumption for a component of the subsystem, determine an estimated linear airflow velocity requirement for the component, and set a speed of the at least one cooling fan based on the estimated thermal condition and the estimated linear airflow velocity requirement.

In accordance with these and other embodiments of the present disclosure, a method comprising may include sensing temperatures at a plurality of locations associated with an information handling system, and based on at least a power provided to a subsystem of the information handling system, estimating a thermal condition proximate to the subsystem, based on a maximum power consumption for a component of the subsystem, determining an estimated linear airflow velocity requirement for the component, and setting a speed of at least one cooling fan based on the estimated thermal condition and the estimated linear airflow velocity requirement.

DETAILED DESCRIPTION

Preferred embodiments and their advantages are best understood by reference toFIGS. 1-15, wherein like numbers are used to indicate like and corresponding parts.

For the purposes of this disclosure, information handling resources may broadly refer to any component system, device or apparatus of an information handling system, including without limitation processors, buses, memories, I/O devices and/or interfaces, storage resources, network interfaces, motherboards, integrated circuit packages; electro-mechanical devices (e.g., air movers), displays, and power supplies.

FIG. 1illustrates a perspective view of an example information handling system10, in accordance with embodiments of the present disclosure. As shown inFIG. 1, information handling system10may comprise a server built into a housing12that resides with one or more other information handling systems10in a rack14. Rack14may comprise a plurality of vertically-stacked slots16that accept information handling systems10and a plurality of power supplies18that provide electrical energy to information handling systems10. In a data center environment, rack14may receive pretreated cooling air provided from a floor vent20to aid removal of thermal energy from information handling systems10disposed in rack14. Power supplies18may be assigned power based upon availability at the data center and may allocate power to individual information handling systems10under the management of a chassis management controller (CMC)22. CMC22may aid coordination of operating settings so that information handling systems10do not exceed thermal or power usage constraints.

Housing12may include a motherboard24that provides structural support and electrical signal communication for processing components disposed in housing12that cooperate to process information. For example, one or more central processing units (CPUs)26may execute instructions stored in random access memory (RAM)28to process information, such as responses to server requests by client information handling systems remote from information handling system10. One or more persistent storage devices, such as hard disk drives (HDD)30may store information maintained for extended periods and during power off states. A backplane communications manager, such as a PCI card32, may interface processing components to communicate processed information, such as communications between CPUs26and network interface cards (NICs)34that are sent through a network, such as a local area network. A chipset36may include various processing and firmware resources for coordinating the interactions of processing components, such as a basic input/output system (BIOS). A baseboard management controller (BMC)38may interface with chipset36to provide out-of-band management functions, such as remote power up, remote power down, firmware updates, and power management. For example, BMC38may receive an allocation of power from CMC22and monitor operations of the processing components of information handling system10to ensure that power consumption does not exceed the allocation. As another example, BMC38may receive temperatures sensed by temperature sensors40and apply the temperatures to ensure that thermal constraints are not exceeded.

A thermal manager42may execute as firmware, software, or other executable code on BMC38to manage thermal conditions within housing12, such as the thermal state at particular processing components or ambient temperatures at discrete locations associated with housing12. Thermal manager42may control the speed at which cooling fans44rotate to adjust a cooling airflow rate in housing12so that enough excess thermal energy is removed to prevent an over-temperature condition, such as overheating of a CPU26or an excessive exhaust temperature as measured by an outlet temperature sensor40. In the event that cooling fans44cannot provide sufficient cooling airflow to meet a thermal constraint, thermal manager42may reduce power consumption at one or more of the processing components to reduce the amount of thermal energy released into housing12, such as by throttling the clock speed of one or more of CPUs26. Thermal manager42may respond to extreme thermal conditions that place system integrity in jeopardy by shutting down information handling system10, such as might happen if floor vent20fails to provide treated air due to a data center cooling system failure.

In order to more effectively manage thermal conditions associated with housing12, thermal manager42may apply conservation of energy to estimate thermal conditions at discrete locations associated within housing12and then use the estimated thermal conditions for more precise control of the overall thermal state of information handling system10. For example, thermal manager42may perform one or more energy balances based upon available measures of power consumption, cooling fan speed, and sensed thermal conditions to estimate intermediate temperatures at discrete locations within housing12. The estimated intermediate temperatures may provide more precise control of the thermal conditions at discrete locations to maintain thermal constraints, such as maximum ambient temperatures of components that do not include temperature sensors or maximum inlet temperatures for components downstream in the cooling airflow from the estimated ambient temperature. Estimated intermediate temperatures may be applied in an overall system conservation of energy model so that fan speed and component power consumption are determined to maintain thermal constraints, such as maximum exhaust temperatures. Thermal manager42may estimate discrete thermal conditions at locations within housing12by applying available component configuration information, such as a component inventory kept by BMC38, and sensed, known, or estimated power consumption of the components. For example, BMC38may use actual power consumption of components or subassemblies if actual power consumption is available, known power consumption stored in the BMC inventory for known components, or estimated power consumption based upon the type of component and the component's own configuration. An example of estimated power consumption is a general estimate of power consumption stored in BMC38for unknown PCI cards32with the general estimate based upon the width of the PCI card, i.e., the number of links supported by the PCI card. In one embodiment, as estimated intermediate thermal conditions are applied to generate fan and power consumption settings, a self-learning function may compare expected results and models to component and subassembly thermal characteristics so that more accurate estimates are provided over time.

FIG. 2illustrates a mathematical model for estimating component46thermal performance and setting thermal controls, in accordance with embodiments of the present disclosure. According to the law of conservation of energy, the total energy state of an information handling system is maintained as a balance of the energy into the system and the energy out of the system. The energy balance may be broken into a sum of a plurality of components46wherein each component46has a known or estimated power consumption that introduces thermal energy into the information handling system. The system energy balance becomes the energy into the system as reflected by an airflow inlet temperature, the thermal energy released by the sum of the components46that consume power in the system and the energy out of the system as reflected by an airflow exhaust temperature. Energy removed from the system may relate to the mass flow rate of air flowing through the system and the coefficient for energy absorption of the cooling airflow. Simplified for the coefficient that typically applies to atmospheric air, the energy released by electrical power consumption may be equal to airflow in cubic feet per minute divided by a constant of 1.76 and multiplied by the difference between the exhaust temperature and inlet temperature. Alternatively, again simplified for the coefficient that typically applies to atmospheric air, the energy released by electrical power consumption may be equal to a linear airflow velocity in linear feet per minute (which may be calculated as a cubic airflow rate in cubic feet per minute multiplied by an area of an inlet of a component of interest (e.g., cross sectional area of inlet of a card)) divided by a constant of 1.76 and multiplied by the difference between the exhaust temperature and inlet temperature. Thermal manager42may apply one or both of these formulas to set cooling fan speed to meet exhaust temperature constraints. For internal components and subassemblies, thermal manager42may determine a minimum fan speed to keep ambient temperature of a component within a desired constraint by determining an “inlet” temperature estimated for air as it arrives at the component based upon power consumption of other components in the airflow before the air arrives at the component of interest. The increase in temperature exhausted at the component of interest may be estimated based upon the power consumed by the component of interest and the cooling airflow rate. Thus, a fan speed may be set that prevents an “exhaust” from the component of interest that is in excess of thermal constraints associated with the component. Alternatively, estimated temperatures at intermediate components may be summed and applied to set a fan speed that achieves a desired overall system thermal condition, such as an exhaust temperature constraint.

Applying conservation of energy and component power consumption to manage thermal conditions may allow more precise control of thermal conditions and discrete control within an information handling system housing even where measurements of actual thermal conditions by a temperature sensor are not available. A modular energy balance thermal controller may allow combined serial energy balances to account for the effect of reduced inlet temperatures when increasing speeds for downstream energy balances. This flexibility may be provided by using energy balances independently to solve for either exhaust temperature or airflow on a system-wide basis or at discrete locations within a system. Subsystem power consumption based upon a component or collection of components may allow for estimation of upstream preheat for other components within an information handling system housing. For example, components that do not dissipate substantial heat by power consumption may be scaled to have a reduced impact on airflow temperatures. One example of such a component is a cooling fan, which dissipates 60 to 80% of power consumption as heat and 20 to 40% as air moving, but is generally ignored with conventional thermal controls. By adding fan power and scaling to match efficiency for the system, a more precise picture of thermal conditions within a housing may be provided. Isolating power consumption of specific regions, subsystems or components of interest, such as PCI cards, may allow the power readings for the subsystems to include static power from non-relevant components that are accounted for by subtracting a static power value. Assigning scaled values that relate heat dissipation and power consumption for each subsystem may provide more exact estimates of thermal conditions and more precise control of airflow and power settings based upon preheat that occurs in the airflow as the airflow passes through the housing. Approaching thermal management based upon a serial summation of subsystem thermal conditions supports the use of static values for selected subsystems to subtract thermal overhead or exclude dynamic readings, such as to control fan speed to achieve a static reading instead of monitoring an available dynamic reading.

Using subsystem thermal condition estimates may aid in achieving more accurate fan speed settings for a desired exhaust constraint since airflow-to-fan speed relationships are set based on actual system configuration and component power consumption. Summed energy balances of discrete subsystems disposed in a housing may differentiate thermal control based on hardware inventory, system state, or system events to enhance control accuracy. Airflow may be scaled to account for component count based upon active components and functions being performed at the components during control time periods. When solving for airflow settings needed to meet a component or system-wide thermal constraint, the inlet or exhaust temperature may generally be a fixed requirement that aligns with a temperature limit so that selectively setting static values allows derivation of control values without using available dynamic values. Dynamically calculated inlet ambient with a fixed static exhaust ambient or a fixed inlet ambient and a dynamically calculated exhaust ambient may provide a better estimate of system airflow. As power use fluctuates, feedback and feed forward control of thermal conditions based on average power consumption may dampen cooling fan setting fluctuations that occur when fan settings are made based upon instantaneous power readings alone. Averaging measured fan speeds may also help to simplify correlations and to “learn” thermal characteristics of subsystems as thermal conditions respond over time to changes in power consumption at various subsystems. For example, each fan within a housing can run at different pulse width modulation (PWM) speed settings in which a speed of a fan is based on a duty cycle of a PWM signal received by the fan. Calculating an average PWM from individual fan PWM speed settings may allow a PWM duty cycle to airflow relationship. During operating conditions that have limited availability of dynamically sensed thermal conditions, such as at startup, during fan failure, during sensor failure, and during baseline cooling, estimated subsystem thermal conditions based upon subsystem power consumption may provide a model for fan speed settings. Generally, fan speed setting control based upon a summation of estimated and/or actual subsystem thermal conditions may allow defined minimum fan speeds for a system-wide constraint with supplemental cooling of critical components based on closed loop feedback.

FIG. 3illustrates a plan view of example information handling system10, in accordance with embodiments of the present disclosure. External air drawn into information handling system10may have an ambient temperature (TAMBIENT) measured by an inlet temperature sensor40and an airflow rate determined by the speed at which one or more cooling fans spin. As the cooling airflow passes through housing12, it may absorb thermal energy resulting in a preheat of the airflow for downstream components. The cooling airflow may be forced from information handling system10at an exhaust with an exhaust temperature (TEXHAUST) fixed at thermal constraint (e.g., 70° C.) as a requirement and/or measured by an exhaust temperature sensor40. Thermal manager42may adapt cooling fan speed so that the cooling airflow temperature TEXHAUSTmaintains a thermal constraint (e.g., 70° C.)

As shown inFIG. 3, a virtual thermal sensor48may be generated by thermal manager42at a location in information handling system10that receives preheated airflow, such as airflow that has passed by CPUs26. Thermal manager42may apply configuration information stored in BMC38to determine the components that preheat airflow to virtual thermal sensor48and may determine power consumed by the components to arrive at a virtual temperature measured by virtual thermal sensor48. For example, thermal manager42may apply power consumed by CPUs26and static power consumption associated with other preheat components to determine by conservation of energy the ambient temperature of air exhausted from CPUs26to arrive at the virtual temperature. The virtual temperature may then be used as an inlet temperature to a PCI card subsystem32so that an ambient temperature of PCI card subsystem32is computed based upon energy consumed by PCI card subsystem32. PCI card subsystem32may exhaust air at temperature TEXHAUSTmeasured by exhaust sensor40so that control of the ambient temperature within PCI card subsystem32provides control of the overall system exhaust. The increase in thermal energy caused by PCI card subsystem32as reflected by the increase from the virtual temperature to the exhaust temperature may be estimated using conservation of energy applied to the energy consumption of PCI card subsystem32. Generally, PCI card subsystem32power consumption may be measured directly based upon power assigned by a power subsystem or estimated with a static value. Alternatively, power consumption may be derived from estimates using conservation of energy applied to known power consumption and thermal conditions in housing12. Thus, the power consumed by PCI card subsystem32may be dynamically determined by actual measurements of power usage, by stored power usage based on the inventory of the PCI card maintained in the BMC, or by an estimate of power consumption based upon characteristics of the PCI card, such as the width of the PCI card.

Having one or more intermediate virtual thermal sensors48may provide flexibility in managing system operation by using a virtual temperature measurement as a dynamic thermal control input or a static thermal control constraint. For example, if PCI card subsystem32is controlled to have a static value of 50° C., then fan speed and CPU power consumptions may be adjusted to maintain that value. If TExHAUSThas a constraint of 70° C., then excessive temperatures might occur during low CPU power usage due to low fan speed settings needed to maintain the 50° C. virtual thermal sensor48measurement and temperature increases of greater than 20° C. from PCI card power consumption. In such an instance, if precise power control is available for desired components, thermal control might focus on TEXHAUSTso that the virtual temperature falls below 50° C. or might focus on power consumption by PCI card subsystem32so that less thermal energy is released after virtual thermal sensor48. Typically, PCI card subsystems do not at this time allow control of thermal energy release, such as by throttling a processor clock, however, such capabilities may be introduced for PCI cards or other components in the future. Discrete control of thermal conditions at different locations within information handling system10may be provided by generating virtual thermal sensors at the desired locations and then selectively treating the values as dynamic or static for control purposes.

FIG. 4illustrates a user interface for managing thermal conditions of a server information handling system with stored configuration settings of subsystems within the information handling system, in accordance with embodiments of the present disclosure. Energy balance table50may include energy balance parameters for components integral to information handing system10as well as estimated values for potential replacement components, such as non-specific PCI cards having a width of four or eight lanes. By including configuration match information that relates components to energy consumption, thermal manager42may be able to estimate a thermal condition based on detected components and energy balance information associated with such detected components as set forth in energy balance table50.

FIGS. 5A and 5Billustrate a user interface for estimating system airflow and exhaust temperature based upon conservation of energy within an information handling system housing, in accordance with embodiments of the present disclosure. An exhaust temperature energy balance table52may apply power, cubic airflow, linear airflow velocity, and sensed temperature values to estimate thermal states and set control for desired cubic airflow, linear airflow velocity, and temperature parameters. A power window54may depict a power dissipation calculation performed for each subsystem having an energy balance number in energy balance table50. A total system power dissipation may represent power use by all desired components, which in this example embodiment may include one or more cooling fans. Scaling factors may be set to adjust the relative power consumption in various configuration modes in response to dynamic power settings. A static power setting may also allow control to achieve a desired power setting at a component. A cubic airflow window56depicts a mass flow calculation cubic feet per minute (CFM) and a linear airflow velocity window57depicts a linear airflow velocity in linear feet per minute (LFM) for determination of cubic airflow or linear airflow velocity to achieve the energy balance with the determined power settings for each component. The example embodiment depicted byFIGS. 5A and 5Bmay estimate cubic airflow, linear airflow velocity, and exhaust temperatures, including with virtual temperature sensors. In particular, for a given PWM value associated with cooling fans, exhaust temperature energy balance table52may correlate such PWM value to an estimated cubic airflow (e.g., in CFM) and/or an estimated linear airflow velocity (e.g., in LFM) for configurations associated with the energy balance number.

AlthoughFIG. 5Bshows estimation of linear airflow velocity based on correlation from PWM values, in some embodiments, linear airflow velocity may be determined from the PWM-to-cubic airflow rate correlation, by dividing the cubic airflow rate correlated to a PWM value by an inlet area of a component of interest (e.g., card).FIG. 7described below may provide mass airflows converted to cooling fan PWM values to assign cooling fan rotation speeds based upon individual component configurations adjusted for scaling.

FIG. 6illustrates a user interface for setting cooling airflow to meet defined conditions, such as temperature defined as a fixed requirement, a measurement read from a sensor, or a measurement leveraged from a virtual sensor reading, in accordance with embodiments of the present disclosure. The user interface ofFIG. 6may be used by thermal manager42to compute how much airflow is required to cool a component. The temperature and power values may be static or dynamic; however, one value may be set to static to support control of the other values to meet a targeted static condition. An airflow energy balance table60may support mass airflow and exhaust temperature estimates with dynamic or static settings in the power consumption of the components. An average number of readings input aids in adjusting for thermal lag related to delays between dissipation of power by components and temperature impacts. In the entry for energy balance number EB4 shown inFIG. 6, an exhaust temperature of 70° C. may be set for exhaust from a PCI card based upon a static power setting for a lane width of eight lanes. For example, a lane width of eight lanes may define an estimated power consumption for the card and the 70° C. temperature may define an overall system safety constraint. The entry sets a static inlet temperature for the PCI card of 55° C., such as might be an input limit for the PCI card or so that an airflow rate is determined that maintains the desired exhaust temperature constraint. Alternatively, the inlet temperature may be dynamic from a physical sensor or from a virtual sensor computed with a conservation of energy estimated based upon upstream component power consumption. If the airflow rate is less than another airflow rate required at a different location in housing12, the constraint may be met without applying the determined airflow rate. For example, if the airflow rate to maintain 55° C. exhaust from the CPUs is greater than the airflow rate required to maintain PCI card thermal conditions, then the CPU airflow rate will apply. In this manner, discrete airflow rates for different portions of information handling system10may provide more exact thermal management for components disposed within housing12.

FIG. 7illustrates a user interface table62for conversion of determined airflow rates to cooling fan pulse width modulation (PWM) settings, in accordance with embodiments of the present disclosure. For example, a graph of different levels of cooling airflow and PWM settings are depicted for different numbers of hard disk drives disposed in housing12. Such data may be used to set a scaling factor (value of 0.008 under the heading “HDD”) in an energy balance entry for a particular energy balance number. Thus, given a particular airflow requirement, whether in CFM or LFM, required cooling fan speeds may be calculated based upon system configuration as detected by BMC38.

Using the foregoing methods and systems, a cubic airflow rate or linear airflow velocity at a particular point (e.g., at an inlet of PCI subsystem32) in information handling system10, may be estimated based on cooling fan speed. Such cubic airflow rate or linear airflow rate may be a “bulk” or average value (e.g., a per PCI slot average value) or a worst case rate (e.g., an value for a “worst case” PCI slot PCI subsystem32). In addition, using the foregoing methods and systems, given a required cubic airflow rate or linear airflow velocity for a component (e.g., a PCI card), a minimum fan speed required to support such component may be estimated.

While the foregoing description contemplates using energy balances to estimate a linear airflow velocity in LFM based on a cooling fan PWM value, linear airflow velocity in LFM may also be estimated by using an estimate of cubic airflow rate in CFM (e.g., generated using energy balance data from table52inFIG. 5) and an estimated cross-sectional area through which the flow of air travels, as described below with respect toFIG. 8.

FIG. 8illustrates a flow chart of an example method800for estimating linear airflow rate in LFM based on cubic airflow rate in CFM and an estimated cross-sectional area through which the flow of air travels, in accordance with embodiments of the present disclosure. According to some embodiments, method800may begin at step802. As noted above, teachings of the present disclosure may be implemented in a variety of configurations of information handling system10. As such, the preferred initialization point for method800and the order of the steps comprising method800may depend on the implementation chosen.

At step802, thermal manager42may, based on a component inventory (e.g., as maintained by BMC38), determine an estimate of cross-sectional area which is blocked to airflow within information handling system10. For example, the component inventory met set forth a number of PCI slots in PCI subsystem32and which of such PCI slots are populated and the type of PCI card populated (e.g., whether a card is low-profile or full-height, and/or a lane width of the card). Based on this inventory and known, estimated, or assumed physical dimensions of the PCI slots and the PCI cards populating the slots, thermal manager42may estimate a cross-sectional area of PCI components that would block airflow through information handling system10. In addition, similar estimates may be made with respect to other components and/or systems (e.g., power supply unit inventory, network card inventory, etc.) to determine their respective cross section area that would block airflow through information handling system10. Thermal manager42may aggregate the respective cross-sectional areas of all such components and subsystems to determine the overall estimate of cross-sectional area which is blocked to airflow within information handling system10.

At step804, thermal manager42may, based on a form factor of rack14, slot16, and housing12, determine a gross cross-sectional area of the form factor of information handling system10, which may essentially be a cross-sectional area of information handling system10through which air would flow in the absence of blockage by components accounted for in step802above.

At step806, thermal manager42may subtract the estimated cross-sectional area which is blocked to airflow from the gross cross-sectional area to determine an estimated net cross-sectional area through which air may flow in information handling system10.

At step808, thermal manager42may determine a net system cubic airflow rate in CFM. In some embodiments, such net system cubic airflow rate may be determined in accordance with energy balance data from table52inFIG. 5to correlate speed of a cooling fan to cubic airflow rate in CFM, as described in greater detail above.

At step810, thermal manager42may divide the net cubic system airflow rate by the estimated net cross-sectional area to determine an estimated average linear airflow velocity in LFM. After completion of step810, method800may end.

AlthoughFIG. 8discloses a particular number of steps to be taken with respect to method800, method800may be executed with greater or fewer steps than those depicted inFIG. 8. In addition, althoughFIG. 8discloses a certain order of steps to be taken with respect to method800, the steps comprising method800may be completed in any suitable order.

Method800may be implemented using one or more information handling systems10, components thereof, and/or any other system operable to implement method800. In certain embodiments, method800may be implemented partially or fully in software and/or firmware embodied in computer-readable media.

Although the foregoing methods and systems permit estimation of an average or worst case linear airflow velocity in LFM based on a cooling fan speed and estimation of a required cooling fan speed based on a worst-case LFM-based required linear airflow velocity, slot-by-slot airflow estimation may be performed by applying per-slot scaling factors based on an inventory of each slot (e.g., for PCI slots, whether the slot is populated with a card, whether the card is low-profile or full-height, and/or a lane width of the card) to the average or worst-case LFM estimates. Accordingly, linear airflow velocity may be optimized on a slot-by-slot basis instead of cooling fan speed being set based on a worst-case linear airflow velocity requirement, which may reduce required airflow needed to support airflow velocity requirements of cards, and thus decrease power consumption needed to generate required cooling.

FIG. 9illustrates a flow chart of an example method900of slot-by-slot scaling of linear airflow rate in LFM and application thereof, in accordance with embodiments of the present disclosure. According to some embodiments, method900may begin at step902. As noted above, teachings of the present disclosure may be implemented in a variety of configurations of information handling system10. As such, the preferred initialization point for method900and the order of the steps comprising method900may depend on the implementation chosen.

At step902, thermal manager42may determine a bulk (e.g., worst case or average) system airflow velocity in LFM. In some embodiments, such net system airflow velocity may be determined in accordance with energy balance data from table52inFIG. 5to correlate speed of a cooling fan to airflow velocity in LFM, as described in greater detail above. In other embodiments, such net system airflow velocity may be determined based on a net system airflow in CFM and a net cross-sectional area for the airflow, as described above with respect to method800. In yet other embodiments, such net system airflow velocity may be determined based on a correlation of PWM to linear airflow velocity for a particular (e.g., worst case) slot.

At step904, thermal manager42may, based on a component inventory (e.g., as maintained by BMC38), identify slots (e.g., PCI slots) populated within information handling system10and the type of PCI card populated (e.g., whether a card is low-profile or full-height, and/or a lane width of the card).

At step906, based on this identification and known, estimated, or assumed characteristics of the inventoried components, thermal manager42may map each slot to a corresponding scaling factor.FIG. 10illustrates a table mapping each slot to an associated scaling factor, in accordance with embodiments of the present disclosure. A scaling factor for a slot may be based on a location of the slot within information handling system10, a form factor of a card populating a slot (e.g., low-profile or full-height), a lane width of a card populating a slot, and/or any other characteristic of the slot or a card populating such slot. In some embodiments, mathematical correlations between characteristics of a slot (e.g., location, form factor, lane width, etc.) and the slot's scaling factor may be made based on characterization testing of information handling system10(e.g., testing performed on a sample population of information handling systems10by a manufacturer, vendor, or other provider of information handling systems10).

At step908, thermal manager42may estimate a linear airflow velocity in LFM for each slot by applying each slot's respective scaling factor to the bulk system linear airflow velocity.

At step910, in some embodiments, such estimated per-slot linear airflow velocities may be displayed to an administrator or other user of information handling system10(e.g., via a management console coupled to BMC38).

At step912, thermal manager42may compare each estimated per-slot linear airflow velocity against a required linear airflow velocity for a card populated in the slot, and if additional linear airflow velocity is required, thermal manager42may request an increase in cooling fan speed. In some embodiments, a fan speed required for a slot may be determined by applying its per-slot scaling factor to determine a bulk linear airflow velocity, and then convert such bulk linear airflow velocity to a corresponding cooling fan speed, as described above with respect toFIG. 7.

At step914, thermal manager42may compare cooling fan speed requests/requirements for the various subsystems of information handling system10, including a per-slot speed request/requirement as determined above, and set a cooling fan speed based on the highest fan speed requested.

At step916, thermal manager42may use the slot-by-slot linear airflow velocity data and based thereon, recommend to an administrator or other user of information handling system10(e.g., via a management console coupled to BMC38) an optimized or improved PCI card arrangement in the slots of PCI subsystem32, either as a guide before an administrator or other user installs one or more cards or as an optimization/improvement for an already-populated PCI subsystem32. In these and other embodiments, thermal manager42may create a dynamic slot priority list based on optimum cooling parameters that displays to an administrator or other user an optimum card placement based on real-time system configuration and ambient conditions.FIG. 11illustrates a table wherein each row depicts an example configuration of populating three cards within six slots of a PCI subsystem and cooling fan speeds required to support such configuration, in accordance with embodiments of the present disclosure. Notably, in the second and third example configurations, in which either of CARD2 or CARD3 are populated in SLOT 1, cooling fans at their maximum speed would be unable to provide sufficient airflow to satisfy linear airflow velocity requirements of such configurations. Accordingly, if an administrator or other user configured a PCI subsystem in such manner, thermal manager42may issue an alert to such administrator or other user that such configuration is not supported by the thermal capabilities of information handling system10. Also of note, the fourth configuration requires the least amount of power. Thus, where an administrator or other user has populated or plans to populate CARD1, CARD2, and CARD3 into a PCI subsystem, thermal manager42may, in accordance with method900, recommend the fourth configuration to the administrator or other user.

AlthoughFIG. 9discloses a particular number of steps to be taken with respect to method900, method900may be executed with greater or fewer steps than those depicted inFIG. 9. In addition, althoughFIG. 9discloses a certain order of steps to be taken with respect to method900, the steps comprising method900may be completed in any suitable order.

Method900may be implemented using one or more information handling systems10, components thereof, and/or any other system operable to implement method900. In certain embodiments, method900may be implemented partially or fully in software and/or firmware embodied in computer-readable media.

Although the foregoing methods and systems permit thermal control relating to components which have been qualified as to their cooling needs by a manufacturer, vendor, or other provider of information handling system10, the methods and systems described above may alone be insufficient to apply the approaches thereof to components which have not been qualified.

FIG. 12illustrates a flow chart of an example method1200of performing thermal control of unqualified components, in accordance with embodiments of the present disclosure. According to some embodiments, method1200may begin at step1202. As noted above, teachings of the present disclosure may be implemented in a variety of configurations of information handling system10. As such, the preferred initialization point for method1200and the order of the steps comprising method1200may depend on the implementation chosen.

At step1202, in response to a slot of PCI subsystem32being populated with a card which has not been qualified or characterized by a manufacturer, vendor, or other provider of information handling system10, thermal manager42may determine if the card's airflow requirement in LFM is otherwise known. For example, such information might be obtained via a user interface wizard in which an administrator or other user of information handling system10enters information about the unqualified card. As another example, such information might be obtained from a configuration space (e.g., a PCI configuration space) or similar storage media integral to the card. As a further example, such information might come from a whitelist stored within BMC38. If the card's airflow requirement is known, method1200may proceed to step1218. Otherwise, method1200may proceed to step1204.

At step1204, thermal manager42may determine if the card is an actively cooled device which has its own cooling fan. For example, such information might be obtained via a user interface wizard in which an administrator or other user of information handling system10enters information about the unqualified card. As another example, such information might be obtained from a configuration space (e.g., a PCI configuration space) or similar storage media integral to the card. If the card is actively cooled, method1200may end as no additional fan cooling may be required for the card in addition to its active cooling system. Otherwise, method1200may proceed to step1206.

At step1206, thermal manager42may determine if the card's maximum power consumption is otherwise known. For example, such information might be obtained via a user interface wizard in which an administrator or other user of information handling system10enters information about the unqualified card. As another example, such information might be obtained from a configuration space (e.g., a PCI configuration space) or similar storage media integral to the card. If the card's airflow requirement is known, method1200may proceed to step1210. Otherwise, method1200may proceed to step1208.

At step1208, in response to the LFM airflow requirement and maximum power consumption of the card being unknown, thermal manager42may, based on a form factor, lane width, and/or other characteristics of the card, determine an assumed maximum power consumption for such card.FIG. 13illustrates a table with an example of mapping a form factor and lane width of a PCI card to an assumed maximum power consumption for such card, in accordance with embodiments of the present disclosure.

At step1210, thermal manager42may, based on an assumed maximum power consumption for such card (as determined at step1208) or a known maximum power consumption (as determined at step1206) determine an estimated LFM airflow requirement for the card. In some embodiments, such determination may be made by correlating the maximum power assumption to the estimated LFM airflow based on one or more characteristics of the card, including a form factor of the card and a platform type of the information handling system in which the PCI card is installed.FIG. 14illustrates a table for estimating an airflow requirement in LFM for a card based on maximum power consumptions for different form factors of a card and information handling system platform types for which such card may be installed, in accordance with embodiments of the present disclosure.

At step1212, thermal manager42may determine whether a vendor of the card is known. For example, such information might be obtained via a user interface wizard in which an administrator or other user of information handling system10enters information about the unqualified card. As another example, such information might be obtained from a configuration space (e.g., a PCI configuration space) or similar storage media integral to the card. If a vendor of the card is known, method1200may proceed to step1214. Otherwise, method1200may proceed to step1216.

At step1214, in response to the vendor of the card being known, thermal manager42may scale the estimated LFM airflow requirement for the card by a vendor-based scaling factor. Thus, while the estimated LFM airflow requirement as calculated at step1210may assume a “worst-case” vendor, scaling with a vendor-based scaling factor for known vendors with known general cooling requirements, thermal manager42may provide a better estimate of a true airflow requirement for the card than that of the worst-case estimate of step1210.FIG. 15illustrates a table mapping a plurality of card vendors and lane widths for cards of such vendors to an associated scaling factor, in accordance with embodiments of the present disclosure.

At step1216, thermal manager42may scale the estimated airflow requirement (determined at step1210or step1214) based on a per-slot scaling factor, in a manner similar to that of method900. In some embodiments, such scaling may not be applied, and instead a bulk LFM airflow (e.g., determined at step1210or step1214) may be used.

At step1218, thermal manager42may determine from the LFM airflow requirement, whether a known airflow requirement (as determined at step1202) or an estimated airflow requirement (as determined at step1210, step1214, or step1216) a fan speed required for the unqualified card by converting such LFM airflow to a corresponding cooling fan speed, as described above with respect toFIG. 7.

At step1220, thermal manager42may compare cooling fan speed requests/requirements for the various subsystems of information handling system10, including a speed request/requirement for the unqualified card as determined above, and set a cooling fan speed based on the highest fan speed requested.

AlthoughFIG. 12discloses a particular number of steps to be taken with respect to method1200, method1200may be executed with greater or fewer steps than those depicted inFIG. 12. In addition, althoughFIG. 12discloses a certain order of steps to be taken with respect to method1200, the steps comprising method1200may be completed in any suitable order.

Method1200may be implemented using one or more information handling systems10, components thereof, and/or any other system operable to implement method1200. In certain embodiments, method1200may be implemented partially or fully in software and/or firmware embodied in computer-readable media.

Thus, in accordance with method1200, thermal manager42may, based on limited or incremental knowledge and/or information about an unqualified component, make the best estimation possible regarding the thermal behavior of such component.

The systems and methods described above may provide many advantages. For example, the systems and methods above may provide for determination of whether a required LFM flow rate for a card is supported by a thermal management system of an information handling system, and provide an alert if a card is not supported. As another example, the systems and methods allow for reporting to an administrator or other user real-time, system maximum and system minimum LFM airflow values within management interfaces of an information handling system10, including on a slot-by-slot basis. As a further example, the systems and methods may enable setting of custom cooling fan speed options in terms of required LFM airflow, including on a slot-by-slot basis. Moreover, the systems and methods may allow for reporting of optimum card configurations in order to ensure that cards are inserted in slots for which adequate LFM airflow can be provided as well as optimizing power consumption based on slot-based determinations of required LFM airflow. Additionally, the systems and methods may allow for such advantages to be applied not only to cards that are qualified by a vendor, manufacturer, or other provider of an information handling system, but also to unqualified cards based on administrator or other user input or assumption regarding such cards.

Although the foregoing discusses cubic airflow in terms of cubic feet per minute, other units of measurement may be used (e.g., cubic meters per second). Also, although the foregoing discusses linear airflow velocity in terms of linear feet per minute, other units of measurement may be used (e.g., meters per second).