Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
COOLING EVENTS BASED ON SMOOTHED TEMPERATURES
Document Type and Number:
WIPO Patent Application WO/2022/197303
Kind Code:
A1
Abstract:
Example implementations relate to cooling events based on smoothed temperatures. In some examples, a computing device can include a fan, a sensor, a component, and a controller, where the controller is to sample a temperature of the component of the computing device via the sensor, apply a smoothing model to the sampled temperature to determine a smoothed temperature, and control the fan based on the determined smoothed temperature.

Inventors:
LLOYD JON G (US)
BARGERHUFF RICHARD (US)
Application Number:
PCT/US2021/023096
Publication Date:
September 22, 2022
Filing Date:
March 19, 2021
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
HEWLETT PACKARD DEVELOPMENT CO (US)
International Classes:
G06F1/20; G01K13/00; H05K7/20
Foreign References:
CN107193352A2017-09-22
US6134667A2000-10-17
CN206819237U2017-12-29
JP2012248136A2012-12-13
Attorney, Agent or Firm:
SU, Benjamin et al. (US)
Download PDF:
Claims:
What is claimed is:

1. A computing device, comprising: a fan; a sensor; a component; and a controller, wherein the controller is to: sample a temperature of the component of the computing device via the sensor; apply a smoothing model to the sampled temperature to determine a smoothed temperature; and control the fan based on the determined smoothed temperature.

2. The computing device of claim 1 , wherein the controller is to apply the smoothing model by smoothing the sampled temperature with a smoothing factor and a prior smoothed temperature.

3. The computing device of claim 2, wherein the smoothing factor is a predefined integer value.

4. The computing device of claim 1, wherein the controller is to control the fan by causing the fan to rotate at a particular rotation per minute (RPM).

5. The computing device of claim 4, wherein the controller is to determine the particular RPM from the smoothed temperature by comparing the smoothed temperature to predefined temperatures and respective corresponding fan speeds stored in a lookup table.

6. The computing device of claim 4, wherein the controller is to determine the particular RPM from the smoothed temperature by utilizing the smoothed temperature in an equation relating the smoothed temperature to a fan speed.

7. A non-transitory machine-readable storage medium including instructions that when executed cause a controller of a computing device to: sample a temperature of a component of the computing device via a sensor; smooth the sampled temperature with a smoothing factor and a prior smoothed temperature according to a smoothing model to generate a first smoothed temperature, wherein the prior smoothed temperature is determined prior to sampling the temperature of the component; determine a particular rotation per minute (RPM) of a fan based on the first smoothed temperature; and cause the fan to operate at the particular RPM,

8. The non-transitory storage medium of claim 7, inciuding instructions to select, in response to the first smoothed temperature exceeding a threshold, a new smoothing factor,

9, The non-transitory storage medium of claim 8, including instructions to select the new smoothing factor to be: a higher smoothing factor than the smoothing factor in response to the first smoothed temperature exceeding an upper threshoid; or a lower smoothing factor than the smoothing factor in response to the first smoothed temperature exceeding a lower threshoid.

10, The non-transitory storage medium of claim 8, including instructions to: smooth a further sampled temperature with the new smoothing factor and the first smoothed temperature to generate a second smoothed temperature; and determine a different RPM of the fan based on the second smoothed temperature.

11, A computing device, comprising: a fan; a component; a sensor to sample a first temperature and a second temperature of the component; and a controller, wherein the controller is to: determine an initial rotation per minute (RPM) for the fan by: smoothing the first temperature with a smoothing factor to determine an initial smoothed temperature; and comparing the initial smoothed temperature to a lookup table; smooth the second temperature with the smoothing factor and the initial smoothed temperature to generate a subsequent smoothed temperature; determine a further RPM of the fan utilizing the lookup table based on the subsequent smoothed temperature; and cause the fan to operate at the further RPM in response to the subsequent smoothed temperature being different from the initial smoothed temperature.

12. The computing device of claim 11 , wherein the controller is to determine a performance mode of the computing device.

13. The computing device of claim 12, wherein the controller is to select the lookup table from a plurality of lookup tables based on the determined performance mode.

