Commit c6e67fc
committed
Use a standard HashMap instead of one based on SHA1
It's faster throughout the board.
```
❯ cargo bench -p gix-object@0.44.0 --bench edit-tree
Compiling gix-object v0.44.0 (/Users/byron/dev/github.com/Byron/gitoxide/gix-object)
Compiling gix-pack v0.53.0 (/Users/byron/dev/github.com/Byron/gitoxide/gix-pack)
Compiling gix-odb v0.63.0 (/Users/byron/dev/github.com/Byron/gitoxide/gix-odb)
Finished `bench` profile [optimized] target(s) in 5.97s
Running benches/edit_tree.rs (target/release/deps/edit_tree-6af6651a1c453a05)
Gnuplot not found, using plotters backend
editor/small tree (empty -> full -> empty)
time: [2.5972 µs 2.6019 µs 2.6075 µs]
thrpt: [3.8351 Melem/s 3.8434 Melem/s 3.8503 Melem/s]
change:
time: [-32.618% -32.355% -32.038%] (p = 0.00 < 0.05)
thrpt: [+47.142% +47.831% +48.409%]
Performance has improved.
Found 14 outliers among 100 measurements (14.00%)
13 (13.00%) high mild
1 (1.00%) high severe
editor/deeply nested tree (empty -> full -> empty)
time: [8.2019 µs 8.2079 µs 8.2145 µs]
thrpt: [5.5998 Melem/s 5.6043 Melem/s 5.6084 Melem/s]
change:
time: [-33.517% -33.377% -33.246%] (p = 0.00 < 0.05)
thrpt: [+49.804% +50.099% +50.415%]
Performance has improved.
Found 13 outliers among 100 measurements (13.00%)
8 (8.00%) high mild
5 (5.00%) high severe
cursor/small tree (empty -> full -> empty)
time: [2.6911 µs 2.6935 µs 2.6961 µs]
thrpt: [3.7090 Melem/s 3.7127 Melem/s 3.7160 Melem/s]
change:
time: [-33.881% -33.546% -33.225%] (p = 0.00 < 0.05)
thrpt: [+49.757% +50.480% +51.242%]
Performance has improved.
Found 14 outliers among 100 measurements (14.00%)
4 (4.00%) high mild
10 (10.00%) high severe
cursor/deeply nested tree (empty -> full -> empty)
time: [1.3616 µs 1.3631 µs 1.3649 µs]
thrpt: [33.703 Melem/s 33.747 Melem/s 33.783 Melem/s]
change:
time: [-40.063% -39.675% -39.234%] (p = 0.00 < 0.05)
thrpt: [+64.566% +65.769% +66.843%]
Performance has improved.
Found 20 outliers among 100 measurements (20.00%)
18 (18.00%) high mild
2 (2.00%) high severe
```1 parent a3acb76 commit c6e67fc
2 files changed
+10
-19
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
5 | | - | |
6 | 5 | | |
| 6 | + | |
7 | 7 | | |
8 | 8 | | |
9 | 9 | | |
| |||
24 | 24 | | |
25 | 25 | | |
26 | 26 | | |
27 | | - | |
| 27 | + | |
28 | 28 | | |
29 | 29 | | |
30 | 30 | | |
| |||
259 | 259 | | |
260 | 260 | | |
261 | 261 | | |
262 | | - | |
263 | | - | |
| 262 | + | |
| 263 | + | |
264 | 264 | | |
265 | 265 | | |
266 | 266 | | |
| |||
279 | 279 | | |
280 | 280 | | |
281 | 281 | | |
282 | | - | |
| 282 | + | |
283 | 283 | | |
284 | 284 | | |
285 | 285 | | |
| |||
387 | 387 | | |
388 | 388 | | |
389 | 389 | | |
390 | | - | |
391 | | - | |
| 390 | + | |
| 391 | + | |
392 | 392 | | |
393 | 393 | | |
394 | | - | |
395 | | - | |
396 | | - | |
397 | | - | |
| 394 | + | |
| 395 | + | |
398 | 396 | | |
399 | 397 | | |
400 | 398 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
5 | | - | |
6 | 5 | | |
7 | 6 | | |
8 | 7 | | |
| |||
19 | 18 | | |
20 | 19 | | |
21 | 20 | | |
22 | | - | |
23 | | - | |
24 | | - | |
25 | | - | |
26 | | - | |
27 | | - | |
28 | 21 | | |
29 | 22 | | |
30 | 23 | | |
| |||
35 | 28 | | |
36 | 29 | | |
37 | 30 | | |
38 | | - | |
| 31 | + | |
39 | 32 | | |
40 | 33 | | |
41 | 34 | | |
| |||
0 commit comments