readme: add description about benchmarks (#6425)

This commit is contained in:
Motoyuki Kimura
2024-03-23 18:11:41 +03:30
committed by GitHub
parent 1846483f19
commit 4c453e9790
2 changed files with 24 additions and 2 deletions
+1 -2
View File
@@ -210,11 +210,10 @@ jobs:
run: cargo hack test --each-feature
working-directory: tests-build
# Check benchmarks. Run of benchmarks is done by bench.yml workflow.
# Check benchmarks.
- name: Check benches
run: cargo check --benches
working-directory: benches
# bench.yml workflow runs benchmarks only on linux.
if: startsWith(matrix.os, 'ubuntu')
test-parking_lot:
+23
View File
@@ -347,6 +347,29 @@ example would explicitly use `Timeout::new`. For example:
/// # }
```
### Benchmarks
You can run benchmarks locally for the changes you've made to the tokio codebase.
Tokio currently uses [Criterion](https://github.com/bheisler/criterion.rs) as its benchmarking tool. To run a benchmark
against the changes you have made, for example, you can run;
```bash
cd benches
# Run all benchmarks.
cargo bench
# Run all tests in the `benches/fs.rs` file
cargo bench --bench fs
# Run the `async_read_buf` benchmark in `benches/fs.rs` specifically.
cargo bench async_read_buf
# After running benches, you can check the statistics under `tokio/target/criterion/`
```
You can also refer to Criterion docs for additional options and details.
### Commits
It is a recommended best practice to keep your changes as logically grouped as