Use less energy to go faster
Anytime I hear that some computing system is slow, that stirs my curiosity.’ Whether it is about massive graph processing, online shopping, or calibration software for radio astronomy, adjunct professor of Performance Engineering Ana-Lucia Varbanescu wants to understand why computing systems are slow or use too much energy, and to come up with solutions to make them more efficient.
When and why did you decide to study computer science and engineering?
‘My father is a retired professor who had access to computers at his university. I was there often, playing with the machines as I was fascinated by their applications and (mostly) games. When I was in high school, I took part in an intensive informatics class, an experiment created for top students who could use the extra challenge. The class covered just about everything, going from using spreadsheets to programming in BASIC. I think back very fondly of that class. Not only because it provided me with the opportunity to delve into more complex problems, but also because it attracted a specific mix of people I immediately felt comfortable with. To me, informatics was the perfect match between taking a mathematical approach to a problem and actually solving it.’
Was it always your dream to become a scientist?
‘Not from the beginning, no. After I obtained my master’s degree, I stayed on at university as a lecturer, teaching seminars and courses. But soon I realized: “I am teaching, but not growing myself.” I should be involved in the research around the topics I am teaching, if I want to become a better teacher. And that is when I decided to pursue a PhD in Delft.
What I love about being an academic, is that I get paid to think of difficult (sometimes purely theoretical) problems, and that I get to work with smart people with creative ideas. There is never a lack of curiosity, so I am learning something new every day.’
How did you end up in performance engineering?
‘My PhD project started out as a collaboration with Philips, where I worked on software for a tile-based embedded processor they had designed for their high-end multimedia systems. Halfway through my PhD project, though, Philips decided not to pursue this R&D platform further. At that time, heterogenous computing came up, where different processing cores (and later GPU’s and CPU’s) are used simultaneously. The challenge was to understand how to reason about performance in such parallel processing systems. That fascinated me. In performance engineering, the aim is to understand the current performance of any computing system by measuring, estimating, predicting and modelling it, and then come up with recommendations to make it better. Essentially, that comes down to either use better hardware, or change the algorithm or its implementation, for example by designing better libraries.’
What topics have you been working on over the years?
‘I have explored a large spectrum of the digital continuum. At the beginning of my career, I was focused on embedded systems. During my PhD, I did an internship at IBM T.J Watson, where I worked on radio astronomy on the Cell/B.E. heterogeneous system, using simple kernels to process vast amounts of data acquired by antennas. Later on, I ended up in High Performance Computing and supercomputing, as the GPU’s became popular for large scientific applications. Afterwards, I did a lot of work on optimizing operations on graphs in fields like financial analysis, social networks, and genome sequencing for heterogeneous systems.
When I moved from the University of Amsterdam to the University of Twente, I came full circle, as I am working now in a group with a strong embedded systems research line. Within this group, we can truly explore the full digital continuum, from user-devices to high-performance supercomputers.’
‘When I moved from the University of Amsterdam to the University of Twente, I came full circle, as I am working now in a group with a strong embedded systems research line. Within this group, we can truly explore the full digital continuum, from user-devices to high-performance supercomputers’.
What is your current research about?
‘One of the research lines I am currently pursuing is about zero-waste computing. We must learn to utilize all of our computing resources as efficiently as possible. At the moment, hardware, software and applications are all built in silos, despite running together – and that leads to wasting time and energy. For example, when a GPU is not used, it is still there, consuming energy. When a CPU and a GPU run in parallel, there is less waste, but things might run slower. There is no systematic method, yet, on how to define, measure, and reduce waste. But I am proposing to address zero-waste by design: co-designing the hardware and the software in order to optimize the performance as a whole.
A second line of research is about ICT sustainability. ICT is one of the big consumers of energy. We have to inform and empower users to make conscious choices. As a group, we are also critical on our own energy consumption: we started recommending our students to report how much energy was consumed during thesis development. Therefore, we are working on energy labels for computing systems and services, which would inform users and developers about how much energy they consume. We want to enable people to compare different systems and applications with each other, and make informed decisions.’
How do you asses the energy consumption of a computing system?
‘We usually start with a use case. Take video conferencing applications. First we establish a benchmark. Are we calling? Are we using images or video and if so, with which resolution? Is the chat on? Are there more people in the call? Then we run an experiment and we measure properties like latencies and energy consumption for a certain length of conversation. And finally, we model the energy costs of the different applications you could use for such a video conference in order to compare them.’
You have been affiliated with both technical and general universities. How do they compare?
‘Though their programs are similar, the education and the learning goals are different. Technical universities are more focused on applications; in the end, they want to train good engineers. At general universities, it is more about thinking and modelling. The general attitude there is “Think before you act”. Both types of universities also attract different types of students. At the technical universities, in general, the student population is more proactive, since we teach them to implement things. When our attitude in teaching is to analyze first, the students also tend to be more contemplative.
Personally, I have found a healthy balance between the two, also as a result of my studies back in Romania, that combined computer science and engineering.’
You are one of the chairs of the Equity, Diversion and Inclusion working group of IPN. What is the added value of that initiative?
‘The EDI working group has already played an important role in raising awareness that in computer science, there is a problem with equity, diversion and inclusion. Over the years, the working group has developed various useful initiatives. The annual ICT.OPEN track is wonderful and a source of inspiration. And before I joined, there was an important report on why women were leaving computer science, and what could be done to prevent that.
In the Netherlands, the general perception is that computer science does not lead one to a social job, nor to a job that allows for any creativity. In Romania that perception is different. Perhaps that also has to do with language: in Romania, we say we are in front of a computer, not behind it, hiding for the world.
But I do believe informatics is accessible and interesting for anyone. There are many problems we still need to solve to make our world of computing more efficient, varying from very creative to very analytical challenges. We must get away from the stereotype that informatics is for geeks, and get more diverse talented people with different perspectives on board. That is the only way we can come up with good, sustainable solutions.’