14. The computing device of claim 11 , wherein the initial smoothed temperature and the subsequent smoothed temperature are stored in a memory.

15. The computing device of claim 14, wherein in response to the controller smoothing a further smoothed temperature, removing the initial smoothed temperature from the memory and storing the further smoothed temperature in the memory.

Description:
COOLING EVENTS BASED ON SMOOTHED TEMPERATURES

Background

[0001] Some users of computing devices may utilize their computing devices in different environments. Certain computing devices can be portable to allow a user to carry or otherwise bring with the computing device while in a mobile setting. A computing device can allow a user to utilize computing device operations for work, education, gaming, multimedia, and/or other general use in a mobile setting.

Brief Description of the Drawings

[0002] Figure 1 illustrates an example of a computing device including a fan for cooling events based on smoothed temperatures consistent with the disclosure.

[0003] Figure 2 illustrates a memory including lookup tables for cooling events based on smoothed temperatures consistent with the disclosure.

[0004] Figure 3 illustrates an example of a computing device including a fan for cooling events based on smoothed temperatures consistent with the disclosure.

[0005] Figure 4 illustrates a block diagram of an example system for cooling events based on smoothed temperatures consistent with the disclosure.

Detailed Description

[0006] A user may utilize a computing device for various purposes, such as for business and/or recreational use. As used herein, the term “computing device” refers to an electronic system having a processing resource, memory resource, and/or an application-specific integrated circuit (ASIC) that can process information. A computing device can be, for example, a laptop computer, a notebook, a desktop, a tablet, and/or a mobile device, among other types of computing devices. [0007] While a computing device is performing computing operations, components of the computing device can generate heat and as a result a temperature of the component and/or computing device can rise as well. For example, performing such computing operations by a central processing unit (CPU) and/or other components (e.g., graphics processing unit (GPU), motherboard, power supply, etc.) can lead to an increase in temperature of the CPU and/or the other components.

[0008] A temperature sensor can be utilized to sample temperatures of computing device components. As used herein, the term “sensor” refers to a device to detect events and/or changes in its environment and transmit the detected events and/or changes for processing and/or analysis. For example, the temperature sensor can sample temperatures in an environment around the temperature sensor and transmit such sampled temperatures for processing and/or analysis.

[0009] A fan can be utilized to help cool such computing device components. As used herein, the term “fan” refers to a device to generate a current of air by the movement of a surface. For example, a fan can create an air flow to be moved across a computing device component to help cool the computing device component. When a temperature sensor determines an increase in temperature of a computing device component, a speed of the fan (e.g., in rotations per minute (RPM)) can be increased to help cool the computing device component.

[0010] Some computing device components may have volatile temperature readings. For example, certain computing device components may experience temperature fluctuations for brief periods of time. For instance, a CPU may fluctuate 30 ° Celsius (C) or more per second. However, such fluctuations may be brief, lasting seconds or less. Such fluctuations, as a result of being so brief, may not accurately represent an actual thermal condition of the computing device component. Accordingly, if fan speeds are increased as a result of such fluctuations, sound levels from the increased fan speeds can become increasingly audible to a user of the computing device. The increase in noise from the increased fan speeds can be an annoyance to a user of the computing device and can result in a negative user experience, especially since the increase in fan speed may not be imperative given the short duration of such a temperature fluctuation.

[0011] To address temperature volatility and fluctuations, prior approaches can include a computing device determining an average or running average temperature reading. For example, a temperature sensor may sample and store a plurality of temperature readings to determine an average temperature reading. Such an average temperature reading may not be as affected by a short spike in temperature readings of a computing device component and therefore avoid an increase in fan speed that is not urgent. However, storing the plurality of temperature readings from the temperature sensor and the average temperature reading can utilize precious memory space.

[0012] Utilizing a smoothing model on sampled temperatures can allow for a computing device to account for temperature volatility and fluctuations in a computing device component when controlling a fan of the computing device for temperature mitigation of such a computing device component while using less memory space as compared with previous approaches. Less data may be stored in memory by controlling a fan speed based on a smoothed temperature as compared with utilizing an average or running average temperature reading while still accounting for short-term temperature fluctuations in a computing device component. Such an approach can allow for less audible fan noise and better temperature control of a computing device as compared with previous approaches as is further described herein.

