I was using my notebook this morning and was thinking, the fans turn on more than I would like. The fairly continuous noise made by the fans and the inevitable power drain proceeding the noise prompted me to search for a way to decrease fan usage and also increase the battery life of my notebook. When it comes to notebooks there are 3 main issues that each manufacturer needs to consider, performance, heat and battery longevity. All three of these are tied together, if the notebook is too hot then performance and battery will suffer. This is because the CPU will throttle itself to cool down and the fans will kick in using more power. The issue is exacerbated even more when sub notebooks come into play, sandwiching all the components close together generating even more heat. Some ways to combat these issues are reducing core clock speed reducing power used by the CPU and therefor also reducing heat. Enable power saving features of the hardware in your notebook shutting down hardware when it is not in use. This is where TLP comes into play, it allows for various power saving options to be configured saving your precious battery. If you would like to try out TLP then continue reading for installation instructions.
Configuration Update 5/27/2016
Changed the following configuration setting to 0. This disables the USB suspend, it causes major havoc with my pointing devices including the touchpad.
To install TLP run the following command:
sudo apt-get install tlp
Once TLP is installed run the following command and take note of the CPU clock speeds. The section you are looking for is "+++ Processor". This information is used to setup speed stepping limits allowing you to specify minimum and maximum CPU speeds.
After you have noted the CPU speeds run the following command to configure TLP for power saving settings.
sudo gedit /etc/default/tlp
The following settings are what I have configured on my notebook. The settings only apply to the notebook when it is running on the battery and not AC power. These settings are to improve battery life at the expense of performance and some of these settings are hardware specific, meaning they will not work on all hardware. You will need to evaluate each of these settings to validate if they make sense for the way you use your notebook. Remember your mileage will vary depending on many factors including hardware support for the power saving features, usage of your notebook i.e. do you play a lot of games, surf the web etc......
# Set the min/max frequency available for the scaling governor.
# Possible values strongly depend on your CPU. For available frequencies see
# tlp-stat output, Section "+++ Processor".
# Set the CPU "turbo boost" feature: 0=disable, 1=allow
# Requires an Intel Core i processor.
# - This may conflict with your distribution's governor settings
# - A value of 1 does *not* activate boosting, it just allows it
# Minimize number of used CPU cores/hyper-threads under light load conditions
# Set CPU performance versus energy savings policy:
# performance, normal, powersave
# Requires kernel module msr and x86_energy_perf_policy from linux-tools
# SATA aggressive link power management (ALPM):
# min_power, medium_power, max_performance
# PCI Express Active State Power Management (PCIe ASPM):
# default, performance, powersave
# WiFi power saving mode: 1=disable, 5=enable; not supported by all adapters.
# Disable wake on LAN: Y/N
# Disable controller too (HDA only): Y/N
# Runtime Power Management for PCI(e) bus devices: on=disable, auto=enable
# Set to 0 to disable, 1 to enable USB autosuspend feature.