Supported languages
Metrics
The following aspects of each given implementation are measured: * overall user runtime * peak memory allocation * gzipped size of the solution's source code * sum of total CPU time over all threads * individual CPU utilization It is common to see multiple solutions in the same programming language for the same problem. This highlights that within the constraints of a given language, a solution can be given which is either of high abstraction, is memory efficient, is fast, or can be parallelized better.Benchmark programs
It was a design choice from the start to only include very simple toy problems, each providing a different kind of programming challenge. This provides users of the Benchmark Game the opportunity to scrutinize the various implementations. * binary-trees * chameneos-redux * fannkuch-redux * fasta * k-nucleotide * mandelbrot * meteor-contest * n-body * pidigits * regex-redux * reverse-complement * spectral-norm * thread-ringHistory
The project was known as ''The Great Computer Language Shootout'' until 2007. A port for Windows was maintained separately between 2002 and 2003. The sources have been archived on GitLab. There are also older forks on GitHub. The project is continuously evolving. The list of supported programming languages is updated approximately once per year, following market trends. Users can also submit improved solutions to any of the problems or suggest testing methodology refinement.Caveats
The developers themselves highlight the fact that those doing research should exercise caution when using such microbenchmarks:Impact
The benchmark results have uncovered various compiler issues. Sometimes a given compiler failed to process unusual, but otherwise grammatically valid constructs. At other times, runtime performance was shown to be below expectations, which prompted compiler developers to revise their optimization capabilities. Various research articles have been based on the benchmarks, its results and its methodology.See also
* Benchmark (computing) * Comparison of programming languagesReferences
External links
* {{Official website Programming language comparisons Benchmarks (computing)