Gavin DouchLarge and healthy leaf with a pinnate pattern

An Environmentalist Case for Complexity Theory

compsci , 1 min read

Computational complexity theory is not the most popular topic of computer science undergrads, but if speed and memory efficiency are not enough to motivate you to learn about it, how about environmentalism?

Today, average FLOPS per watt is increasing exponentially as CPU technology continues to march forwards. Despite this, energy use per CPU is still going up since our demand for computation is increasing.

Reducing Computation Requirements

Through the study of algorithmics and computational complexity theory, the discovery of new algorithms can help to reduce the required amount of computation, reducing the energy required with no penalty to the user (and indeed, many benefits).

Perhaps with a focus on environmentalism, more up and coming academics will put their attention into this area.

Making Better Use of Efficient Algorithms

Without even having to do new research to find more efficient algorithms, we can use known algorithms more often by educating more people in algorithmics, or by making resources that explain topics such as big-O notation more accessible.

Offloading of Heavy Computation

If you have the money to spend, and it would not be a privacy/security concern, some computation can be offloaded to highly energy efficient (and renewable) servers.

This is mostly useful for high-complexity computation that doesn’t require a lot of user data, since the data transfer would otherwise take longer than doing the computation on-device. Luckily, high-complexity computation might have needed to be processed on a server for faster speeds anyway.

Left chevron Right chevron
RSS feed icon Subscribe with RSS RSS Atom feed icon Subscribe with Atom Atom Email icon Subscribe by Email Email