Researchers at the Cheriton School of Computer Science have developed a small modification to the Linux kernel that could reduce energy consumption in data centres by as much as 30 per cent. The update has the potential to cut the environmental impact of data centres significantly, as computing accounts for as much as 5 per cent of the world’s daily energy use. Nearly all web traffic is routed through data centres, the majority of which use the open-source operating system Linux.
“Information arrives at data centres in ‘packets,’ and then the data centre’s frontend, kind of like a receptionist at a front desk, figures out where to send those packets,” says Cheriton School of Computer Science Professor Martin Karsten.
Professor Karsten, along with his former master’s student Peter Cai, identified inefficiencies in how network traffic is processed for communications-heavy server applications. By making a small change to the Linux kernel’s networking stack, they achieved a significant improvement in both performance and energy efficiency.
Their research, presented at ACM SIGMETRICS 2024, introduces a solution that rearranges operations within the Linux networking stack, improving the efficiency and performance of traditional kernel-based networking. According to their research, this modification increases throughput in some situations by up to 45 per cent without compromising tail latency.
“We didn’t add anything,” Professor Karsten said. “We just rearranged what is done when, which leads to a much better usage of the data centre’s CPU caches. It’s kind of like rearranging the pipeline at a manufacturing plant, so that you don’t have people running around all the time.”
It’s one thing to propose an improvement, but quite another to see it adopted by industry. To this end, Professor Karsten teamed up with Joe Damato, distinguished engineer at Fastly, to develop a small section of code — a non-intrusive kernel change of just 30 lines — that would improve Linux’s network traffic processing. When adopted, the new method could reduce the energy consumption of important data centre operations by as much as 30 per cent, Professor Karsten said.
They tested their solution’s effectiveness and submitted it to Linux for consideration. The code has now been published as part of Linux’s newest kernel, release version 6.13.
Central to their innovation is a feature called IRQ or interrupt request suspension, which balances CPU power usage with efficient data processing. By reducing unnecessary CPU interruptions during high-traffic periods, IRQ suspension enhances network performance while maintaining low latency during low-traffic conditions.
“All these big companies — Amazon, Google, Meta — use Linux in some capacity, but they’re very picky about how they decide to use it,” Professor Karsten said. “If they choose to ‘switch on’ our method in their data centres, it could save gigawatt-hours of energy worldwide. Almost every single service request that happens on the Internet could be positively affected by this.”
Professor Karsten points to this research, as well as the construction of a cutting-edge green computer server room in Waterloo’s upcoming Mathematics 4 building, as examples of the kind of sustainability research that computer scientists need to prioritize. “We all have a part to play in building a greener future,” he said.
The Linux kernel code addition developed by Professor Karsten and Joe Damato was based on a research paper titled “Kernel vs. User-Level Networking: Don’t Throw Out the Stack with the Interrupts,” written by Cheriton master’s graduate Peter Cai and Professor Karsten and published in the Proceedings of the ACM on Measurement and Analysis of Computing Systems.