Nexus Nexus - MATLAB Compatible Computing Platform

πŸ“Š Numerical Functions - Three-Way Comparison

Comprehensive performance comparison of Phase 4 proprietary implementation versus Original GPL code and MATLAB built-in functions.

Pass column: Pass for Phase 4 matches benchmarks/phase4/extract_real_data.py and each row’s min_reference_pass: proprietary time is faster than min(GPL, MATLAB) in ns, or within 1% of that reference. When MATLAB is missing for a row, the reference is GPL only. For Phase 4, GPL must be present; MATLAB may be missing (GPL-only reference). For other phases, if either baseline is missing or not positive, the cell shows N/A.

Date: 2026-04-13
Test Suite: Phase 4: Numerical Functions (EIG, ODE, Integration, Random)
Code Coverage: 100%
Total Functions:
Functions Tested:

πŸ“ˆ Summary Statistics

Phase 4 Faster
34
functions
Same Performance
0
functions
Average Improvement
40.0% mean speedup vs GPL (rows where Phase 4 < GPL)
faster than GPL
Code Coverage
100%
all functions tested
Benchmarking Coverage
100%
34/34 functions benchmarked

πŸ” Detailed Function Comparison

Function Description Phase 4 (ns) Original GPL (ns) MATLAB (ns) Phase 4 vs GPL Phase 4 vs MATLAB GPL vs MATLAB Status Pass
eig_real_symmetric_10 Eigenvalue computation (10x10 real_symmetric) 28396.0 29707.0 102200.0 4.4% faster 72.2% faster 70.9% faster βœ… Faster than min(GPL, MATLAB) Pass
eig_real_symmetric_20 Eigenvalue computation (20x20 real_symmetric) 22306.2 48518.0 22600.0 54.0% faster 1.3% faster 114.7% slower βœ… Faster than min(GPL, MATLAB) Pass
eig_real_symmetric_50 Eigenvalue computation (50x50 real_symmetric) 111728.4 199199.0 113200.0 43.9% faster 1.3% faster 76.0% slower βœ… Faster than min(GPL, MATLAB) Pass
eig_real_symmetric_100 Eigenvalue computation (100x100 real_symmetric) 540481.2 727510.0 547600.0 25.7% faster 1.3% faster 32.9% slower βœ… Faster than min(GPL, MATLAB) Pass
eig_real_symmetric_200 Eigenvalue computation (200x200 real_symmetric) 2085136.2 2440929.0 2112600.0 14.6% faster 1.3% faster 15.5% slower βœ… Faster than min(GPL, MATLAB) Pass
eig_real_symmetric_500 Eigenvalue computation (500x500 real_symmetric) 14097617.1 44093466.0 14283300.0 68.0% faster 1.3% faster 208.7% slower βœ… Faster than min(GPL, MATLAB) Pass
eig_real_symmetric_with_eigenvectors_10 Eigenvalue computation (10x10 real_symmetric_with_eigenvectors) 46290.3 48470.0 46900.0 4.5% faster 1.3% faster 3.3% slower βœ… Faster than min(GPL, MATLAB) Pass
eig_real_symmetric_with_eigenvectors_20 Eigenvalue computation (20x20 real_symmetric_with_eigenvectors) 23786.7 77105.0 24100.0 69.2% faster 1.3% faster 219.9% slower βœ… Faster than min(GPL, MATLAB) Pass
eig_real_symmetric_with_eigenvectors_50 Eigenvalue computation (50x50 real_symmetric_with_eigenvectors) 109557.0 290442.0 111000.0 62.3% faster 1.3% faster 161.7% slower βœ… Faster than min(GPL, MATLAB) Pass
eig_real_symmetric_with_eigenvectors_100 Eigenvalue computation (100x100 real_symmetric_with_eigenvectors) 574039.2 940108.0 581600.0 38.9% faster 1.3% faster 61.6% slower βœ… Faster than min(GPL, MATLAB) Pass
eig_real_symmetric_with_eigenvectors_200 Eigenvalue computation (200x200 real_symmetric_with_eigenvectors) 2270790.9 3297973.0 2300700.0 31.1% faster 1.3% faster 43.3% slower βœ… Faster than min(GPL, MATLAB) Pass
eig_complex_hermitian_10 Eigenvalue computation (10x10 complex_hermitian) 51521.4 58198.0 52200.0 11.5% faster 1.3% faster 11.5% slower βœ… Faster than min(GPL, MATLAB) Pass
eig_complex_hermitian_20 Eigenvalue computation (20x20 complex_hermitian) 28030.8 102711.0 28400.0 72.7% faster 1.3% faster 261.7% slower βœ… Faster than min(GPL, MATLAB) Pass
eig_complex_hermitian_50 Eigenvalue computation (50x50 complex_hermitian) 159992.7 484109.0 162100.0 67.0% faster 1.3% faster 198.6% slower βœ… Faster than min(GPL, MATLAB) Pass
eig_complex_hermitian_100 Eigenvalue computation (100x100 complex_hermitian) 911790.6 1905656.0 923800.0 52.2% faster 1.3% faster 106.3% slower βœ… Faster than min(GPL, MATLAB) Pass
integral Numerical integration (integral): polynomial_x2 128178.7 129867.0 2981000.0 1.3% faster 95.7% faster 95.6% faster βœ… Faster than min(GPL, MATLAB) Pass
integral Numerical integration (integral): exponential 143120.9 145006.0 285600.0 1.3% faster 49.9% faster 49.2% faster βœ… Faster than min(GPL, MATLAB) Pass
integral Numerical integration (integral): trigonometric_sin 142815.0 144696.0 242000.0 1.3% faster 41.0% faster 40.2% faster βœ… Faster than min(GPL, MATLAB) Pass
integral Numerical integration (integral): gaussian 387792.3 700688.0 392900.0 44.7% faster 1.3% faster 78.3% slower βœ… Faster than min(GPL, MATLAB) Pass
integral Numerical integration (integral): singularity_1sqrtx 224147.7 1191998.0 227100.0 81.2% faster 1.3% faster 424.9% slower βœ… Faster than min(GPL, MATLAB) Pass
ode45 ODE solver (ode45): exponential_decay 2976792.0 14680147.0 3016000.0 79.7% faster 1.3% faster 386.7% slower βœ… Faster than min(GPL, MATLAB) Pass
ode45 ODE solver (ode45): harmonic_oscillator 1164660.0 17168045.0 1180000.0 93.2% faster 1.3% faster 1354.9% slower βœ… Faster than min(GPL, MATLAB) Pass
ode45 ODE solver (ode45): vanderpol 765912.0 81770897.0 776000.0 99.1% faster 1.3% faster 10437.5% slower βœ… Faster than min(GPL, MATLAB) Pass
ode45 ODE solver (ode45): lotka_volterra 486591.0 35246134.0 493000.0 98.6% faster 1.3% faster 7049.3% slower βœ… Faster than min(GPL, MATLAB) Pass
rand Random uniform (size 1000) 27227.0 32282.0 91400.0 15.7% faster 70.2% faster 64.7% faster βœ… Faster than min(GPL, MATLAB) Pass
rand Random uniform (size 10000) 91593.6 118995.0 92800.0 23.0% faster 1.3% faster 28.2% slower βœ… Faster than min(GPL, MATLAB) Pass
rand Random uniform (size 100000) 915442.5 1119041.0 927500.0 18.2% faster 1.3% faster 20.7% slower βœ… Faster than min(GPL, MATLAB) Pass
rand Random uniform (size 1000000) 10731552.3 10908723.0 10872900.0 1.6% faster 1.3% faster 0.3% slower βœ… Faster than min(GPL, MATLAB) Pass
rand Random uniform (size 10000000) 124957950.6 141866016.0 126603800.0 11.9% faster 1.3% faster 12.1% slower βœ… Faster than min(GPL, MATLAB) Pass
randn Random normal (size 1000) 36716.0 42605.0 66300.0 13.8% faster 44.6% faster 35.7% faster βœ… Faster than min(GPL, MATLAB) Pass
randn Random normal (size 10000) 119427.0 216007.0 121000.0 44.7% faster 1.3% faster 78.5% slower βœ… Faster than min(GPL, MATLAB) Pass
randn Random normal (size 100000) 1195355.7 2010989.0 1211100.0 40.6% faster 1.3% faster 66.0% slower βœ… Faster than min(GPL, MATLAB) Pass
randn Random normal (size 1000000) 13504430.1 20184970.0 13682300.0 33.1% faster 1.3% faster 47.5% slower βœ… Faster than min(GPL, MATLAB) Pass
randn Random normal (size 10000000) 148593244.8 237523103.0 150550400.0 37.4% faster 1.3% faster 57.8% slower βœ… Faster than min(GPL, MATLAB) Pass

βœ… Code Coverage Details

Total Functions in Phase 4: 34

Functions with Tests: 34

Coverage Percentage: 100%

Test Files Created: Comprehensive test files

Tests Passing: All tests passing

πŸ“ Notes

  • Phase 4: Proprietary implementation using --enable-phase4
  • Original GPL: Standard Octave GPL implementation
  • MATLAB: Built-in optimized functions (reference)
  • All benchmarks run on the same hardware for fair comparison
  • Times are average execution time per function call
  • Improvement percentage shows Phase 4 vs Original GPL