summaryrefslogtreecommitdiff
path: root/crates/hashx/bench
Commit message (Collapse)AuthorAgeFilesLines
* Run cargo update in {equix,hashx}/benchNick Mathewson2024-04-021-208/+162
|
* Update other cargo.lock files.Nick Mathewson2023-10-021-1/+1
|
* Update bench lockfiles for new fixed-capacity-vecNick Mathewson2023-09-201-2/+2
|
* Switch to FixedCapacityVec 0.1.0 from crates.ioIan Jackson2023-09-061-0/+7
|
* Upgrade bench/ lockfiles too.Nick Mathewson2023-09-051-80/+91
|
* hashx_cachegrind: Fix black_box locationIan Jackson2023-08-231-2/+2
|
* hashx_cachegrind: Make mk_c_equix not shuffle the HashXIan Jackson2023-08-231-8/+8
|
* hashx_cachegrind: Make mk_rust not shuffle the HashXBuilderIan Jackson2023-08-231-10/+9
|
* hashx_cachegrind: Introduce C_HASHX_OK aliasIan Jackson2023-08-231-2/+5
|
* hashx_cachegrind: Introduce bench_loop helper macroIan Jackson2023-08-231-24/+29
| | | | | The macro generates similar but not identical code. There are new bindings.
* hashx_cachegrind: Introduce u32be helper functionIan Jackson2023-08-231-4/+11
| | | | This is going to be more obviously useful in a moment.
* hashx_cachegrind: Introduce mk_c_equix helper macroIan Jackson2023-08-231-4/+9
| | | | The macro generates precisely the existing code.
* hashx_cachegrind: Introduce mk_rust helper macroIan Jackson2023-08-231-8/+14
| | | | The macro generates precisely the existing code.
* hashx/bench: Add cachegrind microbenchmarksMicah Elizabeth Scott2023-08-184-0/+102
| | | | | | | This uses the 'iai' crate and valgrind to measure fine grained cache behavior during program generation and hash computation. Signed-off-by: Micah Elizabeth Scott <[email protected]>
* hashx/bench: Shared generate wrapper for u64-hash and full-hashMicah Elizabeth Scott2023-08-011-11/+14
| | | | | | Code cleanup from review feedback Signed-off-by: Micah Elizabeth Scott <[email protected]>
* hashx/bench, equix/bench: Enable debug symbolsMicah Elizabeth Scott2023-08-011-0/+5
| | | | | | | | Propagates this setting from the outer Cargo.toml to the new benchmark crates, since they no longer get the setting by being included in the main workspace. Signed-off-by: Micah Elizabeth Scott <[email protected]>
* hashx/bench, equix/bench: check in matching Cargo.lock filesMicah Elizabeth Scott2023-08-012-1/+1099
| | | | | | | | It might be useful to keep these locked down for benchmark reproducibility. Currently the hashx and equix crates are fully separate. Signed-off-by: Micah Elizabeth Scott <[email protected]>
* equix, hashx: Benchmark against C implementationMicah Elizabeth Scott2023-08-013-0/+198
This is a small batch of improvements for the equix and hashx benchmarks. The headline feature is that we are now including the C implementations (slightly modified from tevador's, hosted as part of c-tor) and using them in apples-to-apples comparisons. Minor features: - Benchmarks moved to new nested crates, preventing their dependencies from spilling into the main workspace build. - Tests are now grouped - We also test the performance of memory reuse where possible - Code cleanup for per-runtime options These benchmark builds will now automatically pull in the c-tor git repo and build portions of it with a Rust wrapper. This uses the 'cc' and 'bindgen' crates, so it requires a C compiler and libclang on the host system. Signed-off-by: Micah Elizabeth Scott <[email protected]>