Crates.io | crate-race |
lib.rs | crate-race |
version | 1.1.2 |
source | src |
created_at | 2018-12-22 16:09:55.194846 |
updated_at | 2019-01-03 01:05:26.982665 |
description | Comparing Rust crate function speeds |
homepage | |
repository | https://github.com/veniamin-ilmer/crate-race |
max_upload_size | |
id | 103298 |
size | 602,149 |
Wondering which crate can do some functionality faster?
Crate race feeds the same kind of inputs into crate functions, and benchmarks the results.
Check out a list of functions here.
Each benchmark comes with the actual code used to run each of the functions.
You can look through the code to judge which crate to use.
Just because one crate has a faster speed for a specific function, does not automatically make that crate "better".
Other crates may specialize in other forms of functionality. Other crates may also be more user friendly to use.
Try not to generalize after just looking at one benchmark.
All of the benchmarks here are automatically generated.
Every day Crate Race checks for new version of Rust or Crates.
If an update is detected, Crate Race will rerun the benchmarks test and update github.
Crate Race will not benchmark every single crate's unique functions.
It will only benchmark functions that match other crates' functions.
If a crate has an extra function that other crates do not have, Crate Race will not benchmark it.
Although Crate Race checks that the function returned a correct value expected for that function, it will not test the functions' edge cases being handled correctly.
We are benchmarking, not QAing.
Benchmark code is meant to be as short and quick to write as possible.
The input and outputs are the same all the time.
If they ever change, the code is meant to panic. The panic will be caught by crate-race.
As a result, it is completely fine to do unwrap
() everywhere without any further checking.
Have some code you want to add to the benchmark? Feel free to make pull request. Follow the contributing guidelines.
Don't have code, but have a suggestion of a crate or functionality you want tested?
Write about it here: https://www.reddit.com/r/crate_race/ - I'll be judging what to add in based on how many votes it gets.