📊 optiVLSI Benchmark Report

🖥️ N/A 🐍 Python 3.11.15 ⏱️ 45 benchmarks

Total Benchmarks

45

Algorithms Tested

5

Fastest Mean

170.3μs

Bellman Ford

size = 50
Variant Mean (μs) Min (μs) Max (μs) Median (μs) Rounds vs Fastest
Numba 191.09 164.29 274.31 168.59 5
× 1.0
NetworkX 1080.50 1045.30 2273.00 1064.30 612
× 5.7
Pythonic 45623.90 45485.70 45828.48 45604.88 22
× 238.8
size = 100
Variant Mean (μs) Min (μs) Max (μs) Median (μs) Rounds vs Fastest
Numba 1731.06 1658.94 1819.76 1721.01 560
× 1.0
NetworkX 4260.31 4180.02 4452.54 4254.16 221
× 2.5
Pythonic 438997.35 436274.74 443408.59 438739.35 5
× 253.6
size = 200
Variant Mean (μs) Min (μs) Max (μs) Median (μs) Rounds vs Fastest
Numba 14096.11 13640.70 14377.11 14234.07 71
× 1.0
NetworkX 17017.66 16136.81 19566.60 16821.99 58
× 1.2
Pythonic 3521849.91 3510845.99 3532681.47 3521329.84 5
× 249.8

Dijkstra

size = 50
Variant Mean (μs) Min (μs) Max (μs) Median (μs) Rounds vs Fastest
Numba 267.27 214.92 361.42 261.37 5
× 1.0
Pythonic 338.11 324.03 670.36 334.21 2313
× 1.3
NetworkX 578.20 557.71 880.43 578.58 870
× 2.2
size = 100
Variant Mean (μs) Min (μs) Max (μs) Median (μs) Rounds vs Fastest
Numba 611.00 574.72 956.51 609.68 1406
× 1.0
Pythonic 1303.93 1273.29 1697.79 1300.52 700
× 2.1
NetworkX 2000.61 1963.10 2311.30 1992.82 453
× 3.3
size = 175
Variant Mean (μs) Min (μs) Max (μs) Median (μs) Rounds vs Fastest
Numba 1841.20 1798.50 2397.19 1824.70 497
× 1.0
Pythonic 4298.44 4233.39 4583.71 4295.50 235
× 2.3
NetworkX 6408.61 6263.72 6683.62 6396.26 153
× 3.5

Kruskal

size = 50
Variant Mean (μs) Min (μs) Max (μs) Median (μs) Rounds vs Fastest
Numba 203.93 174.16 278.75 194.79 5
× 1.0
Pythonic 724.84 705.33 1257.18 723.38 1175
× 3.6
NetworkX 1385.34 1265.90 2395.93 1328.11 478
× 6.8
size = 100
Variant Mean (μs) Min (μs) Max (μs) Median (μs) Rounds vs Fastest
Numba 275.84 262.57 616.72 271.63 2753
× 1.0
Pythonic 2781.09 2740.23 3186.49 2764.68 345
× 10.1
NetworkX 4886.35 4545.09 5888.20 4747.69 205
× 17.7
size = 200
Variant Mean (μs) Min (μs) Max (μs) Median (μs) Rounds vs Fastest
Numba 685.34 646.74 785.43 684.13 1032
× 1.0
Pythonic 10989.53 10799.36 11593.20 10958.43 88
× 16.0
NetworkX 23226.19 17905.11 138913.30 18805.74 52
× 33.9

Lee

size = 50
Variant Mean (μs) Min (μs) Max (μs) Median (μs) Rounds vs Fastest
Numba 170.26 142.78 220.76 160.16 5
× 1.0
Pythonic 1001.60 983.09 1694.44 994.50 692
× 5.9
NetworkX 7274.60 7123.55 7554.89 7268.12 128
× 42.7
size = 100
Variant Mean (μs) Min (μs) Max (μs) Median (μs) Rounds vs Fastest
Numba 384.33 362.74 552.64 383.35 2316
× 1.0
Pythonic 3972.43 3936.95 4248.61 3964.23 246
× 10.3
NetworkX 36175.78 30274.44 149236.50 32323.60 32
× 94.1
size = 200
Variant Mean (μs) Min (μs) Max (μs) Median (μs) Rounds vs Fastest
Numba 1436.77 1387.30 1594.27 1427.86 607
× 1.0
Pythonic 16166.10 16066.64 16543.80 16139.76 62
× 11.3
NetworkX 171126.45 140927.99 239882.67 146970.99 7
× 119.1

Prim

size = 50
Variant Mean (μs) Min (μs) Max (μs) Median (μs) Rounds vs Fastest
Numba 313.46 275.65 400.62 291.19 5
× 1.0
Pythonic 914.94 891.42 1187.85 912.02 884
× 2.9
NetworkX 1026.69 985.20 1257.98 1017.85 385
× 3.3
size = 100
Variant Mean (μs) Min (μs) Max (μs) Median (μs) Rounds vs Fastest
Numba 1646.77 1623.66 1785.28 1642.27 550
× 1.0
Pythonic 3312.11 3243.05 4162.43 3285.39 255
× 2.0
NetworkX 3647.51 3550.76 5002.01 3636.17 253
× 2.2
size = 200
Variant Mean (μs) Min (μs) Max (μs) Median (μs) Rounds vs Fastest
Numba 16017.42 15802.24 16857.12 15970.83 61
× 1.0
NetworkX 16471.05 13120.26 105586.32 13656.90 68
× 1.0
Pythonic 19653.61 18370.45 28004.18 19305.34 49
× 1.2

⚡ Numba Speedup Summary

Algorithm Size Pythonic → Numba NetworkX → Numba
Bellman Ford 50 238.8x 5.7x
Bellman Ford 100 253.6x 2.5x
Bellman Ford 200 249.8x 1.2x
Dijkstra 50 1.3x 2.2x
Dijkstra 100 2.1x 3.3x
Dijkstra 175 2.3x 3.5x
Kruskal 50 3.6x 6.8x
Kruskal 100 10.1x 17.7x
Kruskal 200 16.0x 33.9x
Lee 50 5.9x 42.7x
Lee 100 10.3x 94.1x
Lee 200 11.3x 119.1x
Prim 50 2.9x 3.3x
Prim 100 2.0x 2.2x
Prim 200 1.2x 1.0x