Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use std::popcount instead of __builtin_popcount #7026

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

SiarheiFedartsou
Copy link
Member

@SiarheiFedartsou SiarheiFedartsou commented Sep 1, 2024

Benchmark Results

Benchmark Base PR
alias aliased u32: 11082
plain u32: 10970.5
aliased double: 15120.5
plain double: 15110.4
aliased u32: 11147.6
plain u32: 10972.7
aliased double: 15119.4
plain double: 15112.7
e2e_match_ch Ops: 27.21 ± 0.01 ops/s. Best: 27.23 ops/s
Total: 4813.88ms ± 1.72ms. Best: 4810.58ms
Min time: 3.27ms ± 0.06ms
Mean time: 36.75ms ± 0.01ms
Median time: 25.06ms ± 0.13ms
95th percentile: 121.97ms ± 0.12ms
99th percentile: 147.28ms ± 0.51ms
Max time: 156.00ms ± 0.42ms
Ops: 27.05 ± 0.01 ops/s. Best: 27.07 ops/s
Total: 4842.01ms ± 1.63ms. Best: 4838.68ms
Min time: 3.26ms ± 0.04ms
Mean time: 36.96ms ± 0.01ms
Median time: 25.22ms ± 0.11ms
95th percentile: 123.02ms ± 0.35ms
99th percentile: 148.35ms ± 0.26ms
Max time: 156.87ms ± 0.50ms
e2e_match_mld Ops: 43.47 ± 0.04 ops/s. Best: 43.53 ops/s
Total: 3013.94ms ± 2.57ms. Best: 3009.54ms
Min time: 2.59ms ± 0.04ms
Mean time: 23.01ms ± 0.02ms
Median time: 12.09ms ± 0.09ms
95th percentile: 74.96ms ± 0.26ms
99th percentile: 87.41ms ± 0.22ms
Max time: 100.88ms ± 0.15ms
Ops: 43.50 ± 0.01 ops/s. Best: 43.51 ops/s
Total: 3011.19ms ± 0.77ms. Best: 3010.52ms
Min time: 2.59ms ± 0.05ms
Mean time: 22.99ms ± 0.01ms
Median time: 12.13ms ± 0.11ms
95th percentile: 74.96ms ± 0.14ms
99th percentile: 87.15ms ± 0.08ms
Max time: 100.82ms ± 0.26ms
e2e_nearest_ch Ops: 635.48 ± 4.01 ops/s. Best: 642.97 ops/s
Total: 1573.36ms ± 10.04ms. Best: 1555.29ms
Min time: 1.28ms ± 0.00ms
Mean time: 1.57ms ± 0.01ms
Median time: 1.54ms ± 0.01ms
95th percentile: 1.96ms ± 0.00ms
99th percentile: 2.04ms ± 0.01ms
Max time: 9.33ms ± 7.40ms
Ops: 637.56 ± 3.52 ops/s. Best: 643.94 ops/s
Total: 1568.50ms ± 8.85ms. Best: 1552.94ms
Min time: 1.27ms ± 0.01ms
Mean time: 1.57ms ± 0.01ms
Median time: 1.53ms ± 0.01ms
95th percentile: 1.97ms ± 0.01ms
99th percentile: 2.04ms ± 0.01ms
Max time: 9.38ms ± 7.44ms
e2e_nearest_mld Ops: 635.43 ± 2.30 ops/s. Best: 639.02 ops/s
Total: 1573.63ms ± 5.90ms. Best: 1564.90ms
Min time: 1.28ms ± 0.01ms
Mean time: 1.57ms ± 0.01ms
Median time: 1.54ms ± 0.00ms
95th percentile: 1.96ms ± 0.01ms
99th percentile: 2.05ms ± 0.01ms
Max time: 9.33ms ± 7.39ms
Ops: 636.03 ± 4.86 ops/s. Best: 642.03 ops/s
Total: 1572.10ms ± 12.52ms. Best: 1557.55ms
Min time: 1.29ms ± 0.01ms
Mean time: 1.57ms ± 0.01ms
Median time: 1.53ms ± 0.01ms
95th percentile: 1.96ms ± 0.01ms
99th percentile: 2.05ms ± 0.01ms
Max time: 9.36ms ± 7.41ms
e2e_route_ch Ops: 215.71 ± 0.42 ops/s. Best: 216.23 ops/s
Total: 4636.04ms ± 9.00ms. Best: 4624.76ms
Min time: 1.83ms ± 0.06ms
Mean time: 4.64ms ± 0.01ms
Median time: 4.73ms ± 0.01ms
95th percentile: 6.09ms ± 0.03ms
99th percentile: 6.66ms ± 0.02ms
Max time: 13.42ms ± 6.36ms
Ops: 215.43 ± 0.50 ops/s. Best: 216.19 ops/s
Total: 4642.20ms ± 10.90ms. Best: 4625.55ms
Min time: 1.87ms ± 0.05ms
Mean time: 4.64ms ± 0.01ms
Median time: 4.75ms ± 0.01ms
95th percentile: 6.08ms ± 0.02ms
99th percentile: 6.64ms ± 0.02ms
Max time: 13.34ms ± 6.33ms
e2e_route_mld Ops: 177.78 ± 0.38 ops/s. Best: 178.57 ops/s
Total: 5625.05ms ± 12.40ms. Best: 5600.16ms
Min time: 1.85ms ± 0.07ms
Mean time: 5.62ms ± 0.01ms
Median time: 5.75ms ± 0.02ms
95th percentile: 7.63ms ± 0.02ms
99th percentile: 8.19ms ± 0.06ms
Max time: 14.74ms ± 5.88ms
Ops: 177.88 ± 0.39 ops/s. Best: 178.73 ops/s
Total: 5622.02ms ± 13.48ms. Best: 5595.14ms
Min time: 1.85ms ± 0.04ms
Mean time: 5.62ms ± 0.01ms
Median time: 5.74ms ± 0.02ms
95th percentile: 7.61ms ± 0.02ms
99th percentile: 8.19ms ± 0.10ms
Max time: 14.77ms ± 5.90ms
e2e_table_ch Ops: 212.94 ± 0.30 ops/s. Best: 213.51 ops/s
Total: 4696.09ms ± 6.57ms. Best: 4683.64ms
Min time: 2.46ms ± 0.04ms
Mean time: 4.70ms ± 0.01ms
Median time: 4.69ms ± 0.01ms
95th percentile: 6.40ms ± 0.01ms
99th percentile: 6.76ms ± 0.03ms
Max time: 13.96ms ± 7.04ms
Ops: 212.94 ± 0.46 ops/s. Best: 213.48 ops/s
Total: 4696.11ms ± 10.18ms. Best: 4684.18ms
Min time: 2.44ms ± 0.06ms
Mean time: 4.70ms ± 0.01ms
Median time: 4.69ms ± 0.01ms
95th percentile: 6.42ms ± 0.01ms
99th percentile: 6.74ms ± 0.04ms
Max time: 13.91ms ± 7.07ms
e2e_table_mld Ops: 69.53 ± 0.03 ops/s. Best: 69.59 ops/s
Total: 14383.01ms ± 7.12ms. Best: 14369.87ms
Min time: 6.02ms ± 0.02ms
Mean time: 14.38ms ± 0.01ms
Median time: 14.30ms ± 0.02ms
95th percentile: 21.94ms ± 0.03ms
99th percentile: 23.17ms ± 0.02ms
Max time: 29.41ms ± 5.60ms
Ops: 69.45 ± 0.04 ops/s. Best: 69.50 ops/s
Total: 14399.04ms ± 8.28ms. Best: 14388.05ms
Min time: 5.97ms ± 0.02ms
Mean time: 14.40ms ± 0.01ms
Median time: 14.33ms ± 0.02ms
95th percentile: 21.95ms ± 0.06ms
99th percentile: 23.19ms ± 0.05ms
Max time: 29.54ms ± 5.76ms
e2e_trip_ch Ops: 62.27 ± 0.04 ops/s. Best: 62.35 ops/s
Total: 16058.15ms ± 9.33ms. Best: 16037.22ms
Min time: 2.40ms ± 0.15ms
Mean time: 16.06ms ± 0.01ms
Median time: 15.28ms ± 0.02ms
95th percentile: 28.26ms ± 0.03ms
99th percentile: 30.26ms ± 0.11ms
Max time: 32.98ms ± 1.24ms
Ops: 62.13 ± 0.04 ops/s. Best: 62.19 ops/s
Total: 16094.39ms ± 10.00ms. Best: 16080.10ms
Min time: 2.44ms ± 0.14ms
Mean time: 16.09ms ± 0.01ms
Median time: 15.30ms ± 0.03ms
95th percentile: 28.31ms ± 0.03ms
99th percentile: 30.33ms ± 0.14ms
Max time: 33.12ms ± 1.27ms
e2e_trip_mld Ops: 36.75 ± 0.02 ops/s. Best: 36.77 ops/s
Total: 27211.44ms ± 16.93ms. Best: 27193.69ms
Min time: 2.45ms ± 0.21ms
Mean time: 27.21ms ± 0.02ms
Median time: 26.35ms ± 0.05ms
95th percentile: 44.29ms ± 0.07ms
99th percentile: 46.98ms ± 0.11ms
Max time: 49.31ms ± 0.23ms
Ops: 36.69 ± 0.02 ops/s. Best: 36.72 ops/s
Total: 27254.71ms ± 14.05ms. Best: 27234.06ms
Min time: 2.42ms ± 0.16ms
Mean time: 27.25ms ± 0.01ms
Median time: 26.38ms ± 0.08ms
95th percentile: 44.40ms ± 0.03ms
99th percentile: 47.03ms ± 0.07ms
Max time: 49.45ms ± 0.17ms
json-render String: 9.00567ms
Stringstream: 14.3008ms
Vector: 9.55194ms
String: 8.94265ms
Stringstream: 14.6225ms
Vector: 9.70468ms
match_ch Default radius:
7.05028ms/req at 82 coordinate
0.085979ms/coordinate
Radius 10m:
24.9688ms/req at 82 coordinate
0.304497ms/coordinate
Default radius:
7.07577ms/req at 82 coordinate
0.0862899ms/coordinate
Radius 10m:
25.0367ms/req at 82 coordinate
0.305326ms/coordinate
match_mld Default radius:
4.55709ms/req at 82 coordinate
0.0555742ms/coordinate
Radius 10m:
17.4315ms/req at 82 coordinate
0.21258ms/coordinate
Default radius:
4.39315ms/req at 82 coordinate
0.053575ms/coordinate
Radius 10m:
16.2283ms/req at 82 coordinate
0.197907ms/coordinate
node_match_ch Ops: 164.2 ± 1.2 ops/s. Best: 165.5 ops/s Ops: 163.8 ± 1.1 ops/s. Best: 165.3 ops/s
node_match_mld Ops: 220.3 ± 1.4 ops/s. Best: 222.3 ops/s Ops: 220.5 ± 1.0 ops/s. Best: 221.8 ops/s
node_nearest_ch Ops: 10002.6 ± 942.3 ops/s. Best: 11248.8 ops/s Ops: 10283.3 ± 834.8 ops/s. Best: 12100.6 ops/s
node_nearest_mld Ops: 10476.4 ± 1035.1 ops/s. Best: 11554.0 ops/s Ops: 10416.3 ± 903.2 ops/s. Best: 12022.8 ops/s
node_route_ch Ops: 969.4 ± 7.2 ops/s. Best: 979.4 ops/s Ops: 1002.8 ± 14.8 ops/s. Best: 1025.3 ops/s
node_route_mld Ops: 509.0 ± 5.3 ops/s. Best: 514.9 ops/s Ops: 509.7 ± 4.9 ops/s. Best: 516.1 ops/s
node_table_ch Ops: 178.5 ± 1.8 ops/s. Best: 181.1 ops/s Ops: 178.8 ± 1.0 ops/s. Best: 180.6 ops/s
node_table_mld Ops: 38.0 ± 0.1 ops/s. Best: 38.1 ops/s Ops: 37.8 ± 0.0 ops/s. Best: 37.9 ops/s
node_trip_ch Ops: 180.0 ± 1.1 ops/s. Best: 181.5 ops/s Ops: 180.4 ± 0.9 ops/s. Best: 181.7 ops/s
node_trip_mld Ops: 61.4 ± 0.1 ops/s. Best: 61.6 ops/s Ops: 61.6 ± 0.1 ops/s. Best: 61.8 ops/s
osrm_contract Time: 185.57s Peak RAM: 194.98MB Time: 185.60s Peak RAM: 194.96MB
osrm_customize Time: 2.54s Peak RAM: 112.46MB Time: 2.52s Peak RAM: 112.46MB
osrm_extract Time: 24.34s Peak RAM: 398.18MB Time: 24.42s Peak RAM: 397.53MB
osrm_partition Time: 5.91s Peak RAM: 121.64MB Time: 5.91s Peak RAM: 121.04MB
packedvector random write:
std::vector 185155 ms
util::packed_vector 377709 ms
slowdown: 2.03996
random read:
std::vector 100703 ms
util::packed_vector 192379 ms
slowdown: 1.91035
random write:
std::vector 184671 ms
util::packed_vector 382463 ms
slowdown: 2.07105
random read:
std::vector 100777 ms
util::packed_vector 195112 ms
slowdown: 1.93607
random_match_ch 500 matches, default radius
ops: 121.57 ± 0.22 ops/s. best: 121.82ops/s.
total: 468.87 ± 0.83ms. best: 467.92ms.
avg: 8.23 ± 0.01ms
min: 0.23 ± 0.00ms
max: 43.09 ± 0.10ms
p99: 43.09 ± 0.10ms

