Fix README
All checks were successful
Tests / 64 bit versions total: 8220, passed: 8220
Tests / Debug total: 8218, passed: 8218
Tests / SIMD fallback total: 8220, passed: 8220
Tests / Release [clang] total: 8220, passed: 8220
Clang |Total|New|Outstanding|Fixed|Trend |:-:|:-:|:-:|:-:|:-: |0|0|0|0|:clap:
Tests / gcc total: 8220, passed: 8220
GNU C Compiler (gcc) |Total|New|Outstanding|Fixed|Trend |:-:|:-:|:-:|:-:|:-: |0|0|0|0|:clap:
Tests / Release [clang,aarch64] total: 5446, passed: 5446
Tests / Coverage total: 5497, passed: 5497
Code Coverage #### Project Overview No changes detected, that affect the code coverage. * Line Coverage: 97.69% (3166/3241) * Branch Coverage: 42.26% (19263/45584) * Complexity Density: 0.00 * Lines of Code: 3241 #### Quality Gates Summary Output truncated.
weaselab/conflict-set/pipeline/head This commit looks good

This commit is contained in:
2024-11-19 09:02:16 -08:00
parent 6f899e063b
commit ce23d3995c
2 changed files with 24 additions and 24 deletions

View File

@@ -4,10 +4,10 @@ Intended as an alternative to FoundationDB's skip list.
Hardware for all benchmarks is an AMD Ryzen 9 7900 with (2x32GB) 5600MT/s CL28-34-34-89 1.35V RAM.
````
```
$ clang++ --version
Ubuntu clang version 20.0.0 (++20241118082208+63b926af5ff4-1~exp1~20241118082226.549)
Ubuntu clang version 20.0.0 (++20241119082716+7e85cb8a8a9d-1~exp1~20241119082825.551)
Target: x86_64-pc-linux-gnu
Thread model: posix
InstalledDir: /usr/lib/llvm-20/bin
@@ -19,30 +19,30 @@ InstalledDir: /usr/lib/llvm-20/bin
| ns/op | op/s | err% | ins/op | cyc/op | IPC | bra/op | miss% | total | benchmark
|--------------------:|--------------------:|--------:|----------------:|----------------:|-------:|---------------:|--------:|----------:|:----------
| 163.82 | 6,104,214.81 | 0.0% | 3,014.03 | 823.99 | 3.658 | 504.59 | 0.0% | 1.96 | `point reads`
| 160.65 | 6,224,551.06 | 0.0% | 2,954.16 | 808.03 | 3.656 | 490.17 | 0.0% | 1.92 | `prefix reads`
| 243.07 | 4,114,000.62 | 0.0% | 3,592.41 | 1,224.77 | 2.933 | 629.31 | 0.0% | 2.90 | `range reads`
| 454.64 | 2,199,540.91 | 0.1% | 4,450.57 | 2,297.43 | 1.937 | 707.92 | 2.1% | 5.43 | `point writes`
| 451.41 | 2,215,265.93 | 0.0% | 4,410.22 | 2,281.37 | 1.933 | 694.74 | 2.1% | 5.39 | `prefix writes`
| 302.92 | 3,301,213.43 | 0.0% | 2,315.38 | 1,530.92 | 1.512 | 396.69 | 3.3% | 3.60 | `range writes`
| 470.36 | 2,126,014.73 | 1.0% | 6,999.33 | 2,457.12 | 2.849 | 1,251.74 | 1.3% | 0.06 | `monotonic increasing point writes`
| 129,198.14 | 7,740.05 | 0.5% | 807,446.00 | 655,645.00 | 1.232 | 144,584.67 | 0.0% | 0.01 | `worst case for radix tree`
| 46.34 | 21,578,562.58 | 0.7% | 902.00 | 232.26 | 3.884 | 132.00 | 0.0% | 0.01 | `create and destroy`
| 169.16 | 5,911,582.44 | 0.0% | 3,014.03 | 855.12 | 3.525 | 504.59 | 0.0% | 2.02 | `point reads`
| 167.17 | 5,981,796.19 | 0.0% | 2,954.16 | 845.14 | 3.495 | 490.17 | 0.0% | 2.00 | `prefix reads`
| 250.44 | 3,992,954.35 | 0.1% | 3,592.41 | 1,265.18 | 2.839 | 629.31 | 0.0% | 2.99 | `range reads`
| 467.10 | 2,140,846.36 | 0.0% | 4,450.57 | 2,488.36 | 1.789 | 707.92 | 2.1% | 5.62 | `point writes`
| 465.18 | 2,149,723.11 | 0.2% | 4,410.22 | 2,474.92 | 1.782 | 694.74 | 2.1% | 5.55 | `prefix writes`
| 297.45 | 3,361,954.05 | 0.1% | 2,315.38 | 1,581.64 | 1.464 | 396.69 | 3.3% | 3.57 | `range writes`
| 476.56 | 2,098,370.82 | 1.0% | 6,999.33 | 2,492.26 | 2.808 | 1,251.74 | 1.3% | 0.06 | `monotonic increasing point writes`
| 129,455.00 | 7,724.69 | 1.0% | 807,446.67 | 698,559.40 | 1.156 | 144,584.60 | 0.8% | 0.01 | `worst case for radix tree`
| 44.67 | 22,384,996.63 | 0.5% | 902.00 | 235.18 | 3.835 | 132.00 | 0.0% | 0.01 | `create and destroy`
## Radix tree (this implementation)
| ns/op | op/s | err% | ins/op | cyc/op | IPC | bra/op | miss% | total | benchmark
|--------------------:|--------------------:|--------:|----------------:|----------------:|-------:|---------------:|--------:|----------:|:----------
| 13.00 | 76,916,274.88 | 0.1% | 247.13 | 65.16 | 3.793 | 32.64 | 0.8% | 0.16 | `point reads`
| 15.03 | 66,535,609.26 | 0.1% | 299.99 | 75.25 | 3.987 | 42.50 | 0.5% | 0.18 | `prefix reads`
| 35.65 | 28,054,245.19 | 0.0% | 782.70 | 178.41 | 4.387 | 106.65 | 0.2% | 0.43 | `range reads`
| 20.79 | 48,099,317.88 | 0.4% | 376.04 | 104.10 | 3.612 | 49.97 | 0.7% | 0.25 | `point writes`
| 45.17 | 22,137,997.58 | 0.0% | 666.07 | 227.27 | 2.931 | 101.33 | 0.3% | 0.54 | `prefix writes`
| 40.35 | 24,784,682.32 | 0.0% | 732.33 | 202.46 | 3.617 | 111.64 | 0.1% | 0.49 | `range writes`
| 79.04 | 12,651,349.21 | 2.4% | 1,462.61 | 399.37 | 3.662 | 279.17 | 0.1% | 0.01 | `monotonic increasing point writes`
| 313,894.00 | 3,185.79 | 0.3% | 4,043,060.00 | 1,585,794.00 | 2.550 | 714,828.00 | 0.1% | 0.01 | `worst case for radix tree`
| 109.01 | 9,173,544.09 | 0.5% | 2,046.00 | 547.40 | 3.738 | 329.00 | 0.0% | 0.01 | `create and destroy`
| 14.11 | 70,857,435.19 | 0.1% | 247.13 | 71.03 | 3.479 | 32.64 | 0.8% | 0.17 | `point reads`
| 15.63 | 63,997,306.79 | 0.0% | 299.99 | 78.59 | 3.817 | 42.50 | 0.4% | 0.19 | `prefix reads`
| 36.24 | 27,590,266.59 | 0.1% | 782.70 | 182.21 | 4.296 | 106.65 | 0.2% | 0.43 | `range reads`
| 22.72 | 44,004,627.40 | 0.1% | 376.04 | 114.33 | 3.289 | 49.97 | 0.8% | 0.27 | `point writes`
| 40.83 | 24,494,110.04 | 0.0% | 666.07 | 205.35 | 3.244 | 101.33 | 0.3% | 0.49 | `prefix writes`
| 43.45 | 23,016,324.00 | 0.0% | 732.33 | 218.41 | 3.353 | 111.64 | 0.1% | 0.53 | `range writes`
| 81.46 | 12,276,650.63 | 3.6% | 1,458.85 | 411.52 | 3.545 | 280.42 | 0.1% | 0.01 | `monotonic increasing point writes`
| 314,217.00 | 3,182.51 | 1.2% | 4,043,063.50 | 1,593,715.00 | 2.537 | 714,828.00 | 0.1% | 0.01 | `worst case for radix tree`
| 106.79 | 9,364,602.60 | 0.5% | 2,046.00 | 539.75 | 3.791 | 329.00 | 0.0% | 0.01 | `create and destroy`
# "Real data" test
@@ -51,13 +51,13 @@ Point queries only. Gc ratio is the ratio of time spent doing garbage collection
## skip list
```
Check: 4.65306 seconds, 362.382 MB/s, Add: 3.92107 seconds, 146.729 MB/s, Gc ratio: 33.6261%, Peak idle memory: 5.61007e+06
Check: 4.62434 seconds, 364.633 MB/s, Add: 3.90399 seconds, 147.371 MB/s, Gc ratio: 33.6898%, Peak idle memory: 5.61007e+06
```
## radix tree
```
Check: 1.02927 seconds, 1638.24 MB/s, Add: 1.33663 seconds, 430.436 MB/s, Gc ratio: 35.3609%, Peak idle memory: 2.32922e+06
Check: 0.956689 seconds, 1762.52 MB/s, Add: 1.35744 seconds, 423.84 MB/s, Gc ratio: 35.0946%, Peak idle memory: 2.32922e+06
```
## hash table
@@ -65,6 +65,6 @@ Check: 1.02927 seconds, 1638.24 MB/s, Add: 1.33663 seconds, 430.436 MB/s, Gc rat
(The hash table implementation doesn't work on range queries, and its purpose is to provide an idea of how fast point queries can be)
```
Check: 0.856661 seconds, 1968.32 MB/s, Add: 0.709563 seconds, 810.831 MB/s, Gc ratio: 35.0388%, Peak idle memory: 0
Check: 0.799863 seconds, 2108.09 MB/s, Add: 0.667736 seconds, 861.621 MB/s, Gc ratio: 35.0666%, Peak idle memory: 0
```

View File

@@ -13,7 +13,7 @@ Intended as an alternative to FoundationDB's skip list.
Hardware for all benchmarks is an AMD Ryzen 9 7900 with (2x32GB) 5600MT/s CL28-34-34-89 1.35V RAM.
````
```
$ clang++ --version
EOF