30 kodelinjer i Linux kutter datasenternes strømforbruk med 30%

En liten endring i v6.13 av Linux-kjernen kan redusere energiforbruket til datasentre kraftig.

Nesten all web-trafikk går via datasentre, som ofte i stor grad er bygget på Linux-teknologi. En endring i Linux-kjernen kan gi en betydelig reduksjon i strømforbruket, hevder forskere. 📸: NTB / Shutterstock
Nesten all web-trafikk går via datasentre, som ofte i stor grad er bygget på Linux-teknologi. En endring i Linux-kjernen kan gi en betydelig reduksjon i strømforbruket, hevder forskere. 📸: NTB / Shutterstock Vis mer

Databehandling står for rundt fem prosent av verdens samlede energiforbruk, og det ventes at forbruket kommer til å øke ytterligere, blant annet på grunn av AI.

Nå har forskere ved University of Waterloo i Canada funnet en måte å redusere energiforbruket til enkelte datasentre med opptil 30 prosent, skriver universitetet i en bloggpost, omtalt av blant andre Network World.

Man skulle tro at en såpass stor reduksjon i strømforbruket krever omfattende tiltak, men i dette tilfellet er løsningen enkel:

Ved å gjøre noen små endringer i Linux-kjernen – rundt 30 kodelinjer – har forskerne klart å forbedre hvordan Linux håndterer nettverkstrafikk.

Små endringer

Kodeendringen er basert på en forskningsrapport fra 2023, skrevet av professor Martin Karsten ved universitetet i Waterloo og studenten Peter Cai.

Karsten og Cai fant ut at måten datasentre prosesserte nettverktrafikk på var lite effektiv, og foreslo en enkel forbedring.

– Vi la ikke til noe. Vi bare endret på rekkefølgen av hva som blir gjort når, noe som fører til en mye bedre utnyttelse av datasenterets CPU-cacher, sier Karsten.

Han sammenligner det med å endre på rekkefølgen av oppgavene som blir gjort på samlebåndet i en fabrikk, slik at arbeiderne slipper å måtte løpe frem og tilbake hele tiden.

«Vi la ikke til noe. Vi bare endret på rekkefølgen av hva som blir gjort når.»

Støttes av nyeste Linux-kjerne

Endringen i Linux-kjernen er utviklet av Martin Karsten og Joe Damato som er utvikler hos Fastly.

  • Som nevnt er det snakk om rundt 30 kodelinjer som forbedrer hvordan Linux håndterer nettverkstrafikk.
  • Rent teknisk handler det om en endring i NAPI, en mekanisme i Linux-kjernen som forbedrer ytelsen til nettverksdrivere – og som skal redusere CPU-belastningen ved høy nettverksaktivitet.
  • Et nytt NAPI-konfigurasjonsparameter, irq-suspend-timeout, skal hjelpe til med å balansere CPU-bruk og effektiviteten til pakkehåndteringen.
  • Du kan lese mer om det her og her.

Koden Karsten og Damato har utviklet ble rullet ut i versjon 6.13 av Linux-kjernen som kom 19. januar.

Det er imidlertid ingen automatikk i at strømforbruket til alle Linux-servere som bruker versjon 6.13 nå vil stupe dramatisk. Funksjonaliteten må nemlig skrus på.

– Alle de store selskapene – Amazon, Google, Meta – bruker Linux i en eller annen form. Men de er svært selektive i hvordan de velger å bruke det. Hvis de velger å "skru på" vår metode i sine datasentre, kan det gi energibesparelser på mange gigawatt-timer globalt, sier Karsten.