500 matches, radius=10
ops: 35.09 ± 0.02 ops/s. best: 35.11ops/s.
total: 1824.11 ± 1.11ms. best: 1822.95ms.
avg: 28.50 ± 0.02ms
min: 0.23 ± 0.00ms
max: 430.15 ± 1.35ms
p99: 430.15 ± 1.35ms

500 matches, radius=20
ops: 8.17 ± 0.01 ops/s. best: 8.19ops/s.
total: 7958.91 ± 12.08ms. best: 7937.36ms.
avg: 122.44 ± 0.19ms
min: 0.49 ± 0.00ms
max: 2275.58 ± 4.44ms
p99: 2275.58 ± 4.44ms

Peak RAM: 55.500MB
500 matches, default radius
ops: 120.63 ± 0.23 ops/s. best: 120.89ops/s.
total: 472.54 ± 0.90ms. best: 471.49ms.
avg: 8.29 ± 0.02ms
min: 0.23 ± 0.00ms
max: 43.60 ± 0.11ms
p99: 43.60 ± 0.11ms

500 matches, radius=10
ops: 34.64 ± 0.02 ops/s. best: 34.67ops/s.
total: 1847.64 ± 0.99ms. best: 1845.95ms.
avg: 28.87 ± 0.02ms
min: 0.23 ± 0.00ms
max: 438.62 ± 1.22ms
p99: 438.62 ± 1.22ms

