Benchmark Results¶
Environment — 0.5.15
| PyTorch | 2.7.1+cu118 |
| TorchEBM | 0.5.15 |
| GPU | NVIDIA GeForce GTX 1050 (1.9 GB) |
| CUDA | 11.8 |
| Platform | Linux 6.5.0-17-generic |
| Date | 2026-03-22 12:33 UTC |
Results — 0.5.15¶
78 benchmarks across 4 modules
Integrators¶
| Benchmark | Batch | Median (ms) | Throughput (samp/s) | Peak Mem (MB) |
|---|---|---|---|---|
test_component[integrators/EulerMaruyamaIntegrator[large]] | 1024 | 172.02 | 5953 | 20.4 |
test_component[integrators/EulerMaruyamaIntegrator[medium]] | 256 | 86.49 | 2960 | 17.8 |
test_component[integrators/EulerMaruyamaIntegrator[small]] | 64 | 43.09 | 1485 | 17.4 |
test_component[integrators/HeunIntegrator[large]] | 1024 | 321.95 | 3181 | 21.9 |
test_component[integrators/HeunIntegrator[medium]] | 256 | 156.51 | 1636 | 17.9 |
test_component[integrators/HeunIntegrator[small]] | 64 | 78.32 | 817 | 17.4 |
test_component[integrators/LeapfrogIntegrator[large]] | 1024 | 258.55 | 3960 | 23.4 |
test_component[integrators/LeapfrogIntegrator[medium]] | 256 | 129.40 | 1978 | 18.0 |
test_component[integrators/LeapfrogIntegrator[small]] | 64 | 63.44 | 1009 | 17.4 |
test_component[integrators/RK4Integrator[large]] | 1024 | 580.33 | 1765 | 24.4 |
test_component[integrators/RK4Integrator[medium]] | 256 | 293.30 | 873 | 18.0 |
test_component[integrators/RK4Integrator[small]] | 64 | 144.90 | 442 | 17.4 |
test_component[integrators/adaptive_heun_adaptive[large]] | 1024 | 8.60 | 119052 | 24.9 |
test_component[integrators/adaptive_heun_adaptive[medium]] | 256 | 5.60 | 45706 | 18.1 |
test_component[integrators/adaptive_heun_adaptive[small]] | 64 | 5.68 | 11272 | 17.4 |
test_component[integrators/adaptive_heun_fixed[large]] | 1024 | 297.74 | 3439 | 21.9 |
test_component[integrators/adaptive_heun_fixed[medium]] | 256 | 145.43 | 1760 | 17.9 |
test_component[integrators/adaptive_heun_fixed[small]] | 64 | 73.42 | 872 | 17.4 |
test_component[integrators/bosh3_adaptive[large]] | 1024 | 12.64 | 81025 | 28.1 |
test_component[integrators/bosh3_adaptive[medium]] | 256 | 8.81 | 29056 | 18.2 |
test_component[integrators/bosh3_adaptive[small]] | 64 | 8.03 | 7971 | 17.4 |
test_component[integrators/bosh3_fixed[large]] | 1024 | 423.30 | 2419 | 23.6 |
test_component[integrators/bosh3_fixed[medium]] | 256 | 215.01 | 1191 | 18.0 |
test_component[integrators/bosh3_fixed[small]] | 64 | 107.57 | 595 | 17.4 |
test_component[integrators/dopri5_adaptive[large]] | 1024 | 24.21 | 42295 | 35.6 |
test_component[integrators/dopri5_adaptive[medium]] | 256 | 16.32 | 15689 | 18.6 |
test_component[integrators/dopri5_adaptive[small]] | 64 | 16.06 | 3984 | 17.5 |
test_component[integrators/dopri5_fixed[large]] | 1024 | 859.92 | 1191 | 28.1 |
test_component[integrators/dopri5_fixed[medium]] | 256 | 431.81 | 593 | 18.1 |
test_component[integrators/dopri5_fixed[small]] | 64 | 220.64 | 290 | 17.4 |
test_component[integrators/dopri8_adaptive[large]] | 1024 | 46.78 | 21890 | 52.9 |
test_component[integrators/dopri8_adaptive[medium]] | 256 | 40.36 | 6343 | 19.5 |
test_component[integrators/dopri8_adaptive[small]] | 64 | 40.00 | 1600 | 17.5 |
test_component[integrators/dopri8_fixed[large]] | 1024 | 1889.16 | 542 | 37.9 |
test_component[integrators/dopri8_fixed[medium]] | 256 | 929.37 | 275 | 18.6 |
test_component[integrators/dopri8_fixed[small]] | 64 | 463.83 | 138 | 17.5 |
Interpolants¶
| Benchmark | Batch | Median (ms) | Throughput (samp/s) | Peak Mem (MB) |
|---|---|---|---|---|
test_component[interpolants/CosineInterpolant[large]] | 1024 | 0.43 | 2382523 | 19.3 |
test_component[interpolants/CosineInterpolant[medium]] | 256 | 0.31 | 820656 | 16.4 |
test_component[interpolants/CosineInterpolant[small]] | 64 | 0.31 | 205955 | 16.3 |
test_component[interpolants/LinearInterpolant[large]] | 1024 | 0.35 | 2934182 | 19.3 |
test_component[interpolants/LinearInterpolant[medium]] | 256 | 0.23 | 1103929 | 16.4 |
test_component[interpolants/LinearInterpolant[small]] | 64 | 0.24 | 271870 | 16.3 |
test_component[interpolants/VariancePreservingInterpolant[large]] | 1024 | 0.66 | 1547600 | 19.3 |
test_component[interpolants/VariancePreservingInterpolant[medium]] | 256 | 0.56 | 455519 | 16.4 |
test_component[interpolants/VariancePreservingInterpolant[small]] | 64 | 0.54 | 118266 | 16.3 |
Losses¶
| Benchmark | Batch | Median (ms) | Throughput (samp/s) | Peak Mem (MB) |
|---|---|---|---|---|
test_component[losses/ContrastiveDivergence[large]] | 1024 | 12.31 | 83212 | 22.9 |
test_component[losses/ContrastiveDivergence[medium]] | 256 | 11.61 | 22056 | 18.3 |
test_component[losses/ContrastiveDivergence[small]] | 64 | 11.84 | 5406 | 17.6 |
test_component[losses/DenoisingScoreMatching[large]] | 1024 | 2.80 | 365641 | 28.4 |
test_component[losses/DenoisingScoreMatching[medium]] | 256 | 2.32 | 110449 | 18.6 |
test_component[losses/DenoisingScoreMatching[small]] | 64 | 2.18 | 29362 | 17.4 |
test_component[losses/EquilibriumMatchingLoss[large]] | 1024 | 1.84 | 556214 | 23.5 |
test_component[losses/EquilibriumMatchingLoss[medium]] | 256 | 1.53 | 167572 | 18.1 |
test_component[losses/EquilibriumMatchingLoss[small]] | 64 | 1.51 | 42403 | 17.5 |
test_component[losses/SlicedScoreMatching[large]] | 1024 | 18.22 | 56216 | 113.0 |
test_component[losses/SlicedScoreMatching[medium]] | 256 | 5.99 | 42755 | 38.3 |
test_component[losses/SlicedScoreMatching[small]] | 64 | 4.18 | 15306 | 21.7 |
test_component[losses/score_matching_approx[large]] | 1024 | 7.40 | 138405 | 44.9 |
test_component[losses/score_matching_approx[medium]] | 256 | 5.34 | 47956 | 22.5 |
test_component[losses/score_matching_approx[small]] | 64 | 5.18 | 12344 | 18.4 |
test_component[losses/score_matching_exact[large]] | 128 | 8.70 | 14716 | 33.5 |
test_component[losses/score_matching_exact[medium]] | 128 | 9.55 | 13405 | 33.5 |
test_component[losses/score_matching_exact[small]] | 64 | 8.58 | 7461 | 21.1 |
Samplers¶
| Benchmark | Batch | Median (ms) | Throughput (samp/s) | Peak Mem (MB) |
|---|---|---|---|---|
test_component[samplers/FlowSampler[large]] | 1024 | 76.68 | 13353 | 19.9 |
test_component[samplers/FlowSampler[medium]] | 256 | 32.21 | 7948 | 17.7 |
test_component[samplers/FlowSampler[small]] | 64 | 16.67 | 3840 | 17.4 |
test_component[samplers/GradientDescentSampler[large]] | 1024 | 90.30 | 11339 | 19.8 |
test_component[samplers/GradientDescentSampler[medium]] | 256 | 45.09 | 5678 | 16.5 |
test_component[samplers/GradientDescentSampler[small]] | 64 | 22.26 | 2875 | 16.3 |
test_component[samplers/HamiltonianMonteCarlo[large]] | 1024 | 2418.69 | 423 | 23.3 |
test_component[samplers/HamiltonianMonteCarlo[medium]] | 256 | 1159.52 | 221 | 16.7 |
test_component[samplers/HamiltonianMonteCarlo[small]] | 64 | 577.10 | 111 | 16.3 |
test_component[samplers/LangevinDynamics[large]] | 1024 | 161.92 | 6324 | 19.8 |
test_component[samplers/LangevinDynamics[medium]] | 256 | 82.02 | 3121 | 16.5 |
test_component[samplers/LangevinDynamics[small]] | 64 | 40.38 | 1585 | 16.3 |
test_component[samplers/NesterovSampler[large]] | 1024 | 100.44 | 10195 | 20.8 |
test_component[samplers/NesterovSampler[medium]] | 256 | 50.00 | 5120 | 16.5 |
test_component[samplers/NesterovSampler[small]] | 64 | 25.27 | 2533 | 16.3 |
Comparison: 0.5.15 vs 0.5.14.dev4¶
Overall: 1.14x geometric mean speedup
- Benchmarks compared: 78
- Total baseline time: 16481.4 ms
- Total optimized time: 13641.9 ms
- Net time saved: 2839.6 ms (+17.2%)
Speedup by Module¶
%%{init: {'theme': 'dark'}}%%
xychart-beta
title "Geometric Mean Speedup by Module"
x-axis ["Integrators", "Interpolants", "Losses", "Samplers"]
y-axis "Speedup (x)" 0 --> 3
bar [1.21, 1.25, 1.06, 1.00]
line [1, 1, 1, 1] Integrators 1.21x¶
| Benchmark | Batch | 0.5.14.dev4 (ms) | 0.5.15 (ms) | Speedup | Throughput | Status |
|---|---|---|---|---|---|---|
test_component[integrators/EulerMaruyamaIntegrator[large]] | 1024 | 242.81 | 172.02 | 1.41x | 4217 → 5953 | |
test_component[integrators/EulerMaruyamaIntegrator[medium]] | 256 | 119.36 | 86.49 | 1.38x | 2145 → 2960 | |
test_component[integrators/EulerMaruyamaIntegrator[small]] | 64 | 48.17 | 43.09 | 1.12x | 1329 → 1485 | |
test_component[integrators/HeunIntegrator[large]] | 1024 | 437.93 | 321.95 | 1.36x | 2338 → 3181 | |
test_component[integrators/HeunIntegrator[medium]] | 256 | 218.97 | 156.51 | 1.40x | 1169 → 1636 | |
test_component[integrators/HeunIntegrator[small]] | 64 | 106.70 | 78.32 | 1.36x | 600 → 817 | |
test_component[integrators/LeapfrogIntegrator[large]] | 1024 | 324.60 | 258.55 | 1.26x | 3155 → 3960 | |
test_component[integrators/LeapfrogIntegrator[medium]] | 256 | 157.26 | 129.40 | 1.22x | 1628 → 1978 | |
test_component[integrators/LeapfrogIntegrator[small]] | 64 | 80.55 | 63.44 | 1.27x | 795 → 1009 | |
test_component[integrators/RK4Integrator[large]] | 1024 | 641.19 | 580.33 | 1.10x | 1597 → 1765 | |
test_component[integrators/RK4Integrator[medium]] | 256 | 328.12 | 293.30 | 1.12x | 780 → 873 | |
test_component[integrators/RK4Integrator[small]] | 64 | 182.18 | 144.90 | 1.26x | 351 → 442 | |
test_component[integrators/adaptive_heun_adaptive[large]] | 1024 | 9.82 | 8.60 | 1.14x | 104304 → 119052 | |
test_component[integrators/adaptive_heun_adaptive[medium]] | 256 | 6.02 | 5.60 | 1.08x | 42501 → 45706 | |
test_component[integrators/adaptive_heun_adaptive[small]] | 64 | 6.06 | 5.68 | 1.07x | 10570 → 11272 | |
test_component[integrators/adaptive_heun_fixed[large]] | 1024 | 378.37 | 297.74 | 1.27x | 2706 → 3439 | |
test_component[integrators/adaptive_heun_fixed[medium]] | 256 | 157.68 | 145.43 | 1.08x | 1624 → 1760 | |
test_component[integrators/adaptive_heun_fixed[small]] | 64 | 79.36 | 73.42 | 1.08x | 806 → 872 | |
test_component[integrators/bosh3_adaptive[large]] | 1024 | 14.88 | 12.64 | 1.18x | 68838 → 81025 | |
test_component[integrators/bosh3_adaptive[medium]] | 256 | 9.76 | 8.81 | 1.11x | 26223 → 29056 | |
test_component[integrators/bosh3_adaptive[small]] | 64 | 9.66 | 8.03 | 1.20x | 6627 → 7971 | |
test_component[integrators/bosh3_fixed[large]] | 1024 | 510.30 | 423.30 | 1.21x | 2007 → 2419 | |
test_component[integrators/bosh3_fixed[medium]] | 256 | 252.75 | 215.01 | 1.18x | 1013 → 1191 | |
test_component[integrators/bosh3_fixed[small]] | 64 | 132.02 | 107.57 | 1.23x | 485 → 595 | |
test_component[integrators/dopri5_adaptive[large]] | 1024 | 28.92 | 24.21 | 1.19x | 35411 → 42295 | |
test_component[integrators/dopri5_adaptive[medium]] | 256 | 20.84 | 16.32 | 1.28x | 12282 → 15689 | |
test_component[integrators/dopri5_adaptive[small]] | 64 | 19.81 | 16.06 | 1.23x | 3231 → 3984 | |
test_component[integrators/dopri5_fixed[large]] | 1024 | 960.87 | 859.92 | 1.12x | 1066 → 1191 | |
test_component[integrators/dopri5_fixed[medium]] | 256 | 583.63 | 431.81 | 1.35x | 439 → 593 | |
test_component[integrators/dopri5_fixed[small]] | 64 | 288.78 | 220.64 | 1.31x | 222 → 290 | |
test_component[integrators/dopri8_adaptive[large]] | 1024 | 51.19 | 46.78 | 1.09x | 20004 → 21890 | |
test_component[integrators/dopri8_adaptive[medium]] | 256 | 45.18 | 40.36 | 1.12x | 5666 → 6343 | |
test_component[integrators/dopri8_adaptive[small]] | 64 | 43.77 | 40.00 | 1.09x | 1462 → 1600 | |
test_component[integrators/dopri8_fixed[large]] | 1024 | 2620.27 | 1889.16 | 1.39x | 391 → 542 | |
test_component[integrators/dopri8_fixed[medium]] | 256 | 1273.04 | 929.37 | 1.37x | 201 → 275 | |
test_component[integrators/dopri8_fixed[small]] | 64 | 526.58 | 463.83 | 1.14x | 122 → 138 |
Interpolants 1.25x¶
| Benchmark | Batch | 0.5.14.dev4 (ms) | 0.5.15 (ms) | Speedup | Throughput | Status |
|---|---|---|---|---|---|---|
test_component[interpolants/CosineInterpolant[large]] | 1024 | 0.55 | 0.43 | 1.27x | 1870422 → 2382523 | |
test_component[interpolants/CosineInterpolant[medium]] | 256 | 0.38 | 0.31 | 1.22x | 670595 → 820656 | |
test_component[interpolants/CosineInterpolant[small]] | 64 | 0.38 | 0.31 | 1.21x | 169816 → 205955 | |
test_component[interpolants/LinearInterpolant[large]] | 1024 | 0.44 | 0.35 | 1.27x | 2315561 → 2934182 | |
test_component[interpolants/LinearInterpolant[medium]] | 256 | 0.29 | 0.23 | 1.25x | 883250 → 1103929 | |
test_component[interpolants/LinearInterpolant[small]] | 64 | 0.31 | 0.24 | 1.32x | 205190 → 271870 | |
test_component[interpolants/VariancePreservingInterpolant[large]] | 1024 | 0.84 | 0.66 | 1.27x | 1222379 → 1547600 | |
test_component[interpolants/VariancePreservingInterpolant[medium]] | 256 | 0.68 | 0.56 | 1.20x | 378990 → 455519 | |
test_component[interpolants/VariancePreservingInterpolant[small]] | 64 | 0.67 | 0.54 | 1.24x | 95195 → 118266 |
Losses 1.06x¶
| Benchmark | Batch | 0.5.14.dev4 (ms) | 0.5.15 (ms) | Speedup | Throughput | Status |
|---|---|---|---|---|---|---|
test_component[losses/ContrastiveDivergence[large]] | 1024 | 14.98 | 12.31 | 1.22x | 68377 → 83212 | |
test_component[losses/ContrastiveDivergence[medium]] | 256 | 13.84 | 11.61 | 1.19x | 18492 → 22056 | |
test_component[losses/ContrastiveDivergence[small]] | 64 | 13.57 | 11.84 | 1.15x | 4715 → 5406 | |
test_component[losses/DenoisingScoreMatching[large]] | 1024 | 2.77 | 2.80 | 0.99x | 369959 → 365641 | |
test_component[losses/DenoisingScoreMatching[medium]] | 256 | 2.25 | 2.32 | 0.97x | 114030 → 110449 | |
test_component[losses/DenoisingScoreMatching[small]] | 64 | 2.18 | 2.18 | 1.00x | 29353 → 29362 | |
test_component[losses/EquilibriumMatchingLoss[large]] | 1024 | 1.92 | 1.84 | 1.04x | 533776 → 556214 | |
test_component[losses/EquilibriumMatchingLoss[medium]] | 256 | 1.61 | 1.53 | 1.05x | 159204 → 167572 | |
test_component[losses/EquilibriumMatchingLoss[small]] | 64 | 1.69 | 1.51 | 1.12x | 37859 → 42403 | |
test_component[losses/SlicedScoreMatching[large]] | 1024 | 17.23 | 18.22 | 0.95x | 59444 → 56216 | |
test_component[losses/SlicedScoreMatching[medium]] | 256 | 6.25 | 5.99 | 1.04x | 40928 → 42755 | |
test_component[losses/SlicedScoreMatching[small]] | 64 | 4.12 | 4.18 | 0.99x | 15529 → 15306 | |
test_component[losses/score_matching_approx[large]] | 1024 | 7.64 | 7.40 | 1.03x | 134108 → 138405 | |
test_component[losses/score_matching_approx[medium]] | 256 | 5.40 | 5.34 | 1.01x | 47419 → 47956 | |
test_component[losses/score_matching_approx[small]] | 64 | 5.35 | 5.18 | 1.03x | 11959 → 12344 | |
test_component[losses/score_matching_exact[large]] | 128 | 11.09 | 8.70 | 1.27x | 11544 → 14716 | |
test_component[losses/score_matching_exact[medium]] | 128 | 10.04 | 9.55 | 1.05x | 12754 → 13405 | |
test_component[losses/score_matching_exact[small]] | 64 | 9.40 | 8.58 | 1.10x | 6806 → 7461 |
Samplers 1.00x¶
| Benchmark | Batch | 0.5.14.dev4 (ms) | 0.5.15 (ms) | Speedup | Throughput | Status |
|---|---|---|---|---|---|---|
test_component[samplers/FlowSampler[large]] | 1024 | 73.41 | 76.68 | 0.96x | 13949 → 13353 | |
test_component[samplers/FlowSampler[medium]] | 256 | 30.14 | 32.21 | 0.94x | 8495 → 7948 | |
test_component[samplers/FlowSampler[small]] | 64 | 15.09 | 16.67 | 0.91x | 4240 → 3840 | |
test_component[samplers/GradientDescentSampler[large]] | 1024 | 96.44 | 90.30 | 1.07x | 10617 → 11339 | |
test_component[samplers/GradientDescentSampler[medium]] | 256 | 49.86 | 45.09 | 1.11x | 5135 → 5678 | |
test_component[samplers/GradientDescentSampler[small]] | 64 | 23.59 | 22.26 | 1.06x | 2712 → 2875 | |
test_component[samplers/HamiltonianMonteCarlo[large]] | 1024 | 2778.01 | 2418.69 | 1.15x | 369 → 423 | |
test_component[samplers/HamiltonianMonteCarlo[medium]] | 256 | 1339.54 | 1159.52 | 1.16x | 191 → 221 | |
test_component[samplers/HamiltonianMonteCarlo[small]] | 64 | 583.08 | 577.10 | 1.01x | 110 → 111 | |
test_component[samplers/LangevinDynamics[large]] | 1024 | 156.54 | 161.92 | 0.97x | 6542 → 6324 | |
test_component[samplers/LangevinDynamics[medium]] | 256 | 74.38 | 82.02 | 0.91x | 3442 → 3121 | |
test_component[samplers/LangevinDynamics[small]] | 64 | 36.52 | 40.38 | 0.90x | 1753 → 1585 | |
test_component[samplers/NesterovSampler[large]] | 1024 | 96.07 | 100.44 | 0.96x | 10659 → 10195 | |
test_component[samplers/NesterovSampler[medium]] | 256 | 49.75 | 50.00 | 0.99x | 5146 → 5120 | |
test_component[samplers/NesterovSampler[small]] | 64 | 25.78 | 25.27 | 1.02x | 2482 → 2533 |
Top Improvements¶
| Benchmark | Speedup | |
|---|---|---|
test_component[integrators/EulerMaruyamaIntegrator[large]] | 1.41x | ████████████████████ |
test_component[integrators/HeunIntegrator[medium]] | 1.40x | ███████████████████ |
test_component[integrators/dopri8_fixed[large]] | 1.39x | ███████████████████ |
test_component[integrators/EulerMaruyamaIntegrator[medium]] | 1.38x | ███████████████████ |
test_component[integrators/dopri8_fixed[medium]] | 1.37x | ███████████████████ |
test_component[integrators/HeunIntegrator[small]] | 1.36x | ███████████████████ |
test_component[integrators/HeunIntegrator[large]] | 1.36x | ███████████████████ |
test_component[integrators/dopri5_fixed[medium]] | 1.35x | ███████████████████ |
test_component[interpolants/LinearInterpolant[small]] | 1.32x | ██████████████████ |
test_component[integrators/dopri5_fixed[small]] | 1.31x | ██████████████████ |
Regressions Detected
test_component[losses/SlicedScoreMatching[large]]: 0.95x (17.23 ms → 18.22 ms)test_component[samplers/LangevinDynamics[small]]: 0.90x (36.52 ms → 40.38 ms)test_component[samplers/LangevinDynamics[medium]]: 0.91x (74.38 ms → 82.02 ms)test_component[samplers/FlowSampler[small]]: 0.91x (15.09 ms → 16.67 ms)test_component[samplers/FlowSampler[medium]]: 0.94x (30.14 ms → 32.21 ms)
Memory Usage¶
| Benchmark | Before (MB) | After (MB) | Ratio |
|---|---|---|---|
test_component[integrators/EulerMaruyamaIntegrator[small]] | 17.4 | 17.4 | 1.00x |
test_component[integrators/EulerMaruyamaIntegrator[medium]] | 17.8 | 17.8 | 1.00x |
test_component[integrators/EulerMaruyamaIntegrator[large]] | 20.4 | 20.4 | 1.00x |
test_component[integrators/HeunIntegrator[small]] | 17.4 | 17.4 | 1.00x |
test_component[integrators/HeunIntegrator[medium]] | 17.9 | 17.9 | 1.00x |
test_component[integrators/HeunIntegrator[large]] | 21.9 | 21.9 | 1.00x |
test_component[integrators/LeapfrogIntegrator[small]] | 17.4 | 17.4 | 1.00x |
test_component[integrators/LeapfrogIntegrator[medium]] | 18.0 | 18.0 | 1.00x |
test_component[integrators/LeapfrogIntegrator[large]] | 23.4 | 23.4 | 1.00x |
test_component[integrators/dopri5_adaptive[small]] | 17.5 | 17.5 | 1.00x |
test_component[integrators/dopri5_adaptive[medium]] | 18.6 | 18.6 | 1.00x |
test_component[integrators/dopri5_adaptive[large]] | 35.6 | 35.6 | 1.00x |
test_component[integrators/dopri5_fixed[small]] | 17.4 | 17.4 | 1.00x |
test_component[integrators/dopri5_fixed[medium]] | 18.1 | 18.1 | 1.00x |
test_component[integrators/dopri5_fixed[large]] | 28.1 | 28.1 | 1.00x |
test_component[integrators/dopri8_adaptive[small]] | 17.5 | 17.5 | 1.00x |
test_component[integrators/dopri8_adaptive[medium]] | 19.5 | 19.5 | 1.00x |
test_component[integrators/dopri8_adaptive[large]] | 52.9 | 52.9 | 1.00x |
test_component[integrators/dopri8_fixed[small]] | 17.5 | 17.5 | 1.00x |
test_component[integrators/dopri8_fixed[medium]] | 18.6 | 18.6 | 1.00x |
test_component[integrators/dopri8_fixed[large]] | 37.9 | 37.9 | 1.00x |
test_component[integrators/RK4Integrator[small]] | 17.4 | 17.4 | 1.00x |
test_component[integrators/RK4Integrator[medium]] | 18.0 | 18.0 | 1.00x |
test_component[integrators/RK4Integrator[large]] | 24.4 | 24.4 | 1.00x |
test_component[integrators/adaptive_heun_adaptive[small]] | 17.4 | 17.4 | 1.00x |
test_component[integrators/adaptive_heun_adaptive[medium]] | 18.1 | 18.1 | 1.00x |
test_component[integrators/adaptive_heun_adaptive[large]] | 24.9 | 24.9 | 1.00x |
test_component[integrators/adaptive_heun_fixed[small]] | 17.4 | 17.4 | 1.00x |
test_component[integrators/adaptive_heun_fixed[medium]] | 17.9 | 17.9 | 1.00x |
test_component[integrators/adaptive_heun_fixed[large]] | 21.9 | 21.9 | 1.00x |
test_component[integrators/bosh3_adaptive[small]] | 17.4 | 17.4 | 1.00x |
test_component[integrators/bosh3_adaptive[medium]] | 18.2 | 18.2 | 1.00x |
test_component[integrators/bosh3_adaptive[large]] | 28.1 | 28.1 | 1.00x |
test_component[integrators/bosh3_fixed[small]] | 17.4 | 17.4 | 1.00x |
test_component[integrators/bosh3_fixed[medium]] | 18.0 | 18.0 | 1.00x |
test_component[integrators/bosh3_fixed[large]] | 23.6 | 23.6 | 1.00x |
test_component[interpolants/LinearInterpolant[small]] | 16.3 | 16.3 | 1.00x |
test_component[interpolants/LinearInterpolant[medium]] | 16.4 | 16.4 | 1.00x |
test_component[interpolants/LinearInterpolant[large]] | 19.3 | 19.3 | 1.00x |
test_component[interpolants/CosineInterpolant[small]] | 16.3 | 16.3 | 1.00x |
test_component[interpolants/CosineInterpolant[medium]] | 16.4 | 16.4 | 1.00x |
test_component[interpolants/CosineInterpolant[large]] | 19.3 | 19.3 | 1.00x |
test_component[interpolants/VariancePreservingInterpolant[small]] | 16.3 | 16.3 | 1.00x |
test_component[interpolants/VariancePreservingInterpolant[medium]] | 16.4 | 16.4 | 1.00x |
test_component[interpolants/VariancePreservingInterpolant[large]] | 19.3 | 19.3 | 1.00x |
test_component[losses/ContrastiveDivergence[small]] | 17.6 | 17.6 | 1.00x |
test_component[losses/ContrastiveDivergence[medium]] | 18.3 | 18.3 | 1.00x |
test_component[losses/ContrastiveDivergence[large]] | 22.9 | 22.9 | 1.00x |
test_component[losses/score_matching_exact[small]] | 21.1 | 21.1 | 1.00x |
test_component[losses/score_matching_exact[medium]] | 33.5 | 33.5 | 1.00x |
test_component[losses/score_matching_exact[large]] | 33.5 | 33.5 | 1.00x |
test_component[losses/score_matching_approx[small]] | 18.4 | 18.4 | 1.00x |
test_component[losses/score_matching_approx[medium]] | 22.5 | 22.5 | 1.00x |
test_component[losses/score_matching_approx[large]] | 44.9 | 44.9 | 1.00x |
test_component[losses/DenoisingScoreMatching[small]] | 17.4 | 17.4 | 1.00x |
test_component[losses/DenoisingScoreMatching[medium]] | 18.6 | 18.6 | 1.00x |
test_component[losses/DenoisingScoreMatching[large]] | 28.4 | 28.4 | 1.00x |
test_component[losses/SlicedScoreMatching[small]] | 21.7 | 21.7 | 1.00x |
test_component[losses/SlicedScoreMatching[medium]] | 38.3 | 38.3 | 1.00x |
test_component[losses/SlicedScoreMatching[large]] | 113.0 | 113.0 | 1.00x |
test_component[losses/EquilibriumMatchingLoss[small]] | 17.5 | 17.5 | 1.00x |
test_component[losses/EquilibriumMatchingLoss[medium]] | 18.1 | 18.1 | 1.00x |
test_component[losses/EquilibriumMatchingLoss[large]] | 23.5 | 23.5 | 1.00x |
test_component[samplers/LangevinDynamics[small]] | 16.3 | 16.3 | 1.00x |
test_component[samplers/LangevinDynamics[medium]] | 16.5 | 16.5 | 1.00x |
test_component[samplers/LangevinDynamics[large]] | 19.8 | 19.8 | 1.00x |
test_component[samplers/HamiltonianMonteCarlo[small]] | 16.3 | 16.3 | 1.00x |
test_component[samplers/HamiltonianMonteCarlo[medium]] | 16.7 | 16.7 | 1.00x |
test_component[samplers/HamiltonianMonteCarlo[large]] | 23.3 | 23.3 | 1.00x |
test_component[samplers/GradientDescentSampler[small]] | 16.3 | 16.3 | 1.00x |
test_component[samplers/GradientDescentSampler[medium]] | 16.5 | 16.5 | 1.00x |
test_component[samplers/GradientDescentSampler[large]] | 19.8 | 19.8 | 1.00x |
test_component[samplers/NesterovSampler[small]] | 16.3 | 16.3 | 1.00x |
test_component[samplers/NesterovSampler[medium]] | 16.5 | 16.5 | 1.00x |
test_component[samplers/NesterovSampler[large]] | 20.8 | 20.8 | 1.00x |
test_component[samplers/FlowSampler[small]] | 17.4 | 17.4 | 1.00x |
test_component[samplers/FlowSampler[medium]] | 17.7 | 17.7 | 1.00x |
test_component[samplers/FlowSampler[large]] | 19.9 | 19.9 | 1.00x |
Version History¶
| Version | Date | Benchmarks | Avg Median (ms) | Avg Throughput (samp/s) |
|---|---|---|---|---|
| 0.5.15 | 2026-03-22 12:33 UTC | 78 | 174.90 | 154760 |
| 0.5.14.dev4 | 2026-03-21 23:16 UTC | 78 | 211.30 | 127331 |