Coder Social home page Coder Social logo

leon0399 / benchmarks Goto Github PK

View Code? Open in Web Editor NEW
4.0 3.0 1.0 800 KB

World's complete programming language benchmark

Home Page: https://leon0399.ru/experiments/benchmarks/

License: MIT License

JavaScript 10.43% PHP 11.79% Python 18.15% Java 13.30% Makefile 2.20% Dockerfile 3.80% C++ 12.14% Ruby 3.89% Rust 3.63% Go 9.41% Shell 0.12% Kotlin 4.19% C 0.50% Fortran 0.74% Perl 0.78% Swift 0.46% C# 0.82% Lua 3.09% Zig 0.56%
benchmark programming-language benchmark-framework benchmarking benchmarks linpack scoreboards hacktoberfest

benchmarks's Introduction

Complete Benchmark

World's complete programming language benchmark.

Results

Important

This project is not intended to be the sole source for your decisions. Each programming language has its own unique advantages and disadvantages, and performance is only one aspect. Some languages may be more suitable for different projects due to their ecosystem, established best practices, and other factors. Always consider the specific needs and context of your project before making a decision.

See RESULTS.md

Running benchmark

Docker

Run full suite

docker-compose run benchmark python3 ./benchmark.py run

Run specific languages only

docker-compose run benchmark python3 ./benchmark.py run --lang rust go php

Run specific scripts only

docker-compose run benchmark python3 ./benchmark.py run --script primes/Simple linpack/Linpack recursion/Tak

Tip

You can combine options above

Running manually

python3 ./benchmark.py

benchmarks's People

Contributors

dependabot[bot] avatar leon0399 avatar sweep-ai[bot] avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Forkers

danigunawan

benchmarks's Issues

Sweep: write `mandelbrot/Simple` in Python

Details

Implement mandelbrot/Simple benchmark in Python, and put it into python/mandelbrot/Simple.py.

You MUST implement it exactly in the same way as in other languages examples: php/mandelbrot/Simple.php, javascript/mandelbrot/Simple.js, ruby/mandelbrot/Simple.rb. Add script to python/benchmark.yaml

Here are other examples of out Python code: python/primes/Atkin.py. Use it to se how collect and report execution time.

Checklist
  • Create python/mandelbrot/Simple.py5bbec68 Edit
  • Running GitHub Actions for python/mandelbrot/Simple.pyEdit
  • Modify python/benchmark.yml3607879 Edit
  • Running GitHub Actions for python/benchmark.ymlEdit

Loop in Collatz benchmark using gcc

Current behavior

Program goes to infinite loop (on 113382 iteration), which does not happen, when program compiled using clang

Expected behavior

Not to loop 🤷

Steps to reproduce

c-plus-plus $ make all
c-plus-plus $ ./collatz/MaxSequence-gcc

Sweep: Implement Linpack in Rust

Details

Implement Linpack in Rust, and place it in rust/linpack/Linpack.rs. Implement all the required functions
See go/linpack/Linpack.go, javascript/linpack/Linpack.js, php/linpack/Linpack.php, go/linpack/Linpack.go for algorithm. You MUST implement it algorithmically exactly in the same way as in examples, but with Rust.
See rust/primes/Atkin.rs, rust/mandelbrot/Simple.rs for other Rust samples.
Make sure to update rust/benchmark.yml accordingly

Checklist
  • Create rust/linpack/Linpack.rs0ffe8a8 Edit
  • Running GitHub Actions for rust/linpack/Linpack.rsEdit
  • Modify rust/benchmark.ymldfb80a3 Edit
  • Running GitHub Actions for rust/benchmark.ymlEdit

Sweep: implement primes/Simple in Python

Details

Implement primes/Simple benchmark in Python, and put it into python/primes/Simple.py.

You MUST implement it exactly in the same way as in other languages examples: php/primes/Simple.php, javascript/primes/Simple.js, ruby/primes/Simple.rb. Add script to python/benchmark.yaml

Here are other examples of out Python code: python/primes/Atkin.py. Use it to se how collect and report execution time.

Checklist
  • Create python/primes/Simple.pyeb5f257 Edit
  • Running GitHub Actions for python/primes/Simple.pyEdit
  • Modify python/benchmark.ymlb3eed5f Edit
  • Running GitHub Actions for python/benchmark.ymlEdit

Sweep: Add primes/Simple benchmark in Go

Details

Details

Implement primes/Simple benchmark in Go, and put it into go/primes/Simple.go.

You MUST implement it exactly in the same way as in other language examples, without any optimizations: php/primes/Simple.php, c-plus-plus/mandelbrot/Simple.cpp. Add script to go/benchmark.yaml. Exact logical implementation is required to correctly compare multiple languages against each other.

Here are other examples of our Go code: go/treap/Naive.go. Use it to see how collect and report execution time.

Sweep: Add `primes/Simple` benchmark in Go

Details

Implement primes/Simple benchmark in Go, and put it into go/primes/Simple.go.

You MUST implement it exactly in the same way as in other language examples, without any optimizations: php/primes/Simple.php, c-plus-plus/mandelbrot/Simple.cpp. Add script to go/benchmark.yaml. Exact logical implementation is required to correctly compare multiple languages against each other.

Here are other examples of our Go code: go/treap/Naive.go. Use it to se how collect and report execution time.

Sweep: Write Collatz Conjecture bench in Python

Details

Implement collatz/MaxSequence benchmark in Python, and put it into python/collatz/MaxSequence.py.

You MUST implement it exactly in the same way as in other languages examples: php/collatz/MaxSequence.php, javascript/collatz/MaxSequence.js, ruby/collatz/MaxSequence.rb. Add script to python/benchmark.yaml

Here are other examples of out Python code: python/primes/Atkin.py. Use it to se how collect and report execution time.

Checklist
  • Create python/collatz/MaxSequence.py7340e6c Edit
  • Running GitHub Actions for python/collatz/MaxSequence.pyEdit
  • Modify python/benchmark.ymla862be2 Edit
  • Running GitHub Actions for python/benchmark.ymlEdit

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.