[0013] Figure 1 illustrates an example of a computing device 100 including a fan 104 for cooling events based on smoothed temperatures consistent with the disclosure. As illustrated in Figure 1, the computing device 100 can include a controller 102, a fan 104, a component 106, and a sensor 108.

[0014] As illustrated in Figure 1, the computing device 100 can include a component 106. As used herein, the term “component” refers to a constituent part of a greater system. The component 106 can be, for example, a CPU (e.g,, controller 102), a GPU, a hard disk, a power supply, a motherboard, and/or any other part that can assist the computing device 100 in performing computing device operations.

[0015] As the component 106 operates, heat can be generated as a result. The sensor 108 can be a temperature sensor that can sample the heat generated by the component 106 during operation of the component 106. The sensor 108 can be, for example, a thermocouple, a resistance temperature detector, a thermistor, a semiconductor based integrated circuit, etc.

[0016] The computing device 100 can include the fan 104. As described above, the fan 104 can generate a current of air flow that can be moved for cooling. In some examples, the fan 104 can be a dedicated fan associated with the component 106 that can generate a current of air flow, where the current of air flow can be moved across the component 106 to interact with the component 106 in order to help convectively cool the component 106. In some examples, the fan 104 may generate a current of air flow to be circulated within a housing of the computing device 100 generally.

[0017] To utilize a smoothing model, the controller 102 can, at 110, sample a temperature of the component 106 via the sensor 108. For example, the sensor 108 can sample a temperature of the component 106, and the controller 102 can determine the sampled temperature to be 64 °C. For instance, in an example in which the component 106 is a CPU, the controller 102 can sample a temperature of a die of the CPU via the sensor 108.

[0018] The controller 102 can, at 112, apply a smoothing model to the sampled temperature. As used herein, the term “smoothing model” refers to a mathematical model that receives an input and generates an output by modification of the input according to a particular factor. For example, the smoothing model can be applied to the sampled temperature from the sensor 108 to determine a smoothed temperature based on a smoothing factor, as is further described herein. As used herein, the term “smoothed temperature” refers to a temperature value that has been modified according to a smoothing model. [0019] The controller 102 can apply the smoothing model to the sampled temperature by smoothing the sampled temperature with a smoothing factor and a prior smoothed temperature. As used herein, the term “smoothing factor refers to a value applied to the sampled temperature in order to generate a smoothed temperature in a smoothing model. For example, the smoothing factor can be a predefined integer value. Such an integer value can be, for example, between 0 and 100 (inclusive of 100). Further, in some examples, the smoothing factor can be a decimal number. For example, the decimal number value can be, for instance a decimal number between 0 and 100, inclusive of 100 (e.g., 15.5).

[0020] The smoothing model can be applied using Equation 1 below. Equation 1 is as foiiows:

[0021] where SmoothedTemp(X) is the smoothed temperature to be calculated, SmoothedTemp(X-1) is a previously calculated smoothed temperature, and SmoothingFactor is the predefined integer value smoothing factor. For an initial SmoothedTemp calculation, SmoothedTemp(X-l) may be set to a predefined value, such as 0 or a value believed to be typical or nominal for the sensor’s location. Initialization of the smoothing model is further described in connection with Figure 3.

