↓ Skip to main content

Energy Efficiency of 27 Programming Languages: Which Is the Greenest ?

When your phone battery is running low, you might get a notification to close power-hungry apps. This reminds us that software efficiency matters just as much as hardware when it comes to saving energy.

A research team from Portugal published a study titled Energy Efficiency Across Programming Languages, comparing 27 programming languages across three dimensions: energy consumption, execution time, and memory usage.

Programming Language Energy Comparison 1

Research Methodology: How the Study Was Conducted
#

  • Source: Computer Language Benchmarks Game
  • Benchmarks: 10 classic algorithm problems
  • Process: Each implementation was run 10 times, with Intel RAPL used to measure energy consumption
  • Environment: Desktop running Ubuntu Server 16.10

Languages were categorized by their execution model (compiled, interpreted, VM-based) and programming paradigm (imperative, functional, object-oriented, scripting).

Does Faster Code Always Save Energy? Not Necessarily
#

Many developers assume faster execution = lower energy usage, but results show otherwise.

  • In some cases, Rust was more energy-efficient than C despite similar speeds
  • Pascal was 55% slower than Chapel, yet consumed 10% less energy

📌 Key Insight: Speed does not guarantee energy efficiency.

  • The CPU accounted for ~88% of total energy usage
  • Peak memory (DRAM) consumption had little correlation with total power draw
Programming Language Energy Comparison 2

Energy Efficiency Results: Compiled Languages Outperform Others
#

Across all metrics, compiled languages consistently performed best:

  • Average energy use: Compiled 120J < VM 576J < Interpreted 2365J
  • Execution time: Compiled 5103ms < VM 20623ms < Interpreted 87614ms
  • Memory usage: Compiled 125MB < VM 285MB < Interpreted 426MB
Programming Language Energy Comparison 3

Highlights:

  • The top 4 most energy-efficient languages were almost all compiled (Java was the only VM-based exception).
  • Interpreted languages like Python, Perl, Ruby, Lua, and TypeScript were the least efficient.
  • Exceptions existed: for regex processing, interpreted languages like TypeScript, PHP, and JavaScript consumed less energy than compiled ones.
Programming Language Energy Comparison 4

Balanced Performance: Best Programming Languages Overall
#

The study compared languages across energy, execution time, and memory usage to find the most balanced options:

  • Best for Energy + Speed → C
  • Best for Energy + Memory → C or Pascal
  • Best Overall Balance → C, Pascal, Go

Programming Language Energy Comparison 5

Programming Language Energy Comparison 6

Conclusion: Choosing Programming Languages with Energy in Mind
#

Every programming language comes with trade-offs:

  • Scripting languages (Python, Ruby, etc.) → High productivity, slower runtime, higher energy use
  • Compiled languages (C, Rust, C++, etc.) → Faster execution, lower energy consumption, steeper learning curve

📌 Key takeaway: The “best” language depends on your project’s priorities—developer productivity, runtime speed, memory efficiency, or energy sustainability.

👉 Would you choose a more energy-efficient programming language if it meant longer development time?

Related