Performance Testing

This page displays the current performance metrics for the Godot Stat Math library. The dashboard shows execution times for all performance tests, comparing current results against established baselines.

📊 Performance Dashboard

Generated: 2025-06-30T16:55:08 Total Tests: 114 Passed: 113 Failed: 1 Calls: 100 Iterations: 5 (median)
Within threshold
Above threshold
Disabled
Ppf Functions (9/9 passed)
Function
Current (ms)
Baseline (ms)
Diff %
Threshold
Status
Chi Square F T Ppf
852.302
817.358
+4.3%
±25%
pass
Beta Ppf
802.553
761.071
+5.5%
±25%
pass
Gamma Ppf
169.294
168.216
+0.6%
±25%
pass
Discrete Ppf
18.422
17.637
+4.5%
±25%
pass
Normal Ppf
2.077
1.998
+4.0%
±25%
pass
Discrete Histogram Ppf
0.807
0.772
+4.5%
±25%
pass
Weibull Ppf
0.417
0.412
+1.2%
±25%
pass
Pareto Ppf
0.397
0.386
+2.8%
±25%
pass
Uniform Exponential Ppf
0.311
0.309
+0.6%
±25%
pass
Sampling Gen (37/38 passed)
Function
Current (ms)
Baseline (ms)
Diff %
Threshold
Status
Coordinated Shuffle Performance
109.728
79.187
+38.6%
±25%
fail
Generate Samples Sobol 10D 1024
13.871
12.725
+9.0%
±25%
pass
Generate Samples Halton 10D 1024
13.785
12.773
+7.9%
±25%
pass
Generate Samples Sobol Random 10D 1024
13.377
12.557
+6.5%
±25%
pass
Generate Samples Random 10D 1024
6.073
5.036
+20.6%
±25%
pass
Generate Samples Halton 3D 1024
5.820
5.285
+10.1%
±25%
pass
Generate Samples Sobol 3D 1024
4.691
4.141
+13.3%
±25%
pass
Generate Samples Sobol Random 3D 1024
4.456
4.049
+10.1%
±25%
pass
Generate Samples Sobol 10D 256
3.711
3.344
+11.0%
±25%
pass
Generate Samples Sobol Random 10D 256
3.597
3.235
+11.2%
±25%
pass
Generate Samples Halton 10D 256
3.363
3.061
+9.9%
±25%
pass
Generate Samples Halton 1D 1024
2.680
2.496
+7.4%
±25%
pass
Generate Samples Random 3D 1024
2.126
1.880
+13.1%
±25%
pass
Generate Samples Sobol 1D 1024
1.940
1.727
+12.3%
±25%
pass
Generate Samples Sobol Random 1D 1024
1.889
1.682
+12.3%
±25%
pass
Generate Samples Random 10D 256
1.759
1.432
+22.8%
±25%
pass
Generate Samples Halton 3D 256
1.441
1.243
+15.9%
±25%
pass
Generate Samples Sobol 3D 256
1.276
1.119
+14.0%
±25%
pass
Generate Samples Sobol Random 3D 256
1.267
1.066
+18.9%
±25%
pass
Generate Samples Random 1D 1024
1.256
1.103
+13.9%
±25%
pass
Generate Samples Sobol 10D 32
0.691
0.647
+6.8%
±25%
pass
Generate Samples Sobol Random 10D 32
0.664
0.616
+7.8%
±25%
pass
Generate Samples Halton 1D 256
0.620
0.561
+10.5%
±25%
pass
Generate Samples Halton 10D 32
0.597
0.555
+7.6%
±25%
pass
Generate Samples Random 3D 256
0.547
0.517
+5.8%
±25%
pass
Generate Samples Sobol Random 1D 256
0.489
0.425
+15.1%
±25%
pass
Generate Samples Sobol 1D 256
0.451
0.435
+3.7%
±25%
pass
Generate Samples Random 10D 32
0.352
0.381
-7.6%
±25%
pass
Generate Samples Random 1D 256
0.296
0.277
+6.9%
±25%
pass
Sample Indices Performance
0.273
0.278
-1.8%
±25%
pass
Generate Samples Halton 3D 32
0.234
0.208
+12.5%
±25%
pass
Generate Samples Sobol 3D 32
0.228
0.220
+3.6%
±25%
pass
Generate Samples Sobol Random 3D 32
0.227
0.213
+6.6%
±25%
pass
Generate Samples Random 3D 32
0.146
0.138
+5.8%
±25%
pass
Generate Samples Sobol 1D 32
0.066
0.063
+4.8%
±25%
pass
Generate Samples Halton 1D 32
0.065
0.063
+3.2%
±25%
pass
Generate Samples Sobol Random 1D 32
0.063
0.061
+3.3%
±25%
pass
Generate Samples Random 1D 32
0.039
0.041
-4.9%
±25%
pass
Helper Functions (10/10 passed)
Function
Current (ms)
Baseline (ms)
Diff %
Threshold
Status
Incomplete Beta Function
92.137
88.604
+4.0%
±25%
pass
Lower Incomplete Gamma Regularized
47.494
45.938
+3.4%
±25%
pass
Beta Function
13.614
13.201
+3.1%
±25%
pass
Log Beta Function Direct
13.310
12.823
+3.8%
±25%
pass
Log Binomial Coef
8.233
7.968
+3.3%
±25%
pass
Log Factorial
7.912
7.919
-0.1%
±25%
pass
Sanitize Numeric Array
7.530
7.430
+1.3%
±25%
pass
Binomial Coefficient
6.015
6.018
-0.0%
±25%
pass
Gamma Function
4.366
4.214
+3.6%
±25%
pass
Log Gamma
4.361
4.193
+4.0%
±25%
pass
Cdf Functions (13/13 passed)
Function
Current (ms)
Baseline (ms)
Diff %
Threshold
Status
Beta Cdf
46.887
44.513
+5.3%
±25%
pass
T Cdf
28.255
26.934
+4.9%
±25%
pass
F Cdf
18.213
17.872
+1.9%
±25%
pass
Binomial Cdf
4.062
3.811
+6.6%
±25%
pass
Negative Binomial Cdf
3.831
3.733
+2.6%
±25%
pass
Gamma Cdf
3.803
3.744
+1.6%
±25%
pass
Chi Square Cdf
2.082
2.023
+2.9%
±25%
pass
Poisson Cdf
1.848
1.813
+1.9%
±25%
pass
Normal Cdf
0.984
0.952
+3.4%
±25%
pass
Weibull Cdf
0.333
0.318
+4.7%
±25%
pass
Exponential Cdf
0.265
0.256
+3.5%
±18%
pass
Pareto Cdf
0.236
0.228
+3.5%
±18%
pass
Geometric Cdf
0.099
0.097
+2.1%
±18%
pass
Pmf Pdf (15/15 passed)
Function
Current (ms)
Baseline (ms)
Diff %
Threshold
Status
Functions Beta Pdf
5.225
5.039
+3.7%
±25%
pass
Functions F Pdf
4.195
4.064
+3.2%
±25%
pass
Functions T Pdf
2.945
2.767
+6.4%
±25%
pass
Functions Chi Squared Pdf
1.951
1.937
+0.7%
±25%
pass
Functions Gamma Pdf
1.783
1.672
+6.6%
±25%
pass
Functions Lognormal Pdf
0.777
0.737
+5.4%
±25%
pass
Functions Weibull Pdf
0.595
0.578
+2.9%
±25%
pass
Functions Binomial Pmf
0.548
0.522
+5.0%
±25%
pass
Functions Normal Pdf
0.473
0.457
+3.5%
±25%
pass
Functions Pareto Pdf
0.400
0.377
+6.1%
±25%
pass
Functions Cauchy Pdf
0.377
0.365
+3.3%
±25%
pass
Functions Negative Binomial Pmf
0.354
0.335
+5.7%
±25%
pass
Functions Uniform Pdf
0.352
0.346
+1.7%
±25%
pass
Functions Exponential Pdf
0.351
0.353
-0.6%
±25%
pass
Functions Poisson Pmf
0.299
0.292
+2.4%
±25%
pass
Basic Stats (6/6 passed)
Function
Current (ms)
Baseline (ms)
Diff %
Threshold
Status
Median Absolute Deviation
5.073
4.901
+3.5%
±25%
pass
Percentile Calculation
2.183
2.072
+5.4%
±25%
pass
Median Calculation
2.149
2.071
+3.8%
±25%
pass
Mean Variance Calculation
2.047
1.967
+4.1%
±25%
pass
Sample Statistics
1.833
1.754
+4.5%
±25%
pass
Min Max Range Calculation
1.021
0.985
+3.7%
±25%
pass
Error Functions (6/6 passed)
Function
Current (ms)
Baseline (ms)
Diff %
Threshold
Status
Complementary Error Function Inverse
1.499
1.447
+3.6%
±25%
pass
Error Function Inverse
1.311
1.265
+3.6%
±25%
pass
Gamma Function
1.131
1.096
+3.2%
±25%
pass
Log Gamma
0.990
0.962
+2.9%
±25%
pass
Complementary Error Function
0.495
0.470
+5.3%
±25%
pass
Error Function
0.379
0.367
+3.3%
±25%
pass
Distributions Randv (1/1 passed)
Function
Current (ms)
Baseline (ms)
Diff %
Threshold
Status
Histogram
1.003
0.890
+12.7%
±25%
pass
Distributions Custom (1/1 passed)
Function
Current (ms)
Baseline (ms)
Diff %
Threshold
Status
Discrete Algorithms
0.827
0.765
+8.1%
±25%
pass
Distributions Randi (3/3 passed)
Function
Current (ms)
Baseline (ms)
Diff %
Threshold
Status
Binomial
0.752
0.774
-2.8%
±25%
pass
Poisson
0.277
0.271
+2.2%
±25%
pass
Uniform
0.064
0.064
+0.0%
±18%
pass
Distributions Randf (10/10 passed)
Function
Current (ms)
Baseline (ms)
Diff %
Threshold
Status
Beta
0.463
0.460
+0.7%
±25%
pass
Cauchy
0.255
0.251
+1.6%
±25%
pass
Gamma
0.217
0.210
+3.3%
±25%
pass
Normal
0.140
0.136
+2.9%
±25%
pass
Pareto
0.115
0.113
+1.8%
±25%
pass
Gaussian
0.110
0.108
+1.9%
±25%
pass
Triangular
0.103
0.102
+1.0%
±25%
pass
Weibull
0.093
0.090
+3.3%
±25%
pass
Exponential
0.079
0.076
+3.9%
±25%
pass
Uniform
0.070
0.068
+2.9%
±18%
pass
Distributions Advanced (1/1 passed)
Function
Current (ms)
Baseline (ms)
Diff %
Threshold
Status
Continuous Distributions
0.380
0.363
+4.7%
±25%
pass
Distributions Simple (1/1 passed)
Function
Current (ms)
Baseline (ms)
Diff %
Threshold
Status
Discrete Distributions
0.201
0.196
+2.6%
±25%
pass

Test Methodology

  • Baseline: Established performance thresholds based on historical data

  • Current: Latest test execution times in milliseconds

  • Diff %: Percentage change from baseline (negative = improvement, positive = regression)

  • Threshold: Acceptable variance range (typically ±20%)

  • Status: Pass/fail status based on threshold compliance

Performance tests are run automatically and results are updated with each test execution. Tests marked as “disabled” are not currently being evaluated for performance regressions.

Understanding the Results

🟢 Within threshold: Performance within acceptable thresholds

🔴 Above threshold: Performance degradation beyond threshold

Disabled: Tests currently disabled for performance monitoring

The dashboard is sorted by execution time (slowest functions first) to help identify potential optimization targets.