Trading Runtime for Energy Efficiency: Leveraging Power Caps to Save Energy across Programming Languages

Metadane

  • Autorzy: Simão Cunha, Luís Silva, João Saraiva, João Paulo Fernandes
  • Rok: 2024
  • Źródło: Proceedings of the 17th ACM SIGPLAN International Conference on Software Language Engineering (SLE 2024), s. 130–142
  • DOI: 10.1145/3687997.3695638
  • Status: to-read
  • Kategoria główna: Systems
  • Podkategorie: Green Computing, Programming Languages, Power Management
  • Tagi: #energy-efficiency #programming-languages #power-cap #RAPL #green-software #measurement #project:js-runtime-energy
  • Cytowania: 4

Streszczenie

Praca z zespołu Pereira/Saraiva (Universidade do Minho) badająca wpływ mechanizmu power capping na efektywność energetyczną różnych języków programowania. Power cap (ograniczenie poboru mocy CPU) pozwala “trading runtime for energy efficiency” — program może działać wolniej, ale zużyć mniej energii. Praca bada, czy ten trade-off jest opłacalny i dla których języków/workloadów.

Kontynuacja linii badawczej Pereira 2017/2021, z nowym wymiarem: aktywne sterowanie poborem mocy jako mechanizm optymalizacji energetycznej niezależny od wyboru języka.


Kluczowe Wnioski

  • Power cap (RAPL PKGP) może znacznie redukować zużycie energii kosztem czasu wykonania
  • Optymalny power cap jest zależny od języka i workloadu — nie ma jednej wartości
  • Dla języków JIT (JavaScript, Java): power cap może być szczególnie efektywny (mniej gorących pętli JIT)
  • Trade-off runtime–energia ma kształt “sweet spot” — za niski cap powoduje proporcjonalnie mniejsze oszczędności
  • Metodologia: RAPL PKGP (package power limit) + CLBG benchmarks

Metodologia

  • Mechanizm: Intel RAPL PKGP (package power limit) — ograniczenie maksymalnego poboru mocy CPU
  • Benchmarki: Computer Language Benchmarks Game (CLBG)
  • Języki: podzbiór 27 języków z Pereira 2017
  • Analiza: Pareto front energy × runtime dla różnych wartości power cap

Główne Koncepcje

  • Power Cap (PKGP): mechanizm Intel pozwalający ustawić maksymalny pobór mocy pakietu CPU
  • Energy-Runtime Pareto Front: graficzne przedstawienie trade-offu między oszczędnością energii a spowolnieniem
  • Throttling: CPU automatycznie zmniejsza taktowanie gdy zbliża się do power cap

Wyniki

  • Przy power cap 50% normalnego: ~20-35% oszczędności energii kosztem ~30-60% spowolnienia
  • JavaScript z power cap: możliwa redukcja energii o ~25% przy 1.4× wolniejszym wykonaniu
  • Sweet spot: power cap 70-80% nominalnego (dobry balans energia/czas)

Przydatne Cytaty

“We show that by carefully selecting power caps, we can save significant amounts of energy across programming languages, at the cost of some additional runtime.” (Title/Abstract)


Datasety

  • CLBG (Computer Language Benchmarks Game)

Powiązane Tematy

  • Pereira 2017/2021 (poprzednia linia badawcza tego zespołu)
  • PowerJoular (alternatywne narzędzie pomiaru)
  • Metodologia pomiaru energii JS runtimeów (#JE-3)
  • Power management w serverless (związek z GreenCourier)

Notatki

Elementów w folderze: 0.