500 matches, radius=20
ops: 8.04 ± 0.01 ops/s. best: 8.06ops/s.
total: 8082.92 ± 11.81ms. best: 8062.45ms.
avg: 124.35 ± 0.18ms
min: 0.49 ± 0.00ms
max: 2334.02 ± 4.47ms
p99: 2334.02 ± 4.47ms

Peak RAM: 55.500MB
random_match_mld 500 matches, default radius
ops: 206.66 ± 0.44 ops/s. best: 207.05ops/s.
total: 275.82 ± 0.59ms. best: 275.29ms.
avg: 4.84 ± 0.01ms
min: 0.20 ± 0.00ms
max: 27.11 ± 0.01ms
p99: 27.11 ± 0.01ms

500 matches, radius=10
ops: 73.07 ± 0.11 ops/s. best: 73.28ops/s.
total: 875.92 ± 1.29ms. best: 873.39ms.
avg: 13.69 ± 0.02ms
min: 0.22 ± 0.00ms
max: 162.06 ± 0.69ms
p99: 162.06 ± 0.69ms

500 matches, radius=20
ops: 15.58 ± 0.01 ops/s. best: 15.60ops/s.
total: 4172.50 ± 2.78ms. best: 4166.67ms.
avg: 64.19 ± 0.04ms
min: 0.29 ± 0.00ms
max: 843.97 ± 1.53ms
p99: 843.97 ± 1.53ms

