A benchmark library.
$ cargo test --release --color=always -q --package bench-rs --test bench --no-fail-fast -- --test-threads=1 --nocapture
Look ./tests/bench.rs

I don't know how to implement the black box.
Please use core::hint::black_box. (unstable)
If you have a better idea, welcome to submit a pull request or open an issue
In order to detect Memory usage, bench-rs modified global_allocator.
This will make it impossible to use other allocators.
If you need to use other allocator:
Change your allocator: (if your allocator is std::alloc::System)
```
use std::alloc::System;
use benchrs::{TrackAllocator, newallocator};
pub static GLOBAL: TrackAllocator
Turn off default features:
[dependencies]
bench-rs = { version = "*", default-features = false }
Import the allocator named GLOBAL:
```
use bench_rs::bench;
use yourlib::GLOBAL;
fn ...
``
If your allocator name is notGLOBAL, please set its alias toGLOBAL`:
use yourlib::OtherAllocator as GLOBAL
Because the bencher-macro will look for GLOBAL.counter() and GLOBAL.peak()
at the same level of the bench function.
I am a rust beginner, please correct me if the code is bad. Thank you
Contributions welcome