[0022] As illustrated above, Equation 1 can be utilized for determining the smoothed temperature. For example, the sampled temperature from the sensor 108 can be 64 °C, a previously smoothed temperature (e.g., SmoothedTemp(X- 1)) can be 62 °C, and the smoothing factor can be the integer value 5. Utilizing the smoothing model including Equation 1, the controller 102 can determine the smoothed temperature (e.g., SmoothedTemp(X)) to be 62.1 °C. [0023] In an example In which the temperature of the component 108 temporarily spikes, the smoothing model can be applied to minimize the effect of such a spike in temperature. For example, if the next sampled temperature by the sensor 108 is 97 °C, the controller 102 can utilize the smoothing model including Equation 1 determine the smoothed temperature to be 63.845 °C (e.g., assuming the new previously smoothed temperature SmoothedTemp(X-1) is now 62.1 °C and the smoothing factor is still 5). Following the spike in temperature, the sensor 108 may then sample the next temperature to be 85 °C, and the controller 102 can again utilize the smoothing model including Equation 1 to determine the smoothed temperature to be 63.9 °C (e.g., assuming the new previously smoothed temperature SmoothedTemp(X-l) is now 63.845 °C and the smoothing factor is still 5).

[0024] As illustrated by the smoothing model and Equation 1 above, even though a temporary spike in temperature of the component 106 (e.g., from 84 °C to 97 °C to 65 °C) occurred, application of the smoothing model can result in smoothed temperature values being maintained around 62-64 °C (e.g., 82.1 °C, 63.845 °C. 63.9 °C). Accordingly, the controller 102 can avoid drastically increasing the speed of the fan 104 when utilizing the smoothed temperature to control the fan 104, as control of the fan 104 based on the smoothed temperature is further described herein.

[0025] Although a temporary spike in temperature of the component 108 is described above, examples of the disclosure are not so limited. For instance, in some examples, the temperature of the component 106 may gradually rise, in such an example, Equation 1 can be utilized for determining the smoothed temperature. For example, the controller 102 may determine the smoothed temperature (e.g., SmoothedTemp(X)) to be 62.1 °C. If the next sampled temperature by the sensor 108 is 67 °C, the controller 102 can utilize the smoothing model including Equation 1 determine the smoothed temperature to be 82.35 °C (e.g., assuming the new previously smoothed temperature SmoothedTemp(X-l) is now 62.1 °C and the smoothing factor is still 5), The sensor 108 may then sample the next temperature to be 74 °C, and the controller 102 can again utilize the smoothing model including Equation 1 to determine the smoothed temperature to be 82.93 °C (e.g., assuming the new previously smoothed temperature SmoothedTemp(X-1) is now 62.35 °C and the smoothing factor is still 5).

[0026] As illustrated by the smoothing model and Equation 1 above, as the sampled temperatures gradually increase (e.g., from 64 °C to 67 °C to 74°C), application of the smoothing model can result in the smoothed temperature values being slowly increased (e.g., from 62.1 °C to 62.35 °C to 82.93 °C, respectively). Accordingly, the controller 102 can slowly increase the speed of the fan 104 when utilizing the smoothed temperature to control the fan 104, as is further described herein. In addition, the smoothing model may also be utilized as sampled temperatures gradually decrease.

[0027] Although the smoothing factor is described above as being constant (e.g., 5), examples of the disclosure are not so limited. For instance, as the smoothed temperature rises, the smoothing factor can be increased and as the smoothed temperature decreases, the smoothing factor can be decreased, as is further described herein. Alternatively, multiple smoothed values based upon the same temperature sensor reading may be used in parallel, each with different smoothing factors and temperature ranges over which their smoothed readings can influence fan speeds, in such cases, the least smoothed sensor readings can typically be effective over the higher smoothed temperatures. Additionally, the smoothing factor can be a particular value set by a user, such as a system developer. When the smoothing factor value is increased, this can ultimately result in less smoothing of the sampled temperature.

[0028] The controller 102 can, at 114, control the fan 104 based on the determined smoothed temperature. For example, the controller 102 can control the fan 104 causing the fan 104 to rotate at a particular RPM.

[0029] In order to determine the particular RPM, the controller 102 can compare the smoothed temperature to predefined temperatures and respective corresponding fan speeds in a lookup table. As used herein, the term “lookup table” refers to a matrix of data arranged as attribute-value pairs. The attribute- value pairs can be related data elements. For instance, the attribute can be a temperature and the value can be a fan speed in RPM (e.g., as Is further illustrated in Figure 2).

