Platform-specific best practices

From Green software

Jump to: navigation, search

Most of the described techniques are quite generic. On different hardware platforms, different energy saving techniques are more useful than others. Below are some categories of computer systems and related energy efficient best practices.

Best practices for mobile platforms

Users of smart phones and PDA's expect their product to have a long battery life. The microprocessors and peripherals on these machines are very powerful (and with that power-hungry) to provide the user with the best experience possible. Despite that energy efficiency is wanted in mobile computers for the purpose of a longer battery life, instead of reducing the carbon footprint, the same techniques apply and the effect reduces the carbon footprint of the software.

The following best practices are useful to constrain the device of emptying the battery within a couple of hours:

Very specifically energy can be saved by using wifi instead of a GSM or GPRS network, because sending and receiving network traffic over wifi consumes less energy [1].

Best practices for embedded systems

Embedded systems come in many varities but usually describe small systems controlled by a microcontroller or digital signal processor, designed to perform a specific task. The variety of embedded systems is so big that not many specific characteristics can be identified. The following list of best practices are applicable to computing systems that are low on user interactions and serve a specific purpose. Because of the specific function often performed by embedded systems during the development process software-hardware interaction optimizations are worth to make. An especially interesting type of embedded systems that have a high focus on energy efficiency are battery-powered devices of which batteries are hard or impossible to replace (for example remotely placed sensors or pacemakers). In those systems essential techniques include putting applications to sleep and avoiding polling.

Personal tools