Peak RAM: 51.500MB
500 matches, default radius
ops: 206.43 ± 0.51 ops/s. best: 206.92ops/s.
total: 276.12 ± 0.69ms. best: 275.47ms.
avg: 4.84 ± 0.01ms
min: 0.20 ± 0.00ms
max: 27.13 ± 0.00ms
p99: 27.13 ± 0.00ms

500 matches, radius=10
ops: 73.01 ± 0.10 ops/s. best: 73.21ops/s.
total: 876.63 ± 1.22ms. best: 874.20ms.
avg: 13.70 ± 0.02ms
min: 0.22 ± 0.00ms
max: 162.14 ± 0.68ms
p99: 162.14 ± 0.68ms

500 matches, radius=20
ops: 15.56 ± 0.01 ops/s. best: 15.57ops/s.
total: 4178.69 ± 2.53ms. best: 4173.68ms.
avg: 64.29 ± 0.04ms
min: 0.29 ± 0.00ms
max: 844.59 ± 1.46ms
p99: 844.59 ± 1.46ms

Peak RAM: 51.500MB
random_nearest_ch 10000 nearest, number_of_results=1
ops: 21855.25 ± 43.77 ops/s. best: 21889.08ops/s.
total: 457.56 ± 0.92ms. best: 456.85ms.
avg: 0.05 ± 0.00ms
min: 0.02 ± 0.00ms
max: 0.16 ± 0.03ms
p99: 0.10 ± 0.00ms

10000 nearest, number_of_results=5
ops: 16082.78 ± 5.94 ops/s. best: 16089.36ops/s.
total: 621.78 ± 0.23ms. best: 621.53ms.
avg: 0.06 ± 0.00ms
min: 0.03 ± 0.00ms
max: 0.15 ± 0.00ms
p99: 0.12 ± 0.00ms

10000 nearest, number_of_results=10
ops: 12292.98 ± 2.79 ops/s. best: 12297.33ops/s.
total: 813.47 ± 0.18ms. best: 813.18ms.
avg: 0.08 ± 0.00ms
min: 0.04 ± 0.00ms
max: 0.19 ± 0.00ms
p99: 0.15 ± 0.00ms

Peak RAM: 35.000MB
10000 nearest, number_of_results=1
ops: 22055.59 ± 38.00 ops/s. best: 22087.10ops/s.
total: 453.40 ± 0.78ms. best: 452.75ms.
avg: 0.05 ± 0.00ms
min: 0.02 ± 0.00ms
max: 0.16 ± 0.03ms
p99: 0.10 ± 0.00ms