[0030] To determine a speed, the controller 102 can compare the smoothed temperature with a list of temperatures included in the lookup table, determine a closest temperature match, and select a fan speed corresponding to the determined temperature. For example, as mentioned above a smoothed temperature value of 83.9 °C may be determined using the smoothing model. The controller 102 can compare the smoothed temperature value of 63.9 °C to a list of temperatures included in the lookup table, determine 64 °C (from the lookup table) is the closest match, and determine that a fan speed of 2,000 RPM corresponds to the temperature value of 64 °C. The controller 102 can, accordingly, cause the fan to rotate at 2,000 RPM.

[0031] The lookup table can be unique to the component 106 of the computing device 100. For example, the component 106 may be a GPU. The lookup table utilized for the fan 104 can include temperatures and fan speeds that correspond uniquely to the GPU. If the component 106 Is a CPU, the lookup table for the fan 104 can include temperatures and fan speeds that correspond uniquely to the CPU and can be different from those of a GPU or other component 106. In other words, a lookup table can be different for each component 106 of the computing device 100.

[0032] In some examples, the lookup table can depend on a performance mode of the computing device 100. As used herein, the term “performance mode” refers to a state of operation of a computing device based on accuracy, efficiency, and speed of execution of computing device operations. For example, the computing device 100 can determine a performance mode of the computing device 100. Performance modes can include a power saver mode, a balanced, mode, a high-performance mode, etc. Such performance modes may be described by factors including response time, rate of processing, utilization of computing resources, etc. For example, a high-performance mode may include a fast response time, rate of processing, and high utilization of computing resources at the expense of increased heat generation, power consumption, etc., whereas a power saver mode may result in less heat generation, power consumption, etc. but at a slower response time, rate of processing, and lower utilization of computing resources than a high-performance mode. A balanced performance mode can lie between a high-performance mode and a power saver mode.

[0033] The controller 102 can select a lookup table from a plurality of lookup tables based on the determined performance mode. For example, the controller 102 can select a first lookup table corresponding to the high- performance mode when the computing device 100 is operating in the high- performance mode, select a second lookup table corresponding to the balanced performance mode when the computing device 100 is operating in the balanced performance mode, select a third lookup fable corresponding to the power saver mode when the computing device 100 is operating in the power saver mode, etc. Accordingly, control of the fan 104 can depend on the performance mode of the computing device 100.

[0034] In the example described above, the smoothing factor from Equation 1 was described as being 5. However, the smoothing factor can be modified based on the smoothed temperature, as is further described herein. [0035] Although the controller 102 is described above as utilizing a lookup table to determine the particular RPM of the fan 104 based on the smoothed temperature, examples of the disclosure are not so limited. For example, the controller 102 can determine the particular RPM of the fan 104 from the smoothed temperature by utilizing the smoothed temperature in an equation relating the smoothed temperature to a fan speed, as is further described herein.

[0038] In some examples, the controller 102 can determine the particular RPM of the fan 104 from the smoothed temperature by utilizing the smoothed temperature in a multi-segment ramp function equation. A multi-segment ramp function equation can define a series of ramp segments for control of the RPM of fan 104. For example, the ramp segments governed by the ramp function equation can correspond to fan speeds, where the smoothed temperature can dictate which is the resultant ramp segment according to the multi-segment ramp function equation. [0037] In some examples, the controller 102 can determine the particular RPM of the fan 104 from the smoothed temperature by utilizing the smoothed temperature in an equation associated with a proportional-integral-derivative (PID) controller. For example, the smoothed temperature can be utilized as a process variable to determine a fan speed via the PID controller,

[0038] The smoothing factor can be modified based on a smoothed temperature exceeding a threshold value. For example, the controller 102 can select a new smoothing factor if a determined smoothed temperature exceeds a threshold.

[0039] In some examples, the new smoothing factor can be a higher smoothing factor than the previous smoothing factor in response to the determined smoothed temperature exceeding an upper threshold. For example, in response to a smoothed temperature (e.g., determined by Equation 1 to be, for instance, 71 °C) exceeding a threshold value (e.g., 70 °C), the controller 102 can select a new smoothing factor (e.g., a first new smoothing factor). The new smoothing factor can be, for example, selected to be a value of 15 (from 7). Additionally, response to a smoothed temperature (e.g., determined by Equation 1 to be, for instance, 82 °C) exceeding a threshold value (e.g., 80 °C), the controller 102 can select an additional new smoothing factor (e.g., a second new smoothing factor) to be a value of 35. In other words, as the determined smoothed temperature increases, a smoothing factor with a higher value can be selected.

