Skip to content

PlummersSoftwareLLC/Primes

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Primes | A Software Drag Race

example workflow

Source code to Dave's Garage videos benchmarking the same prime number sieve in a selection of 100+ programming languages, as featured in this project repository.

The first video brought many visitors and contributors here initially, so we're linking to it for convenience:

Software Drag Racing | Dave's Garage

Background

This project was an unplanned spin-off from the video linked to above, in which Dave drag-races three programming languages (C#, C++ and Python) to compare their relative speeds, using the Sieve of Eratosthenes algorithm to identify prime number up to a certain limit.

He posted the source code of his implementations online (in the first incarnation of this repo, in fact), after which many, many people engaged with the idea and started opening PRs to add alternative implementations - whether in approach and/or language - to the collection. As Dave has a YouTube channel to run, he decided to seek help with managing this.

Status

Since the second quarter of 2021, the Primes project has been owned and managed by its current maintainers, Rutger van Bergen and Tudor Marghidanu.

We now have more than 100 distinct programming languages in the collection - and more if meaningful variations are considered -, tooling to execute automated builds and (daily) benchmarks, and an in-browser app to explore the results thereof.

Community contributions

Community contributions, fixes and improvements are accepted. If you want to add your own solution, please read CONTRIBUTING.md.

Running the benchmarks

The vast majority of solutions in this repository can be built and run with one Makefile. This is described in BENCHMARK.md.

Viewing benchmark results

The PrimeView web application can be used to view, filter and sort results generated by a number of benchmark machines provided by Dave and the maintainers.

Note that any feedback, suggestions, PRs concerning PrimeView need to be made on the application's own repository.