10000 nearest, number_of_results=5
ops: 16243.27 ± 7.47 ops/s. best: 16251.62ops/s.
total: 615.64 ± 0.28ms. best: 615.32ms.
avg: 0.06 ± 0.00ms
min: 0.03 ± 0.00ms
max: 0.15 ± 0.00ms
p99: 0.12 ± 0.00ms

10000 nearest, number_of_results=10
ops: 12445.89 ± 6.98 ops/s. best: 12453.10ops/s.
total: 803.48 ± 0.46ms. best: 803.01ms.
avg: 0.08 ± 0.00ms
min: 0.04 ± 0.00ms
max: 0.19 ± 0.00ms
p99: 0.15 ± 0.00ms

Peak RAM: 35.000MB
random_nearest_mld 10000 nearest, number_of_results=1
ops: 21845.13 ± 35.37 ops/s. best: 21874.40ops/s.
total: 457.77 ± 0.74ms. best: 457.16ms.
avg: 0.05 ± 0.00ms
min: 0.02 ± 0.00ms
max: 0.15 ± 0.02ms
p99: 0.10 ± 0.00ms

10000 nearest, number_of_results=5
ops: 16079.39 ± 7.78 ops/s. best: 16086.51ops/s.
total: 621.91 ± 0.30ms. best: 621.64ms.
avg: 0.06 ± 0.00ms
min: 0.03 ± 0.00ms
max: 0.15 ± 0.00ms
p99: 0.12 ± 0.00ms

10000 nearest, number_of_results=10
ops: 12288.84 ± 5.00 ops/s. best: 12294.13ops/s.
total: 813.75 ± 0.33ms. best: 813.40ms.
avg: 0.08 ± 0.00ms
min: 0.04 ± 0.00ms
max: 0.19 ± 0.00ms
p99: 0.15 ± 0.00ms

Peak RAM: 35.000MB
10000 nearest, number_of_results=1
ops: 22051.35 ± 36.51 ops/s. best: 22087.53ops/s.
total: 453.49 ± 0.75ms. best: 452.74ms.
avg: 0.05 ± 0.00ms
min: 0.02 ± 0.00ms
max: 0.15 ± 0.02ms
p99: 0.10 ± 0.00ms

10000 nearest, number_of_results=5
ops: 16252.83 ± 5.61 ops/s. best: 16257.97ops/s.
total: 615.28 ± 0.21ms. best: 615.08ms.
avg: 0.06 ± 0.00ms
min: 0.03 ± 0.00ms
max: 0.15 ± 0.00ms
p99: 0.12 ± 0.00ms

10000 nearest, number_of_results=10
ops: 12455.84 ± 4.00 ops/s. best: 12458.98ops/s.
total: 802.84 ± 0.26ms. best: 802.63ms.
avg: 0.08 ± 0.00ms
min: 0.04 ± 0.00ms
max: 0.19 ± 0.00ms
p99: 0.15 ± 0.00ms

Peak RAM: 35.000MB
random_route_ch 1000 routes, 3 coordinates, no alternatives, overview=full, steps=true
ops: 284.51 ± 0.21 ops/s. best: 284.73ops/s.
total: 3458.62 ± 2.51ms. best: 3455.87ms.
avg: 3.51 ± 0.00ms
min: 0.53 ± 0.00ms
max: 6.04 ± 0.03ms
p99: 5.28 ± 0.02ms

1000 routes, 2 coordinates, 3 alternatives, overview=full, steps=true
ops: 331.45 ± 0.02 ops/s. best: 331.47ops/s.
total: 3017.02 ± 0.14ms. best: 3016.89ms.
avg: 3.02 ± 0.00ms
min: 0.08 ± 0.00ms
max: 7.91 ± 0.05ms
p99: 7.09 ± 0.01ms

1000 routes, 3 coordinates, no alternatives, overview=false, steps=false
ops: 583.87 ± 0.29 ops/s. best: 584.36ops/s.
total: 1685.31 ± 0.78ms. best: 1683.88ms.
avg: 1.71 ± 0.00ms
min: 0.36 ± 0.00ms
max: 2.74 ± 0.01ms
p99: 2.43 ± 0.01ms

1000 routes, 2 coordinates, 3 alternatives, overview=false, steps=false
ops: 634.44 ± 0.28 ops/s. best: 634.75ops/s.
total: 1576.19 ± 0.72ms. best: 1575.42ms.
avg: 1.58 ± 0.00ms
min: 0.06 ± 0.00ms
max: 4.16 ± 0.01ms
p99: 3.89 ± 0.00ms