[0040] In some examples, the new smoothing factor can be a lower smoothing factor than the previous smoothing factor in response to the determined smoothed temperature exceeding a lower threshold. For example, in response to a smoothed temperature (e.g., determined by Equation 1 to be, for instance, 78 °C) exceeding a threshold value (e.g., 80 °C), the controller 102 can select a new smoothing factor (e.g., a first new smoothing factor). The new smoothing factor can be, for example, selected to be a value of 15 (from 35). Additionally, in response to a smoothed temperature (e.g., determined by Equation 1 to be, for instance, 69 °C) exceeding a threshold value (e.g., 70 °C), the controller 102 can select an additional new smoothing factor (e.g., a second new smoothing factor) to be a value of 7. In other words, as the determined smoothed temperature decreases, a smoothing factor with a lower value can be selected.

[0041] As the controller 102 applies the smoothing model to smooth the further sampled temperatures with the new smoothing factors to generate the new smoothed temperatures, the controller 102 can determine a different RPM of the fan. For example, in response to the controller 102 determining the new smoothed temperature to be 71 °C, the controller 102 can utilize the lookup table to determine a fan RPM corresponding to the smoothed temperature of 71 °C (e.g., 2,500 RPM).

[0042] Figure 2 illustrates a memory 220 including lookup tables 222 for cooling events based on smoothed temperatures consistent with the disclosure. As illustrated in Figure 2, the memory 220 can include lookup tables 222-1, 222- 2, 222-3, 222-N (referred to collectively herein as lookup tables 222).

[0043] As previously described in connection with Figure 1 , a controller of a computing device can determine a particular RPM for a fan of the computing device from a smoothed temperature utilizing lookup tables 222. For example, the controller can determine a smoothed temperature utilizing the smoothing model and compare the smoothed temperature to predefined temperatures and respective corresponding fan speeds stored in lookup tables 222, as is further described herein.

[0044] In some examples, the lookup tables 222 can correspond to performance modes of the computing device. For example, lookup table 222-1 can correspond to a power saver mode, lookup table 222-2 can correspond to a balanced performance mode, and lookup table 222-3 can correspond to a high- performance mode. When the controller determines its performance mode, the controller can further select a lookup table from the plurality of lookup tables 222 based on the determined performance mode.

[0045] For example, the controller can determine the performance mode of the computing device to be a power saver performance mode and as a result, select the lookup table 222-1. Utilizing a smoothed temperature (e.g., determined to be 87.5 °C), the controller can determine that the closest temperature in the lookup table 222-1 is 67 °C, and determine that the fan speed that corresponds to 67 °C is 2,200 RPM. Accordingly, the controller can cause the fan to rotate at 2,200 RPM.

[0048] As another example, the controller can determine the performance mode of the computing device to be a high-performance mode and as a result, select the lookup table 222-3. Utilizing a smoothed temperature (e.g., determined to be 70.5 °C), the controller can determine that the closest temperature in the lookup table 222-3 is 70 °C, and determine that the fan speed that corresponds to 70 °C is 2,560 RPM. Accordingly, the controller can cause the fan to rotate at 2,560 RPM.

[0047] The lookup tables 222 can be unique to the component of the computing device. For example, the lookup tables 222 can correspond to a GPU of the computing device. The memory 220 can store different lookup tables for different components (e.g., CPU, etc.).

[0048] Figure 3 illustrates an example of a computing device 300 including a fan 304 for cooling events based on smoothed temperatures consistent with the disclosure. As illustrated in Figure 3, the computing device 300 can include a controller 302, a fan 304, a component 306, and a sensor 308.

