This project aims to explore the performance, numerical reproducibility, and energy consumption of various programming languages, with a particular focus on High Performance Computing (HPC).
The study covers a range of languages including C, C++, Erlang, Fortran, Python, Java, Ruby and Rust.
- The Computer Language Benchmarks Game (CLBG): Wikipedia
These resources provide a foundation for understanding how different languages perform in various standardized tasks.
Reproducibility will be assessed by comparing the output of the same algorithm implemented in different languages.
For compiled languages, comparisons will include different compilation optimizations (e.g., -O1, O2, -O3). The study will also investigate the impact of advanced optimizations, such as out-of-order execution, on reproducibility.