MDH-Research Makes Processors More Efficient
Jun 07, 2013 | Research/Cooperation
All around us there are computers that we do not think about. These so called embedded systems can sit in everything from microwave ovens to alarm clocks. For example, a car can have up to a hundred of such embedded systems that perform as much as 800 different tasks. Of course it is costly to include that many computers, so if the same processor could perform more tasks, that could save a lot of money. This has been the focus of Nima Moghaddami Khalilzad's research, and on June 13th he will defend his licentiate thesis.
In order for a processor to perform multiple parallel tasks, you have to assign a specific portion of the processor's time to each task. Nima Moghaddami Khalilzad explains:
- Traditionally, it has been decided in advance how much of the CPU time a task is allowed to use, for example, 40 per cent. But in practice, the task does not require that much of the processor at all times. In fact, 40 percent is a rather pessimistic estimate because it is the maximum requirement, while the task may only use ten percent a lot of the time. This means that you usually are wasting a lot of CPU time, because the processor can not be fully utilized.
Nima has instead developed an adaptive way to distribute processor time. Instead of using a set percentage, the processor itself keeps track of how much time each task needs at the moment, and this in real-time.
- With an adaptive approach, we get a realistic allocation of time. This means that we can quite easily assign more tasks to each processor, and suddenly it becomes possible to use time otherwise unused.
When the same processor can handle more tasks at the same time it is unnecessary to use as many processors. This in turn means a considerable cost saving.
The next step is to go from the system with a processor to multiple processor systems.
- When I'm done with my public defence I will go to McGill University in Montreal. They are good at adaptive systems, and we at MDH are good at embedded systems, so it will be a good combination. Often you start with one processor, and my research here at MDH is a step before trying to solve more complex problems with multiple processors.