Skip to content

perf: switch to hashbrown hashmap in the function registry (#399) #1010

perf: switch to hashbrown hashmap in the function registry (#399)

perf: switch to hashbrown hashmap in the function registry (#399) #1010

GitHub Actions / Bencher Report succeeded Mar 29, 2025 in 0s

🐰 Bencher Report

Branchmain
Testbedwindows-gha
Click to view all benchmark results
BenchmarkLatencyBenchmark Result
nanoseconds (ns)
(Result Ξ”%)
Upper Boundary
nanoseconds (ns)
(Limit %)
component/access LuaπŸ“ˆ view plot
🚷 view threshold
5,120.80 ns
(-12.09%)Baseline: 5,825.27 ns
7,079.95 ns
(72.33%)
component/access RhaiπŸ“ˆ view plot
🚷 view threshold
8,350.80 ns
(+2.35%)Baseline: 8,159.01 ns
8,784.90 ns
(95.06%)
component/get LuaπŸ“ˆ view plot
🚷 view threshold
3,196.70 ns
(-2.97%)Baseline: 3,294.47 ns
3,758.38 ns
(85.06%)
component/get RhaiπŸ“ˆ view plot
🚷 view threshold
6,245.30 ns
(+11.08%)Baseline: 5,622.17 ns
6,626.35 ns
(94.25%)
conversions/Mut::fromπŸ“ˆ view plot
🚷 view threshold
291.37 ns
(+35.82%)Baseline: 214.52 ns
386.93 ns
(75.30%)
conversions/Ref::fromπŸ“ˆ view plot
🚷 view threshold
288.89 ns
(+37.99%)Baseline: 209.36 ns
376.18 ns
(76.80%)
conversions/ScriptValue::ListπŸ“ˆ view plot
🚷 view threshold
556.82 ns
(-17.87%)Baseline: 677.98 ns
961.31 ns
(57.92%)
conversions/ScriptValue::MapπŸ“ˆ view plot
🚷 view threshold
1,592.60 ns
(-13.57%)Baseline: 1,842.55 ns
2,361.39 ns
(67.44%)
conversions/ScriptValue::Reference::from_intoπŸ“ˆ view plot
🚷 view threshold
106.46 ns
(+78.86%)Baseline: 59.52 ns
126.09 ns
(84.43%)
conversions/Val::from_intoπŸ“ˆ view plot
🚷 view threshold
318.22 ns
(-13.38%)Baseline: 367.38 ns
443.12 ns
(71.81%)
function/call 4 args LuaπŸ“ˆ view plot
🚷 view threshold
2,650.70 ns
(+1.12%)Baseline: 2,621.30 ns
2,938.34 ns
(90.21%)
function/call 4 args RhaiπŸ“ˆ view plot
🚷 view threshold
2,384.80 ns
(+4.73%)Baseline: 2,277.15 ns
2,508.79 ns
(95.06%)
function/call LuaπŸ“ˆ view plot
🚷 view threshold
296.32 ns
(+3.91%)Baseline: 285.18 ns
333.99 ns
(88.72%)
function/call RhaiπŸ“ˆ view plot
🚷 view threshold
582.50 ns
(+7.76%)Baseline: 540.53 ns
632.79 ns
(92.05%)
math/vec mat ops LuaπŸ“ˆ view plot
🚷 view threshold
8,914.20 ns
(-7.47%)Baseline: 9,633.52 ns
11,501.23 ns
(77.51%)
math/vec mat ops RhaiπŸ“ˆ view plot
🚷 view threshold
8,604.00 ns
(-7.13%)Baseline: 9,264.85 ns
10,664.47 ns
(80.68%)
query/10 entities LuaπŸ“ˆ view plot
🚷 view threshold
26,753.00 ns
(-1.48%)Baseline: 27,155.08 ns
29,801.05 ns
(89.77%)
query/10 entities RhaiπŸ“ˆ view plot
🚷 view threshold
32,596.00 ns
(+5.20%)Baseline: 30,985.46 ns
33,968.30 ns
(95.96%)
query/100 entities LuaπŸ“ˆ view plot
🚷 view threshold
55,196.00 ns
(+0.40%)Baseline: 54,974.85 ns
62,772.04 ns
(87.93%)
query/100 entities RhaiπŸ“ˆ view plot
🚷 view threshold
54,404.00 ns
(-1.31%)Baseline: 55,128.38 ns
63,478.44 ns
(85.70%)
query/1000 entities LuaπŸ“ˆ view plot
🚷 view threshold
345,640.00 ns
(-9.84%)Baseline: 383,343.85 ns
461,744.47 ns
(74.86%)
query/1000 entities RhaiπŸ“ˆ view plot
🚷 view threshold
339,070.00 ns
(+0.38%)Baseline: 337,790.00 ns
425,311.92 ns
(79.72%)
reflection/10 LuaπŸ“ˆ view plot
🚷 view threshold
8,230.10 ns
(-5.23%)Baseline: 8,684.36 ns
9,759.39 ns
(84.33%)
reflection/10 RhaiπŸ“ˆ view plot
🚷 view threshold
21,687.00 ns
(-1.02%)Baseline: 21,911.23 ns
23,122.83 ns
(93.79%)
reflection/100 LuaπŸ“ˆ view plot
🚷 view threshold
67,822.00 ns
(-3.35%)Baseline: 70,172.92 ns
77,655.56 ns
(87.34%)
reflection/100 RhaiπŸ“ˆ view plot
🚷 view threshold
934,890.00 ns
(+0.80%)Baseline: 927,466.92 ns
958,717.62 ns
(97.51%)
resource/access LuaπŸ“ˆ view plot
🚷 view threshold
4,677.80 ns
(-11.03%)Baseline: 5,257.97 ns
6,542.10 ns
(71.50%)
resource/access RhaiπŸ“ˆ view plot
🚷 view threshold
7,364.40 ns
(-0.03%)Baseline: 7,366.59 ns
8,109.67 ns
(90.81%)
resource/get LuaπŸ“ˆ view plot
🚷 view threshold
2,796.80 ns
(-0.77%)Baseline: 2,818.59 ns
3,190.62 ns
(87.66%)
resource/get RhaiπŸ“ˆ view plot
🚷 view threshold
5,430.30 ns
(+11.35%)Baseline: 4,876.61 ns
5,669.27 ns
(95.78%)
🐰 View full continuous benchmarking report in Bencher