Undervolting
- Contact:
- Jan-Andrea Bard
Context
In present-day times of climate change all industry sectors should bring down their green house gas emissions (carbon footprint). However, the IT-sector’s emissions increase unchecked. The research area for this seminar thesis is the field of “green” software engineering. In this research area one aims at finding ways to lower the energy consumption of a piece of source code when run as a program. Using specialized registers (so called model specific registers) that deliver the cumulated energy consumption of the CPU one can track back energy consumption to different parts of a program.
Motivation
Undervolting refers to a technique where one lowers the frequency and the voltage inside the CPU. By a physical law the energy consumption is proportional to the square of the CPU-voltage. So, undervolting is a means to reduce the energy consumption of the CPU. A drawback is that computations take longer since the frequency must also get lowered accordingly. We want to experimentally assess the potential for saving energy by undervolting.
Goal
- The student will read one or more research papers about this topic.
- We aim at profiling benchmark functions/projects. The student will write Shell and MATLAB scripts for automating the measurements.
- The energy consumption with and without undervolting should be measured and the potential energy-saving should be quantified.
Requirements
- Linux: user skills
- MATLAB: basic to advanced skills
Pointers
- Dynamic voltage and frequency scaling (Wikipedia): https://en.wikipedia.org/wiki/Dynamic_frequency_scaling
- CMOS (Complementary metal–oxide–semiconductor) (Wikipedia): https://en.wikipedia.org/wiki/CMOS
- CPU-Power Consumption Experiments and Results Analysis: http://async.org.uk/tech-reports/NCL-EEE-MICRO-TR-2015-197.pdf