[0049] As previously above, the controller 302 can apply a smoothing model to a sampled temperature utilizing Equation 1 (e.g., previously described in connection with Figure 1). The temperature of the component 306 can be sampled by the sensor 308.

[0050] To initialize the smoothing model, the controller 302 can cause the sensor 308 to sample a first temperature of the component 306. For example, the first temperature sampled of the component 306 can be 65 °C. The controller 302 can utilize Equation 1 to determine, at 324, an initial RPM for the fan 304 by smoothing the first temperature of the component 306 with a smoothing factor to determine an initial smoothed temperature. For example, utilizing Equation 1 (e.g., where the sampled temperature is 65 °C, the smoothing factor can be a particular value (e.g., 5) pre-set by a user such as a system developer, and the previously calculated smoothed temperature can be set to an initial temperature such as 25 °C), the controller 302 can determine the initial smoothed temperature (e.g., 65 °C). The controller 302 can compare the initial smoothed temperature to a lookup table to determine the initial RPM for the fan 304 by comparing the initial smoothed temperature to a list of temperatures to determine an RPM corresponding to the closest temperature of the list of temperatures to the initial smoothed temperature. The controller 302 can, for example, determine that the initial smoothed temperature (e.g., 65 °C) is closest to 65 °C which corresponds to an initial RPM of 2,100 RPM. In other examples, the controller 302 can utilize the initial smoothed temperature with a multi-segment ramp function equation or with a RID controller to determine the RPM of the fan 304.

[0051] The controller 302 can then sample a second temperature (e.g.,

66 °C). The controller 302 can, at 326, smooth the sampled second temperature with the smoothing factor (e.g., 5) and the initial smoothed temperature (e.g., 65 °C) to generate a subsequent smoothed temperature (e.g., 65.95 °C).

[0052] At 328, the controller 302 can determine a further RPM of the fan utilizing the lookup fable based on the subsequent smoothed temperature. For example, the controller 302 can determine that the subsequent smoothed temperature is closest to 66 °C from the lookup table, which corresponds to a further RPM of 2,200 RPM. In other examples, the controller 302 can utilize the subsequent smoothed temperature with a multi-segment ramp function equation or with a RID controller to determine the further RPM of the fan 304. [0053] The controller 302 can, at 329, cause the fan 304 to operate at the further RPM in response to the subsequent smoothed temperature being different from the initial smoothed temperature. For example, the controller 302 can cause the fan 304 to operate at 2,200 RPM (e.g., increase the fan speed from 2,100 RPM to 2,200 RPM) in response to the subsequent smoothed temperature (e.g., 65.95 °C) being different from the initial smoothed temperature (e.g., 65 °C).

[0054] The initial smoothed temperature and the subsequent smoothed temperature can be stored in memory. For example, the initial smoothed temperature (e.g., 65 °C) and the subsequent smoothed temperature (e.g,, 85.95 °C) can be data values stored in memory. The controller 302 can smooth a further smoothed temperature (e.g., 70.31 °C). In response to the controller 302 smoothing the further smoothed temperature (e.g., 70.31 °C), the controller 302 can remove the Initial smoothed temperature from memory and store the further smoothed temperature in the memory. For instance, the controller 302 can remove the initial smoothed temperature (e.g., 65 °C) from memory and store the further smoothed temperature (e.g., 70.31 °C) in the memory. Such memory management can allow for the controller 302 to store two temperature values (e.g., the previously smoothed temperature reading and the new sampled temperature) as opposed to many values utilized in previous approaches utilizing when an average or running average is calculated for controlling a fan.

[0055] Cooling events based on smoothed temperatures can allow for control of a fan when temperatures of a component of the computing device are volatile and fluctuate. Such an approach to fan control can prevent a fan speed of a fan from being unnecessarily increased, especially when such temperature fluctuations are short, as well as reducing memory usage. Prevention of the fan speed from being unnecessarily increased can keep audible noise from the fan lower, which can lead to a positive user experience as compared with previous approaches.

