Skip to content

Latest commit

 

History

History

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 

README.md

Benchmarks

Comparison of the following libraries:

Run benchmark

$ pip install -r requirements.txt $ pytest --benchmark-sort=name --benchmark-group-by=func,param:octaves 

Results

------------------------------------------------------------------------------------------- benchmark 'test_scalar_3d octaves=1': 4 tests ------------------------------------------------------------------------------------------- Name (time in ns) Min Max Mean StdDev Median IQR Outliers OPS (Kops/s) Rounds Iterations ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- test_scalar_3d[1-noise.pnoise] 223.0909 (1.0) 3,413.0909 (1.0) 250.0502 (1.0) 114.6931 (1.0) 232.0455 (1.0) 16.3636 (1.0) 3076;8388 3,999.1963 (1.0) 193874 22 test_scalar_3d[1-noise.snoise] 325.0000 (1.46) 34,396.0000 (10.08) 396.0770 (1.58) 397.3378 (3.46) 377.0000 (1.62) 23.0000 (1.41) 203;6566 2,524.7615 (0.63) 181456 1 test_scalar_3d[1-pnoise] 41,048.0000 (184.00) 12,913,775.0000 (>1000.0) 49,704.9437 (198.78) 144,868.6746 (>1000.0) 43,432.0000 (187.17) 2,638.7500 (161.26) 10;1355 20.1187 (0.01) 8951 1 test_scalar_3d[1-vnoise] 65,770.0000 (294.81) 223,038.0000 (65.35) 72,658.9179 (290.58) 15,330.0892 (133.66) 68,039.0000 (293.21) 4,703.0000 (287.41) 423;614 13.7629 (0.00) 7146 1 ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- --------------------------------------------------------------------------------------------- benchmark 'test_scalar_3d octaves=4': 4 tests --------------------------------------------------------------------------------------------- Name (time in ns) Min Max Mean StdDev Median IQR Outliers OPS (Kops/s) Rounds Iterations ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- test_scalar_3d[4-noise.pnoise] 331.4500 (1.12) 5,923.4500 (1.0) 371.6796 (1.11) 122.1708 (1.06) 353.0500 (1.10) 41.0500 (1.02) 2095;2401 2,690.4893 (0.90) 141124 20 test_scalar_3d[4-noise.snoise] 295.2000 (1.0) 11,885.6500 (2.01) 336.3563 (1.0) 115.0081 (1.0) 320.8500 (1.0) 40.1000 (1.0) 1933;2163 2,973.0382 (1.0) 145307 20 test_scalar_3d[4-pnoise] 120,716.0000 (408.93) 31,103,366.0000 (>1000.0) 144,782.7418 (430.44) 412,303.9029 (>1000.0) 127,790.0000 (398.29) 14,079.5000 (351.11) 2;762 6.9069 (0.00) 5669 1 test_scalar_3d[4-vnoise] 260,277.0000 (881.70) 729,304.0000 (123.12) 294,168.6764 (874.57) 44,857.4589 (390.04) 274,232.0000 (854.70) 35,048.5000 (874.03) 267;200 3.3994 (0.00) 2457 1 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -------------------------------------------------------------------------------------------- benchmark 'test_scalar_3d octaves=8': 4 tests --------------------------------------------------------------------------------------------- Name (time in ns) Min Max Mean StdDev Median IQR Outliers OPS (Kops/s) Rounds Iterations ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- test_scalar_3d[8-noise.pnoise] 465.6000 (1.14) 36,771.5000 (6.67) 599.4026 (1.30) 607.5088 (4.09) 504.6000 (1.17) 51.7500 (1.0) 2828;5512 1,668.3278 (0.77) 99463 20 test_scalar_3d[8-noise.snoise] 408.3000 (1.0) 5,513.0500 (1.0) 459.8277 (1.0) 148.6012 (1.0) 431.3500 (1.0) 52.2000 (1.01) 2301;2517 2,174.7278 (1.0) 118639 20 test_scalar_3d[8-pnoise] 225,583.0000 (552.49) 2,131,215.0000 (386.58) 257,493.2624 (559.98) 63,138.9205 (424.89) 246,780.0000 (572.11) 26,677.0000 (515.50) 189;225 3.8836 (0.00) 3296 1 test_scalar_3d[8-vnoise] 524,291.0000 (>1000.0) 2,480,426.0000 (449.92) 662,015.0655 (>1000.0) 188,261.5911 (>1000.0) 624,837.0000 (>1000.0) 89,885.5000 (>1000.0) 68;83 1.5105 (0.00) 916 1 ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- --------------------------------------------------------------------------------- benchmark 'test_vectorized_1d octaves=1': 4 tests --------------------------------------------------------------------------------- Name (time in us) Min Max Mean StdDev Median IQR Outliers OPS (Kops/s) Rounds Iterations --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- test_vectorized_1d[1-noise.pnoise] 363.2720 (4.28) 1,924.3280 (2.62) 481.5188 (4.25) 134.5519 (3.44) 441.7620 (4.06) 155.3395 (4.09) 279;105 2.0768 (0.24) 2595 1 test_vectorized_1d[1-noise.snoise] 597.3860 (7.04) 5,520.3810 (7.52) 759.4623 (6.71) 225.6506 (5.76) 698.7620 (6.42) 164.6898 (4.34) 100;76 1.3167 (0.15) 1107 1 test_vectorized_1d[1-pnoise] 201.9220 (2.38) 734.2300 (1.0) 256.3566 (2.26) 55.1163 (1.41) 259.0880 (2.38) 71.7837 (1.89) 322;73 3.9008 (0.44) 2897 1 test_vectorized_1d[1-vnoise] 84.8660 (1.0) 1,035.1030 (1.41) 113.1906 (1.0) 39.1452 (1.0) 108.9020 (1.0) 37.9405 (1.0) 489;246 8.8347 (1.0) 5328 1 --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- --------------------------------------------------------------------------------- benchmark 'test_vectorized_1d octaves=4': 4 tests --------------------------------------------------------------------------------- Name (time in us) Min Max Mean StdDev Median IQR Outliers OPS (Kops/s) Rounds Iterations --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- test_vectorized_1d[4-noise.pnoise] 401.6650 (1.14) 2,774.1110 (2.27) 633.3241 (1.37) 155.7491 (1.59) 598.9365 (1.32) 138.8190 (1.03) 276;73 1.5790 (0.73) 1564 1 test_vectorized_1d[4-noise.snoise] 672.1770 (1.91) 2,449.9840 (2.01) 834.0673 (1.80) 206.8191 (2.12) 767.2035 (1.69) 196.8930 (1.46) 129;70 1.1989 (0.55) 1112 1 test_vectorized_1d[4-pnoise] 645.3610 (1.84) 2,265.8820 (1.86) 875.7541 (1.89) 223.5010 (2.29) 831.5560 (1.83) 262.5730 (1.94) 151;33 1.1419 (0.53) 782 1 test_vectorized_1d[4-vnoise] 351.2950 (1.0) 1,220.0900 (1.0) 462.8250 (1.0) 97.6693 (1.0) 455.2075 (1.0) 135.1820 (1.0) 691;52 2.1606 (1.0) 2060 1 --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ----------------------------------------------------------------------------------- benchmark 'test_vectorized_1d octaves=8': 4 tests ----------------------------------------------------------------------------------- Name (time in us) Min Max Mean StdDev Median IQR Outliers OPS Rounds Iterations ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- test_vectorized_1d[8-noise.pnoise] 446.1390 (1.0) 1,036.2490 (1.0) 507.9053 (1.0) 66.8371 (1.0) 490.9790 (1.0) 71.5640 (1.0) 199;95 1,968.8708 (1.0) 1979 1 test_vectorized_1d[8-noise.snoise] 758.2710 (1.70) 1,420.9430 (1.37) 858.3114 (1.69) 93.4572 (1.40) 834.1275 (1.70) 114.1760 (1.60) 187;46 1,165.0783 (0.59) 1242 1 test_vectorized_1d[8-pnoise] 1,208.0310 (2.71) 2,134.9160 (2.06) 1,360.0024 (2.68) 135.8579 (2.03) 1,324.3990 (2.70) 140.6180 (1.96) 140;52 735.2928 (0.37) 752 1 test_vectorized_1d[8-vnoise] 682.3870 (1.53) 1,457.2030 (1.41) 759.9981 (1.50) 91.3210 (1.37) 715.7770 (1.46) 88.1242 (1.23) 141;58 1,315.7928 (0.67) 1135 1 ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ---------------------------------------------------------------------------- benchmark 'test_vectorized_2d octaves=1': 4 tests ---------------------------------------------------------------------------- Name (time in ms) Min Max Mean StdDev Median IQR Outliers OPS Rounds Iterations ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- test_vectorized_2d[1-noise.pnoise] 470.4752 (2.81) 528.9167 (2.91) 491.7043 (2.85) 25.3581 (6.20) 482.4654 (2.82) 41.2031 (7.11) 1;0 2.0337 (0.35) 5 1 test_vectorized_2d[1-noise.snoise] 468.3419 (2.80) 478.8216 (2.64) 473.8846 (2.75) 4.0869 (1.0) 475.4077 (2.78) 5.7977 (1.0) 2;0 2.1102 (0.36) 5 1 test_vectorized_2d[1-pnoise] 247.7174 (1.48) 270.9073 (1.49) 261.8150 (1.52) 8.6994 (2.13) 262.3386 (1.54) 9.3140 (1.61) 2;0 3.8195 (0.66) 5 1 test_vectorized_2d[1-vnoise] 167.4961 (1.0) 181.6740 (1.0) 172.4139 (1.0) 5.3896 (1.32) 170.7880 (1.0) 8.0154 (1.38) 2;0 5.8000 (1.0) 7 1 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -------------------------------------------------------------------------------- benchmark 'test_vectorized_2d octaves=4': 4 tests -------------------------------------------------------------------------------- Name (time in ms) Min Max Mean StdDev Median IQR Outliers OPS Rounds Iterations ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- test_vectorized_2d[4-noise.pnoise] 549.4152 (1.0) 665.5394 (1.0) 588.1737 (1.0) 48.6267 (6.84) 568.3799 (1.0) 68.7426 (8.72) 1;0 1.7002 (1.0) 5 1 test_vectorized_2d[4-noise.snoise] 594.7936 (1.08) 1,111.8901 (1.67) 859.5695 (1.46) 248.9013 (35.00) 860.7584 (1.51) 487.3479 (61.85) 2;0 1.1634 (0.68) 5 1 test_vectorized_2d[4-pnoise] 930.3855 (1.69) 1,117.1964 (1.68) 1,027.2090 (1.75) 84.0058 (11.81) 1,067.3515 (1.88) 145.0032 (18.40) 2;0 0.9735 (0.57) 5 1 test_vectorized_2d[4-vnoise] 713.0462 (1.30) 732.6840 (1.10) 722.1786 (1.23) 7.1119 (1.0) 721.4861 (1.27) 7.8797 (1.0) 2;0 1.3847 (0.81) 5 1 ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- --------------------------------------------------------------------------------- benchmark 'test_vectorized_2d octaves=8': 4 tests --------------------------------------------------------------------------------- Name (time in ms) Min Max Mean StdDev Median IQR Outliers OPS Rounds Iterations --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- test_vectorized_2d[8-noise.pnoise] 636.6542 (1.0) 684.4689 (1.0) 662.8106 (1.0) 17.6360 (1.21) 667.0540 (1.0) 21.0056 (1.05) 2;0 1.5087 (1.0) 5 1 test_vectorized_2d[8-noise.snoise] 725.9492 (1.14) 763.1095 (1.11) 740.2420 (1.12) 14.6181 (1.0) 737.5242 (1.11) 20.0548 (1.0) 1;0 1.3509 (0.90) 5 1 test_vectorized_2d[8-pnoise] 1,784.5430 (2.80) 2,144.4872 (3.13) 1,986.6168 (3.00) 150.4502 (10.29) 1,988.2818 (2.98) 253.8800 (12.66) 2;0 0.5034 (0.33) 5 1 test_vectorized_2d[8-vnoise] 1,381.2844 (2.17) 1,711.7833 (2.50) 1,553.2512 (2.34) 146.4994 (10.02) 1,506.3540 (2.26) 257.3088 (12.83) 3;0 0.6438 (0.43) 5 1 --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ---------------------------------------------------------------------------- benchmark 'test_vectorized_3d octaves=1': 4 tests ---------------------------------------------------------------------------- Name (time in ms) Min Max Mean StdDev Median IQR Outliers OPS Rounds Iterations ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- test_vectorized_3d[1-noise.pnoise] 535.6346 (2.16) 571.5993 (2.24) 545.4877 (2.16) 14.9381 (4.63) 539.6274 (2.13) 14.3237 (3.10) 1;0 1.8332 (0.46) 5 1 test_vectorized_3d[1-noise.snoise] 507.0447 (2.05) 520.6631 (2.04) 514.4781 (2.04) 5.0409 (1.56) 513.8194 (2.02) 5.9767 (1.29) 2;0 1.9437 (0.49) 5 1 test_vectorized_3d[1-pnoise] 247.6188 (1.0) 255.6246 (1.0) 252.4402 (1.0) 3.2290 (1.0) 253.9174 (1.0) 4.6264 (1.0) 1;0 3.9613 (1.0) 5 1 test_vectorized_3d[1-vnoise] 332.9497 (1.34) 362.8714 (1.42) 349.4894 (1.38) 11.3269 (3.51) 350.7837 (1.38) 15.4984 (3.35) 2;0 2.8613 (0.72) 5 1 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -------------------------------------------------------------------------------- benchmark 'test_vectorized_3d octaves=4': 4 tests -------------------------------------------------------------------------------- Name (time in ms) Min Max Mean StdDev Median IQR Outliers OPS Rounds Iterations ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- test_vectorized_3d[4-noise.pnoise] 669.7295 (1.09) 686.0808 (1.03) 675.3969 (1.07) 6.7379 (1.0) 673.0689 (1.07) 9.5272 (1.0) 1;0 1.4806 (0.93) 5 1 test_vectorized_3d[4-noise.snoise] 613.2309 (1.0) 663.6800 (1.0) 630.5006 (1.0) 20.2885 (3.01) 630.0901 (1.0) 24.5700 (2.58) 1;0 1.5860 (1.0) 5 1 test_vectorized_3d[4-pnoise] 927.8600 (1.51) 961.4077 (1.45) 941.2455 (1.49) 12.2906 (1.82) 939.6744 (1.49) 10.0730 (1.06) 2;1 1.0624 (0.67) 5 1 test_vectorized_3d[4-vnoise] 1,464.3058 (2.39) 1,513.8746 (2.28) 1,491.1599 (2.37) 18.5975 (2.76) 1,491.1426 (2.37) 24.8402 (2.61) 2;0 0.6706 (0.42) 5 1 ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -------------------------------------------------------------------------------- benchmark 'test_vectorized_3d octaves=8': 4 tests -------------------------------------------------------------------------------- Name (time in ms) Min Max Mean StdDev Median IQR Outliers OPS Rounds Iterations ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- test_vectorized_3d[8-noise.pnoise] 799.6332 (1.04) 807.0058 (1.04) 804.4880 (1.04) 3.4236 (1.0) 806.8379 (1.04) 5.4326 (1.0) 1;0 1.2430 (0.96) 5 1 test_vectorized_3d[8-noise.snoise] 768.2210 (1.0) 779.3746 (1.0) 775.4133 (1.0) 4.6014 (1.34) 777.1910 (1.0) 6.6210 (1.22) 1;0 1.2896 (1.0) 5 1 test_vectorized_3d[8-pnoise] 1,796.2045 (2.34) 1,912.4747 (2.45) 1,866.3104 (2.41) 57.1084 (16.68) 1,904.7939 (2.45) 99.5261 (18.32) 1;0 0.5358 (0.42) 5 1 test_vectorized_3d[8-vnoise] 2,979.5610 (3.88) 3,045.3879 (3.91) 3,011.0120 (3.88) 25.4744 (7.44) 3,005.1390 (3.87) 37.2978 (6.87) 2;0 0.3321 (0.26) 5 1 ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Legend: Outliers: 1 Standard Deviation from Mean; 1.5 IQR (InterQuartile Range) from 1st Quartile and 3rd Quartile. OPS: Operations Per Second, computed as 1 / Mean