Peak RAM: 84.000MB
1000 routes, 3 coordinates, no alternatives, overview=full, steps=true
ops: 283.11 ± 0.10 ops/s. best: 283.23ops/s.
total: 3475.68 ± 1.21ms. best: 3474.23ms.
avg: 3.53 ± 0.00ms
min: 0.51 ± 0.01ms
max: 6.03 ± 0.01ms
p99: 5.25 ± 0.01ms

1000 routes, 2 coordinates, 3 alternatives, overview=full, steps=true
ops: 331.63 ± 0.06 ops/s. best: 331.71ops/s.
total: 3015.38 ± 0.53ms. best: 3014.68ms.
avg: 3.02 ± 0.00ms
min: 0.08 ± 0.00ms
max: 7.91 ± 0.05ms
p99: 7.09 ± 0.01ms

1000 routes, 3 coordinates, no alternatives, overview=false, steps=false
ops: 578.59 ± 0.67 ops/s. best: 579.77ops/s.
total: 1700.68 ± 1.98ms. best: 1697.22ms.
avg: 1.73 ± 0.00ms
min: 0.37 ± 0.00ms
max: 2.78 ± 0.01ms
p99: 2.44 ± 0.01ms

1000 routes, 2 coordinates, 3 alternatives, overview=false, steps=false
ops: 631.98 ± 0.20 ops/s. best: 632.43ops/s.
total: 1582.34 ± 0.51ms. best: 1581.20ms.
avg: 1.58 ± 0.00ms
min: 0.06 ± 0.00ms
max: 4.20 ± 0.01ms
p99: 3.92 ± 0.01ms

Peak RAM: 84.000MB
random_route_mld 1000 routes, 3 coordinates, no alternatives, overview=full, steps=true
ops: 146.62 ± 0.03 ops/s. best: 146.65ops/s.
total: 6711.00 ± 1.20ms. best: 6709.85ms.
avg: 6.82 ± 0.00ms
min: 0.53 ± 0.01ms
max: 16.54 ± 0.02ms
p99: 11.08 ± 0.01ms

1000 routes, 2 coordinates, 3 alternatives, overview=full, steps=true
ops: 139.49 ± 0.05 ops/s. best: 139.54ops/s.
total: 7169.12 ± 2.70ms. best: 7166.26ms.
avg: 7.17 ± 0.00ms
min: 0.08 ± 0.00ms
max: 16.50 ± 0.04ms
p99: 15.51 ± 0.03ms

1000 routes, 3 coordinates, no alternatives, overview=false, steps=false
ops: 203.87 ± 0.03 ops/s. best: 203.93ops/s.
total: 4826.62 ± 0.73ms. best: 4825.26ms.
avg: 4.91 ± 0.00ms
min: 0.39 ± 0.00ms
max: 13.72 ± 0.01ms
p99: 8.48 ± 0.01ms

1000 routes, 2 coordinates, 3 alternatives, overview=false, steps=false
ops: 175.58 ± 0.02 ops/s. best: 175.60ops/s.
total: 5695.35 ± 0.74ms. best: 5694.62ms.
avg: 5.70 ± 0.00ms
min: 0.06 ± 0.00ms
max: 12.90 ± 0.09ms
p99: 11.92 ± 0.02ms

Peak RAM: 73.984MB
1000 routes, 3 coordinates, no alternatives, overview=full, steps=true
ops: 146.99 ± 0.03 ops/s. best: 147.03ops/s.
total: 6694.36 ± 1.29ms. best: 6692.36ms.
avg: 6.80 ± 0.00ms
min: 0.53 ± 0.00ms
max: 16.47 ± 0.01ms
p99: 11.08 ± 0.02ms

1000 routes, 2 coordinates, 3 alternatives, overview=full, steps=true
ops: 139.54 ± 0.13 ops/s. best: 139.69ops/s.
total: 7166.67 ± 6.67ms. best: 7158.83ms.
avg: 7.17 ± 0.01ms
min: 0.07 ± 0.00ms
max: 16.56 ± 0.19ms
p99: 15.51 ± 0.04ms

1000 routes, 3 coordinates, no alternatives, overview=false, steps=false
ops: 204.53 ± 0.03 ops/s. best: 204.58ops/s.
total: 4811.02 ± 0.79ms. best: 4809.77ms.
avg: 4.89 ± 0.00ms
min: 0.39 ± 0.00ms
max: 13.67 ± 0.01ms
p99: 8.45 ± 0.01ms

1000 routes, 2 coordinates, 3 alternatives, overview=false, steps=false
ops: 175.69 ± 0.07 ops/s. best: 175.80ops/s.
total: 5691.85 ± 2.28ms. best: 5688.26ms.
avg: 5.69 ± 0.00ms
min: 0.06 ± 0.00ms
max: 12.83 ± 0.02ms
p99: 11.94 ± 0.05ms