[0058] Figure 4 illustrates a block diagram of an example system for cooling events based on smoothed temperatures consistent with the disclosure, in the example of Figure 4, system 430 includes a controller 402 and a non- transitory machine-readable storage medium 432. Although not illustrated in Figure 4, the controller 402 can include a processing resource. The following descriptions refer to a single processing resource and a single machine- readable storage medium, the descriptions may also apply to a system with multiple processors and multiple machine-readable storage mediums. In such examples, the instructions may be distributed across multiple machine-readable storage mediums and the instructions may be distributed across multiple processors. Put another way, the instructions may be stored across multiple machine-readable storage mediums and executed across multiple processors, such as in a distributed computing environment.

[0057] The processing resource of the controller 402 may be a central processing unit (CPU), microprocessor, and/or other hardware device suitable for retrieval and execution of instructions stored in a non-transitory machine- readable storage medium 432. In the particular example shown in Figure 4, the processing resource of the controller 402 may receive, determine, and send instructions 434, 436, 438, and 440. As an alternative or in addition to retrieving and executing instructions, the processing resource of the controller 402 may include an electronic circuit comprising a number of electronic components for performing the operations of the instructions in the non-transitory machine- readable storage medium 432. With respect to the executable instruction representations or boxes described and shown herein, it should be understood that part or all of the executable instructions and/or electronic circuits included within one box may be included in a different box shown in the figures or in a different box not shown.

[0058] The non-transitory machine-readable storage medium 432 may be any electronic, magnetic, optical, or other physical storage device that stores executable instructions. Thus, the non-transitory machine-readable storage medium 432 may be, for example, Random Access Memory (RAM), an Electrically-Erasable Programmable Read-Only Memory (EEPROM), a storage drive, an optical disc, and the like. The executable instructions may be “installed” on the system 430 illustrated in Figure 4. The non-transitory machine-readable storage medium 432 may be a portable, external or remote storage medium, for example, that allows the system 430 to download the instructions from the portable/external/remote storage medium. In this situation, the executable instructions may be part of an “installation package”.

[0059] Sample instructions 434, when executed by a processing resource of the controller 402, may cause system 430 to sample a temperature of a component of the computing device 400 via a sensor. The sensor can be, for example, a temperature sensor. [0080] Smooth instructions 436, when executed by a processing resource of the controller 402, may cause system 430 to smooth the sampled temperature with a smoothing factor and a prior smoothed temperature according to a smoothing model to generate a first smoothed temperature. The prior smoothed temperature can be determined prior to sampling the temperature of the component of the computing device 400.

[0081] Determine instructions 438, when executed by a processing resource of the controller 402, may cause system 430 to determine a particular RPM of a fan of the computing device 400 based on the smoothed temperature. The controller 402 may compare the smoothed temperature to a lookup table to determine the particular RPM. In other examples, the system 430 can utilize the smoothed temperature with a multi-segment ramp function equation or with a RID controller to determine the particular RPM.

[0082] Cause instructions 440, when executed by a processing resource of the controller 402, may cause system 430 to cause the fan to operate at the particular RPM. For example, the controller 402 can cause the fan to spin at the particular RPM to generate an air flow to help cool the component of the computing device 400.

[0083] In the foregoing detailed description of the disclosure, reference is made to the accompanying drawings that form a part hereof, and in which is shown by way of illustration how examples of the disclosure may be practiced. These examples are described in detail to enable those of ordinary skill in the art to practice the examples of this disclosure, and it is to be understood that other examples may be utilized and that process, electrical, and/or structural changes may be made without departing from the scope of the disclosure.

[0084] The figures herein follow a numbering convention in which the first digit corresponds to the drawing figure number and the remaining digits identify an element or component in the drawing. Similar elements or components between different figures may be identified by the use of similar digits. For example, 102 may reference element “02” in Figure 1, and a similar element may be referenced as 302 in Figure 3. [0085] Elements illustrated in the various figures herein can be added, exchanged, and/or eliminated so as to provide a plurality of additional examples of the disclosure. In addition, the proportion and the relative scale of the elements provided in the figures are intended to illustrate the examples of the disclosure and should not be taken in a limiting sense. As used herein, "a plurality of an element and/or feature can refer to more than one of such elements and/or features.