Tips & Tricks

line

Graphics & Displays

LCD backlight

The LCD backlight (the lamp in the LCD panel) is, for most users, by far the biggest power consumer in their laptops. With the new LED-based backlights appearing in high-end laptops, this is improving over time. But even on those laptops, it's still a significant power drain. By reducing the intensity of the backlight, you can save a significant amount of power (5 Watts is not uncommon).

Reducing backlight brightness

All laptops have magic keys, designed to reduce or increase the brightness of the LCD panel. Unfortunately, these often use model-specific drivers that are only available for other operating systems, and while Linux supports quite a few laptop models, it doesn't support all of them.


As of version 7.3 of X.org, a program called xbacklight is included. It allows users to use software to directly control the backlight of machines with integrated Intel graphics, and others. In addition, for quite a few laptops, the kernel exposes a sysfs interface to control brightness.


Interestingly, in our measurements we have found that, at least on newer laptops, the kernel sysfs method (which tends to use the BIOS on the machine) seems to not control the actual backlight, but rather change the colors of the pixels on the screen to appear darker. Using darker pixels obviously doesn't save as much power as reducing the intensity of the backlight.


To set your backlight to 50% brightness, you can use the xbacklight program like this:

xbacklight -set 50

Various Linux desktops also have brightness control applications that can replace the xbacklight program.

Screensavers

Fancy screensavers can be very pretty, however from a power savings perspective using such a visual screensaver is not a good idea at all.


First of all, the screensaver will spend quite a bit of CPU time (and in case of 3D screensavers, GPU time) and that consumes power (moving parts will wake the cpu up all the time to do the heavy graphics work). With the fancier screensavers, it's very likely that your machine will consume more power displaying the screensaver than it will during normal operation.


A much more power-friendly approach is to just turn the screen off entirely (be it a laptop screen or an external screen, as is used by desktop or server systems).


One common technology to enable X to turn off the screen is called "DPMS". You can turn on DPMS with the following command:

xset +dpms
You can also control what timeouts are used to turn off the display:
xset dpms 0 0 120
The command above will turn off the display after 120 seconds of inactivity.

Framebuffer compression

As described in the graphics project page, modern Intel integrated graphics controllers support a feature called "Framebuffer compression". The picture on the screen is compressed in memory, so that updating the screen (during refresh) consumes less memory bandwidth (and thus energy). In measurements with a solid background, we've measured up to 0.6 Watts of power saving using this feature.


The framebuffer compression feature is added to very recent versions of the Intel graphics driver. If you're using an older distribution, you may want to consider updating to such a newer version of the driver.


While the data compression works best on solid color backgrounds, many people prefer to use a picture as a background. Intel engineers have written a program to help optimize such background images, to enable the compression feature to work better.


You can download this program from the downloads page.

Disabling TV, VGA or DVI out

On laptops, the graphics hardware can drive multiple outputs in parallel. Besides the built-in LCD display, you can also use an external display, and sometimes a TV. Every extra display consumes typically around 1 Watts of power in the analog driving logic. Now, if your laptop doesn't have an external display connected, these extra outputs should be powered down. Graphics hardware can detect if a device is actually connected to the output, however unfortunately these detection mechanisms are neither perfect nor foolproof, so it's worth checking to see if the graphics hardware and driver have detected the right configuration.


The xrandr command can be used to see which outputs are currently active (and at which resolution)

# xrandr
Screen 0: minimum 320 x 200, current 1400 x 1050, maximum 1400 x 1400
VGA disconnected (normal left inverted right)
LVDS connected 1400x1050+0+0 (normal left inverted right) 304mm x 228mm
   1400x1050      60.0*+
   1360x768       59.8     60.0  
   1280x800       60.0  
   1152x864       60.0  
   1280x768       60.0  
   1280x720       60.0  
   1024x768       60.0  
   800x600        60.3  
   640x480        59.9  
TMDS connected 720x480+0+0 (normal left inverted right)
   1360x768       59.8     60.0  
   1280x800       60.0  
   1152x864       60.0  
   1280x768       60.0  
   1280x720       60.0  
   1024x768       60.0  
   800x600        60.3  
   720x480        66.3*
   640x480        59.9  
In the example above, there are two outputs detected as connected (LVDS, which is your LCD panel, and TMDS, which is your TV output). It also shows (with the *) that both outputs are actually activated, the LCD panel is operating at a 1400x1050 resolution, and the TV output is operating at a 720x480 resolution.


The xrandr program can also control which outputs are active, so in case the TV output (TMDS) is not actually connected, the following command can be used to disable the TV output:

xrandr --output TMDS --off


 About | ISN | Intel is a trademark of Intel Corporation in the U.S. and other countries. | * Other names / brands may be claimed as the property of others