Peak RAM: 73.984MB
random_table_ch 250 tables, 3 coordinates
ops: 1098.71 ± 3.97 ops/s. best: 1101.63ops/s.
total: 227.54 ± 0.83ms. best: 226.94ms.
avg: 0.91 ± 0.00ms
min: 0.61 ± 0.00ms
max: 1.28 ± 0.17ms
p99: 1.14 ± 0.01ms

250 tables, 25 coordinates
ops: 122.90 ± 0.04 ops/s. best: 122.97ops/s.
total: 2034.10 ± 0.69ms. best: 2032.97ms.
avg: 8.14 ± 0.00ms
min: 7.30 ± 0.01ms
max: 9.02 ± 0.01ms
p99: 8.79 ± 0.01ms

250 tables, 50 coordinates
ops: 59.78 ± 0.01 ops/s. best: 59.78ops/s.
total: 4182.31 ± 0.40ms. best: 4181.73ms.
avg: 16.73 ± 0.00ms
min: 15.55 ± 0.01ms
max: 17.75 ± 0.02ms
p99: 17.63 ± 0.02ms

Peak RAM: 63.000MB
250 tables, 3 coordinates
ops: 1104.08 ± 4.34 ops/s. best: 1107.50ops/s.
total: 226.44 ± 0.90ms. best: 225.73ms.
avg: 0.91 ± 0.00ms
min: 0.60 ± 0.00ms
max: 1.27 ± 0.15ms
p99: 1.14 ± 0.01ms

250 tables, 25 coordinates
ops: 123.61 ± 0.04 ops/s. best: 123.67ops/s.
total: 2022.51 ± 0.58ms. best: 2021.48ms.
avg: 8.09 ± 0.00ms
min: 7.26 ± 0.01ms
max: 8.97 ± 0.01ms
p99: 8.73 ± 0.01ms

250 tables, 50 coordinates
ops: 60.26 ± 0.01 ops/s. best: 60.27ops/s.
total: 4148.59 ± 0.51ms. best: 4147.84ms.
avg: 16.59 ± 0.00ms
min: 15.43 ± 0.01ms
max: 17.56 ± 0.01ms
p99: 17.46 ± 0.01ms

Peak RAM: 63.000MB
random_table_mld 250 tables, 3 coordinates
ops: 227.31 ± 0.34 ops/s. best: 227.73ops/s.
total: 1099.82 ± 1.71ms. best: 1097.78ms.
avg: 4.40 ± 0.01ms
min: 3.48 ± 0.00ms
max: 5.63 ± 0.02ms
p99: 5.46 ± 0.06ms

250 tables, 25 coordinates
ops: 23.89 ± 0.00 ops/s. best: 23.89ops/s.
total: 10466.09 ± 1.21ms. best: 10464.57ms.
avg: 41.86 ± 0.00ms
min: 38.68 ± 0.05ms
max: 45.75 ± 0.05ms
p99: 45.16 ± 0.04ms

250 tables, 50 coordinates
ops: 11.04 ± 0.00 ops/s. best: 11.05ops/s.
total: 22640.52 ± 8.29ms. best: 22625.26ms.
avg: 90.56 ± 0.03ms
min: 85.68 ± 0.10ms
max: 96.41 ± 0.11ms
p99: 94.49 ± 0.11ms

Peak RAM: 63.281MB
250 tables, 3 coordinates
ops: 225.11 ± 0.28 ops/s. best: 225.43ops/s.
total: 1110.59 ± 1.41ms. best: 1109.00ms.
avg: 4.44 ± 0.01ms
min: 3.50 ± 0.01ms
max: 5.71 ± 0.01ms
p99: 5.51 ± 0.01ms

250 tables, 25 coordinates
ops: 23.72 ± 0.01 ops/s. best: 23.74ops/s.
total: 10538.65 ± 4.09ms. best: 10530.49ms.
avg: 42.15 ± 0.02ms
min: 38.84 ± 0.09ms
max: 46.06 ± 0.15ms
p99: 45.44 ± 0.13ms

250 tables, 50 coordinates
ops: 11.00 ± 0.01 ops/s. best: 11.01ops/s.
total: 22731.33 ± 18.57ms. best: 22698.52ms.
avg: 90.93 ± 0.07ms
min: 86.23 ± 0.28ms
max: 96.34 ± 0.50ms
p99: 95.00 ± 0.22ms

Peak RAM: 63.281MB
random_trip_ch 250 trips, 3 coordinates
ops: 319.75 ± 0.36 ops/s. best: 320.12ops/s.
total: 781.86 ± 0.93ms. best: 780.95ms.
avg: 3.13 ± 0.00ms
min: 1.63 ± 0.00ms
max: 4.35 ± 0.01ms
p99: 4.23 ± 0.00ms

