Prototyping of a System for Online Energy Efficiency Ranking of Student Programs
Abstract
Programming competitions is found motivating by many students.Combining this with an increased need for green computing is the motivation of this project.The idea is to create an automated assessment system that not only measures time, but energy as well.The main goal of the project is to create a working prototype with examples demonstrating its use.To improve the speed of prototyping I choose Python as implementation language.The energy readings were done using MSR registers available on an Intel Sandy Bridge (Core i7) processor with four physical cores and hyper-threading used in the project.To improve the readings multiple runs are taken to remove the possible disturbances from other processes and remove cold start cache effects.The resulting prototype has been used to demonstrate relations between implementation parameters and energy efficiency for two different examples.The examples are documented as well as wider applicability, limitations and further work.