250 trips, 5 coordinates
ops: 207.46 ± 0.03 ops/s. best: 207.50ops/s.
total: 1205.03 ± 0.20ms. best: 1204.81ms.
avg: 4.82 ± 0.00ms
min: 3.18 ± 0.01ms
max: 6.22 ± 0.01ms
p99: 6.00 ± 0.01ms

Peak RAM: 74.000MB
250 trips, 3 coordinates
ops: 319.17 ± 0.27 ops/s. best: 319.43ops/s.
total: 783.29 ± 0.67ms. best: 782.65ms.
avg: 3.13 ± 0.00ms
min: 1.62 ± 0.01ms
max: 4.36 ± 0.01ms
p99: 4.23 ± 0.00ms

250 trips, 5 coordinates
ops: 207.40 ± 0.03 ops/s. best: 207.43ops/s.
total: 1205.38 ± 0.15ms. best: 1205.23ms.
avg: 4.82 ± 0.00ms
min: 3.18 ± 0.00ms
max: 6.20 ± 0.01ms
p99: 6.01 ± 0.01ms

Peak RAM: 74.000MB
random_trip_mld 250 trips, 3 coordinates
ops: 107.01 ± 0.07 ops/s. best: 107.07ops/s.
total: 2336.20 ± 1.57ms. best: 2334.98ms.
avg: 9.34 ± 0.01ms
min: 5.44 ± 0.01ms
max: 12.18 ± 0.02ms
p99: 12.04 ± 0.01ms

250 trips, 5 coordinates
ops: 68.89 ± 0.01 ops/s. best: 68.90ops/s.
total: 3628.85 ± 0.38ms. best: 3628.31ms.
avg: 14.52 ± 0.00ms
min: 10.08 ± 0.01ms
max: 17.92 ± 0.03ms
p99: 17.40 ± 0.01ms

Peak RAM: 69.500MB
250 trips, 3 coordinates
ops: 106.00 ± 0.37 ops/s. best: 106.60ops/s.
total: 2358.63 ± 8.14ms. best: 2345.21ms.
avg: 9.43 ± 0.03ms
min: 5.50 ± 0.06ms
max: 12.35 ± 0.03ms
p99: 12.25 ± 0.07ms

250 trips, 5 coordinates
ops: 68.75 ± 0.18 ops/s. best: 68.91ops/s.
total: 3636.58 ± 9.67ms. best: 3627.78ms.
avg: 14.55 ± 0.04ms
min: 10.11 ± 0.03ms
max: 18.10 ± 0.10ms
p99: 17.37 ± 0.06ms

Peak RAM: 69.500MB
route_ch 1000 routes, 3 coordinates, no alternatives, overview=full, steps=true
637.043ms
0.637043ms/req
1000 routes, 2 coordinates, 3 alternatives, overview=full, steps=true
780.275ms
0.780275ms/req
1000 routes, 3 coordinates, no alternatives, overview=false, steps=false
245.246ms
0.245246ms/req
1000 routes, 2 coordinates, 3 alternatives, overview=false, steps=false
215.977ms
0.215977ms/req
1000 routes, 3 coordinates, no alternatives, overview=full, steps=true
635.93ms
0.63593ms/req
1000 routes, 2 coordinates, 3 alternatives, overview=full, steps=true
776.112ms
0.776112ms/req
1000 routes, 3 coordinates, no alternatives, overview=false, steps=false
247.73ms
0.24773ms/req
1000 routes, 2 coordinates, 3 alternatives, overview=false, steps=false
216.441ms
0.216441ms/req
route_mld 1000 routes, 3 coordinates, no alternatives, overview=full, steps=true
816.249ms
0.816249ms/req
1000 routes, 2 coordinates, 3 alternatives, overview=full, steps=true
1065.04ms
1.06504ms/req
1000 routes, 3 coordinates, no alternatives, overview=false, steps=false
423.361ms
0.423361ms/req
1000 routes, 2 coordinates, 3 alternatives, overview=false, steps=false
487.551ms
0.487551ms/req
1000 routes, 3 coordinates, no alternatives, overview=full, steps=true
805.278ms
0.805278ms/req
1000 routes, 2 coordinates, 3 alternatives, overview=full, steps=true
1034.78ms
1.03478ms/req
1000 routes, 3 coordinates, no alternatives, overview=false, steps=false
412.557ms
0.412557ms/req
1000 routes, 2 coordinates, 3 alternatives, overview=false, steps=false
460.689ms
0.460689ms/req
rtree 1 result:
227.555ms -> 0.0227555 ms/query
10 results:
258.264ms -> 0.0258264 ms/query
1 result:
227.245ms -> 0.0227245 ms/query
10 results:
257.971ms -> 0.0257971 ms/query

@SiarheiFedartsou SiarheiFedartsou marked this pull request as ready for review September 1, 2024 13:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant