From 80404e1634f011ae841f0b1487e9e42bd0ac873d Mon Sep 17 00:00:00 2001 From: Karan Anand Date: Wed, 22 Jan 2025 21:34:55 -0800 Subject: [PATCH] bench: move random number generation outside the benchmarking loops --- type: pre_commit_static_analysis_report description: Results of running static analysis checks when committing changes. report: - task: lint_filenames status: passed - task: lint_editorconfig status: passed - task: lint_markdown status: na - task: lint_package_json status: na - task: lint_repl_help status: na - task: lint_javascript_src status: na - task: lint_javascript_cli status: na - task: lint_javascript_examples status: na - task: lint_javascript_tests status: na - task: lint_javascript_benchmarks status: passed - task: lint_python status: na - task: lint_r status: na - task: lint_c_src status: na - task: lint_c_examples status: na - task: lint_c_benchmarks status: na - task: lint_c_tests_fixtures status: na - task: lint_shell status: na - task: lint_typescript_declarations status: na - task: lint_typescript_tests status: na - task: lint_license_headers status: passed --- --- type: pre_push_report description: Results of running various checks prior to pushing changes. report: - task: run_javascript_examples status: na - task: run_c_examples status: na - task: run_cpp_examples status: na - task: run_javascript_readme_examples status: na - task: run_c_benchmarks status: na - task: run_cpp_benchmarks status: na - task: run_fortran_benchmarks status: na - task: run_javascript_benchmarks status: na - task: run_julia_benchmarks status: na - task: run_python_benchmarks status: na - task: run_r_benchmarks status: na - task: run_javascript_tests status: na --- --- .../dists/cosine/cdf/benchmark/benchmark.js | 17 +- .../cosine/cdf/benchmark/benchmark.native.js | 8 +- .../dists/cosine/ctor/benchmark/benchmark.js | 146 ++++++++++++++---- .../cosine/kurtosis/benchmark/benchmark.js | 6 +- .../kurtosis/benchmark/benchmark.native.js | 6 +- .../cosine/logcdf/benchmark/benchmark.js | 17 +- .../logcdf/benchmark/benchmark.native.js | 8 +- .../cosine/logpdf/benchmark/benchmark.js | 17 +- .../logpdf/benchmark/benchmark.native.js | 8 +- .../dists/cosine/mean/benchmark/benchmark.js | 16 +- .../cosine/median/benchmark/benchmark.js | 6 +- .../median/benchmark/benchmark.native.js | 6 +- .../dists/cosine/mgf/benchmark/benchmark.js | 17 +- .../cosine/mgf/benchmark/benchmark.native.js | 8 +- .../dists/cosine/mode/benchmark/benchmark.js | 6 +- .../cosine/mode/benchmark/benchmark.native.js | 6 +- .../dists/cosine/pdf/benchmark/benchmark.js | 17 +- .../cosine/pdf/benchmark/benchmark.native.js | 8 +- .../cosine/quantile/benchmark/benchmark.js | 28 +++- .../cosine/skewness/benchmark/benchmark.js | 6 +- .../skewness/benchmark/benchmark.native.js | 6 +- .../dists/cosine/stdev/benchmark/benchmark.js | 6 +- .../stdev/benchmark/benchmark.native.js | 6 +- .../cosine/variance/benchmark/benchmark.js | 16 +- 24 files changed, 269 insertions(+), 122 deletions(-) diff --git a/lib/node_modules/@stdlib/stats/base/dists/cosine/cdf/benchmark/benchmark.js b/lib/node_modules/@stdlib/stats/base/dists/cosine/cdf/benchmark/benchmark.js index 8ec1efd19217..c56308852d7b 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/cosine/cdf/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/stats/base/dists/cosine/cdf/benchmark/benchmark.js @@ -22,7 +22,7 @@ var bench = require( '@stdlib/bench' ); var Float64Array = require( '@stdlib/array/float64' ); -var randu = require( '@stdlib/random/base/randu' ); +var uniform = require( '@stdlib/random/base/uniform' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var EPS = require( '@stdlib/constants/float64/eps' ); var pkg = require( './../package.json' ).name; @@ -44,9 +44,9 @@ bench( pkg, function benchmark( b ) { mu = new Float64Array( len ); s = new Float64Array( len ); for ( i = 0; i < len; i++ ) { - x[ i ] = ( randu()*100.0 ) - 50.0; - mu[ i ] = ( randu()*20.0 ) - 10.0; - s[ i ] = ( randu()*5.0 ) + EPS; + x[ i ] = uniform( -50.0, 50.0 ); + mu[ i ] = uniform( -10.0, 10.0 ); + s[ i ] = uniform( EPS, 5.0 ); } b.tic(); @@ -66,6 +66,7 @@ bench( pkg, function benchmark( b ) { bench( pkg+':factory', function benchmark( b ) { var mycdf; + var len; var mu; var s; var x; @@ -75,11 +76,15 @@ bench( pkg+':factory', function benchmark( b ) { mu = 10.0; s = 4.0; mycdf = cdf.factory( mu, s ); + len = 100; + x = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + x[ i ] = uniform( 0.0, 50.0 ); + } b.tic(); for ( i = 0; i < b.iterations; i++ ) { - x = ( randu()*50.0 ); - y = mycdf( x ); + y = mycdf( x[ i % len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } diff --git a/lib/node_modules/@stdlib/stats/base/dists/cosine/cdf/benchmark/benchmark.native.js b/lib/node_modules/@stdlib/stats/base/dists/cosine/cdf/benchmark/benchmark.native.js index 8bd957351a62..62e17ce9dc29 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/cosine/cdf/benchmark/benchmark.native.js +++ b/lib/node_modules/@stdlib/stats/base/dists/cosine/cdf/benchmark/benchmark.native.js @@ -23,7 +23,7 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); var Float64Array = require( '@stdlib/array/float64' ); -var randu = require( '@stdlib/random/base/randu' ); +var uniform = require( '@stdlib/random/base/uniform' ); var EPS = require( '@stdlib/constants/float64/eps' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var tryRequire = require( '@stdlib/utils/try-require' ); @@ -53,9 +53,9 @@ bench( pkg+'::native', opts, function benchmark( b ) { mu = new Float64Array( len ); s = new Float64Array( len ); for ( i = 0; i < len; i++ ) { - x[ i ] = ( randu()*100.0 ) - 50.0; - mu[ i ] = ( randu()*20.0 ) - 10.0; - s[ i ] = ( randu()*5.0 ) + EPS; + x[ i ] = uniform( -50.0, 50.0 ); + mu[ i ] = uniform( -10.0, 10.0 ); + s[ i ] = uniform( EPS, 5.0 ); } b.tic(); diff --git a/lib/node_modules/@stdlib/stats/base/dists/cosine/ctor/benchmark/benchmark.js b/lib/node_modules/@stdlib/stats/base/dists/cosine/ctor/benchmark/benchmark.js index 2d1f76b0eb4b..1434b9c80518 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/cosine/ctor/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/stats/base/dists/cosine/ctor/benchmark/benchmark.js @@ -21,7 +21,8 @@ // MODULES // var bench = require( '@stdlib/bench' ); -var randu = require( '@stdlib/random/base/randu' ); +var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var EPS = require( '@stdlib/constants/float64/eps' ); var pkg = require( './../package.json' ).name; @@ -32,15 +33,22 @@ var Cosine = require( './../lib' ); bench( pkg+'::instantiation', function benchmark( bm ) { var dist; + var len; var mu; var s; var i; + len = 100; + mu = new Float64Array( len ); + s = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + mu[ i ] = uniform( EPS, 10.0 ); + s[ i ] = uniform( EPS, 10.0 ); + } + bm.tic(); for ( i = 0; i < bm.iterations; i++ ) { - mu = ( randu() * 10.0 ) + EPS; - s = ( randu() * 10.0 ) + EPS; - dist = new Cosine( mu, s ); + dist = new Cosine( mu[ i % len ], s[ i % len ] ); if ( !( dist instanceof Cosine ) ) { bm.fail( 'should return a distribution instance' ); } @@ -81,6 +89,7 @@ bench( pkg+'::get:mu', function benchmark( bm ) { bench( pkg+'::set:mu', function benchmark( bm ) { var dist; + var len; var mu; var s; var y; @@ -89,12 +98,16 @@ bench( pkg+'::set:mu', function benchmark( bm ) { mu = 2.0; s = 3.0; dist = new Cosine( mu, s ); + len = 100; + y = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + y[ i ] = uniform( EPS, 100.0 ); + } bm.tic(); for ( i = 0; i < bm.iterations; i++ ) { - y = ( 100.0*randu() ) + EPS; - dist.mu = y; - if ( dist.mu !== y ) { + dist.mu = y[ i % len ]; + if ( dist.mu !== y[ i % len ] ) { bm.fail( 'should return set value' ); } } @@ -134,6 +147,7 @@ bench( pkg+'::get:s', function benchmark( bm ) { bench( pkg+'::set:s', function benchmark( bm ) { var dist; + var len; var mu; var s; var y; @@ -142,12 +156,16 @@ bench( pkg+'::set:s', function benchmark( bm ) { mu = 2.0; s = 3.0; dist = new Cosine( mu, s ); + len = 100; + y = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + y[ i ] = uniform( EPS, 100.0 ); + } bm.tic(); for ( i = 0; i < bm.iterations; i++ ) { - y = ( 100.0*randu() ) + EPS; - dist.s = y; - if ( dist.s !== y ) { + dist.s = y[ i % len ]; + if ( dist.s !== y[ i % len ] ) { bm.fail( 'should return set value' ); } } @@ -161,7 +179,9 @@ bench( pkg+'::set:s', function benchmark( bm ) { bench( pkg+':kurtosis', function benchmark( bm ) { var dist; + var len; var mu; + var x; var s; var y; var i; @@ -169,10 +189,15 @@ bench( pkg+':kurtosis', function benchmark( bm ) { mu = 2.0; s = 3.0; dist = new Cosine( mu, s ); + len = 100; + x = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + x[ i ] = uniform( EPS, 100.0 ); + } bm.tic(); for ( i = 0; i < bm.iterations; i++ ) { - dist.mu = ( 100.0*randu() ) + EPS; + dist.mu = x[ i % len ]; y = dist.kurtosis; if ( isnan( y ) ) { bm.fail( 'should not return NaN' ); @@ -188,7 +213,9 @@ bench( pkg+':kurtosis', function benchmark( bm ) { bench( pkg+':mean', function benchmark( bm ) { var dist; + var len; var mu; + var x; var s; var y; var i; @@ -196,10 +223,15 @@ bench( pkg+':mean', function benchmark( bm ) { mu = 2.0; s = 3.0; dist = new Cosine( mu, s ); + len = 100; + x = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + x[ i ] = uniform( EPS, 100.0 ); + } bm.tic(); for ( i = 0; i < bm.iterations; i++ ) { - dist.mu = ( 100.0*randu() ) + EPS; + dist.mu = x[ i % len ]; y = dist.mean; if ( isnan( y ) ) { bm.fail( 'should not return NaN' ); @@ -215,7 +247,9 @@ bench( pkg+':mean', function benchmark( bm ) { bench( pkg+':median', function benchmark( bm ) { var dist; + var len; var mu; + var x; var s; var y; var i; @@ -223,10 +257,15 @@ bench( pkg+':median', function benchmark( bm ) { mu = 2.0; s = 3.0; dist = new Cosine( mu, s ); + len = 100; + x = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + x[ i ] = uniform( EPS, 100.0 ); + } bm.tic(); for ( i = 0; i < bm.iterations; i++ ) { - dist.mu = ( 100.0*randu() ) + EPS; + dist.mu = x[ i % len ]; y = dist.median; if ( isnan( y ) ) { bm.fail( 'should not return NaN' ); @@ -242,7 +281,9 @@ bench( pkg+':median', function benchmark( bm ) { bench( pkg+':mode', function benchmark( bm ) { var dist; + var len; var mu; + var x; var s; var y; var i; @@ -250,10 +291,15 @@ bench( pkg+':mode', function benchmark( bm ) { mu = 2.0; s = 3.0; dist = new Cosine( mu, s ); + len = 100; + x = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + x[ i ] = uniform( 1.0 + EPS, 100.0 ); + } bm.tic(); for ( i = 0; i < bm.iterations; i++ ) { - dist.mu = ( 100.0*randu() ) + 1.0 + EPS; + dist.mu = x[ i % len ]; y = dist.mode; if ( isnan( y ) ) { bm.fail( 'should not return NaN' ); @@ -269,7 +315,9 @@ bench( pkg+':mode', function benchmark( bm ) { bench( pkg+':skewness', function benchmark( bm ) { var dist; + var len; var mu; + var x; var s; var y; var i; @@ -277,10 +325,15 @@ bench( pkg+':skewness', function benchmark( bm ) { mu = 2.0; s = 3.0; dist = new Cosine( mu, s ); + len = 100; + x = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + x[ i ] = uniform( EPS, 100.0 ); + } bm.tic(); for ( i = 0; i < bm.iterations; i++ ) { - dist.mu = ( 100.0*randu() ) + EPS; + dist.mu = x[ i % len ]; y = dist.skewness; if ( isnan( y ) ) { bm.fail( 'should not return NaN' ); @@ -296,7 +349,9 @@ bench( pkg+':skewness', function benchmark( bm ) { bench( pkg+':stdev', function benchmark( bm ) { var dist; + var len; var mu; + var x; var s; var y; var i; @@ -304,10 +359,15 @@ bench( pkg+':stdev', function benchmark( bm ) { mu = 2.0; s = 3.0; dist = new Cosine( mu, s ); + len = 100; + x = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + x[ i ] = uniform( EPS, 100.0 ); + } bm.tic(); for ( i = 0; i < bm.iterations; i++ ) { - dist.mu = ( 100.0*randu() ) + EPS; + dist.mu = x[ i % len ]; y = dist.stdev; if ( isnan( y ) ) { bm.fail( 'should not return NaN' ); @@ -323,7 +383,9 @@ bench( pkg+':stdev', function benchmark( bm ) { bench( pkg+':variance', function benchmark( bm ) { var dist; + var len; var mu; + var x; var s; var y; var i; @@ -331,10 +393,15 @@ bench( pkg+':variance', function benchmark( bm ) { mu = 2.0; s = 3.0; dist = new Cosine( mu, s ); + len = 100; + x = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + x[ i ] = uniform( EPS, 100.0 ); + } bm.tic(); for ( i = 0; i < bm.iterations; i++ ) { - dist.mu = ( 100.0*randu() ) + EPS; + dist.mu = x[ i % len ]; y = dist.variance; if ( isnan( y ) ) { bm.fail( 'should not return NaN' ); @@ -350,6 +417,7 @@ bench( pkg+':variance', function benchmark( bm ) { bench( pkg+':cdf', function benchmark( bm ) { var dist; + var len; var mu; var s; var x; @@ -359,11 +427,15 @@ bench( pkg+':cdf', function benchmark( bm ) { mu = 2.0; s = 3.0; dist = new Cosine( mu, s ); + len = 100; + x = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + x[ i ] = uniform( -3.0, 3.0 ); + } bm.tic(); for ( i = 0; i < bm.iterations; i++ ) { - x = ( randu()*6.0 ) - 3.0; - y = dist.cdf( x ); + y = dist.cdf( x[ i % len ] ); if ( isnan( y ) ) { bm.fail( 'should not return NaN' ); } @@ -378,6 +450,7 @@ bench( pkg+':cdf', function benchmark( bm ) { bench( pkg+':logpdf', function benchmark( bm ) { var dist; + var len; var mu; var s; var x; @@ -387,11 +460,15 @@ bench( pkg+':logpdf', function benchmark( bm ) { mu = 1.0; s = 2.0; dist = new Cosine( mu, s ); + len = 100; + x = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + x[ i ] = uniform( -3.0, 3.0 ); + } bm.tic(); for ( i = 0; i < bm.iterations; i++ ) { - x = ( randu()*6.0 ) - 3.0; - y = dist.logpdf( x ); + y = dist.logpdf( x[ i % len ] ); if ( isnan( y ) ) { bm.fail( 'should not return NaN' ); } @@ -406,6 +483,7 @@ bench( pkg+':logpdf', function benchmark( bm ) { bench( pkg+':mgf', function benchmark( bm ) { var dist; + var len; var mu; var s; var x; @@ -415,11 +493,15 @@ bench( pkg+':mgf', function benchmark( bm ) { mu = 2.0; s = 0.2; dist = new Cosine( mu, s ); + len = 100; + x = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + x[ i ] = uniform( 0.0, 1.0 ); + } bm.tic(); for ( i = 0; i < bm.iterations; i++ ) { - x = randu(); - y = dist.mgf( x ); + y = dist.mgf( x[ i % len ] ); if ( isnan( y ) ) { bm.fail( 'should not return NaN' ); } @@ -434,6 +516,7 @@ bench( pkg+':mgf', function benchmark( bm ) { bench( pkg+':pdf', function benchmark( bm ) { var dist; + var len; var mu; var s; var x; @@ -443,11 +526,15 @@ bench( pkg+':pdf', function benchmark( bm ) { mu = 2.0; s = 3.0; dist = new Cosine( mu, s ); + len = 100; + x = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + x[ i ] = uniform( -3.0, 3.0 ); + } bm.tic(); for ( i = 0; i < bm.iterations; i++ ) { - x = ( randu()*6.0 ) - 3.0; - y = dist.pdf( x ); + y = dist.pdf( x[ i % len ] ); if ( isnan( y ) ) { bm.fail( 'should not return NaN' ); } @@ -462,6 +549,7 @@ bench( pkg+':pdf', function benchmark( bm ) { bench( pkg+':quantile', function benchmark( bm ) { var dist; + var len; var mu; var s; var x; @@ -471,11 +559,15 @@ bench( pkg+':quantile', function benchmark( bm ) { mu = 2.0; s = 3.0; dist = new Cosine( mu, s ); + len = 100; + x = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + x[ i ] = uniform( 0.0, 1.0 ); + } bm.tic(); for ( i = 0; i < bm.iterations; i++ ) { - x = randu(); - y = dist.quantile( x ); + y = dist.quantile( x[ i % len ] ); if ( isnan( y ) ) { bm.fail( 'should not return NaN' ); } diff --git a/lib/node_modules/@stdlib/stats/base/dists/cosine/kurtosis/benchmark/benchmark.js b/lib/node_modules/@stdlib/stats/base/dists/cosine/kurtosis/benchmark/benchmark.js index c1dacdf36635..20b217d1d6ce 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/cosine/kurtosis/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/stats/base/dists/cosine/kurtosis/benchmark/benchmark.js @@ -22,7 +22,7 @@ var bench = require( '@stdlib/bench' ); var Float64Array = require( '@stdlib/array/float64' ); -var randu = require( '@stdlib/random/base/randu' ); +var uniform = require( '@stdlib/random/base/uniform' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var EPS = require( '@stdlib/constants/float64/eps' ); var pkg = require( './../package.json' ).name; @@ -42,8 +42,8 @@ bench( pkg, function benchmark( b ) { mu = new Float64Array( len ); s = new Float64Array( len ); for ( i = 0; i < len; i++ ) { - mu[ i ] = ( randu()*100.0 ) - 50.0; - s[ i ] = ( randu()*20.0 ) + EPS; + mu[ i ] = uniform( -50.0, 50.0 ); + s[ i ] = uniform( EPS, 20.0 ); } b.tic(); diff --git a/lib/node_modules/@stdlib/stats/base/dists/cosine/kurtosis/benchmark/benchmark.native.js b/lib/node_modules/@stdlib/stats/base/dists/cosine/kurtosis/benchmark/benchmark.native.js index 64a3c7ccf7de..3065fbb77fc2 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/cosine/kurtosis/benchmark/benchmark.native.js +++ b/lib/node_modules/@stdlib/stats/base/dists/cosine/kurtosis/benchmark/benchmark.native.js @@ -23,7 +23,7 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); var Float64Array = require( '@stdlib/array/float64' ); -var randu = require( '@stdlib/random/base/randu' ); +var uniform = require( '@stdlib/random/base/uniform' ); var EPS = require( '@stdlib/constants/float64/eps' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var tryRequire = require( '@stdlib/utils/try-require' ); @@ -51,8 +51,8 @@ bench( pkg+'::native', opts, function benchmark( b ) { mu = new Float64Array( len ); s = new Float64Array( len ); for ( i = 0; i < len; i++ ) { - mu[ i ] = ( randu()*100.0 ) - 50.0; - s[ i ] = ( randu()*20.0 ) + EPS; + mu[ i ] = uniform( -50.0, 50.0 ); + s[ i ] = uniform( EPS, 20.0 ); } b.tic(); diff --git a/lib/node_modules/@stdlib/stats/base/dists/cosine/logcdf/benchmark/benchmark.js b/lib/node_modules/@stdlib/stats/base/dists/cosine/logcdf/benchmark/benchmark.js index b75221e4999a..fed8b0f345e4 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/cosine/logcdf/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/stats/base/dists/cosine/logcdf/benchmark/benchmark.js @@ -22,7 +22,7 @@ var bench = require( '@stdlib/bench' ); var Float64Array = require( '@stdlib/array/float64' ); -var randu = require( '@stdlib/random/base/randu' ); +var uniform = require( '@stdlib/random/base/uniform' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var EPS = require( '@stdlib/constants/float64/eps' ); var pkg = require( './../package.json' ).name; @@ -44,9 +44,9 @@ bench( pkg, function benchmark( b ) { mu = new Float64Array( len ); s = new Float64Array( len ); for ( i = 0; i < len; i++ ) { - x[ i ] = ( randu()*100.0 ) - 50.0; - mu[ i ] = ( randu()*20.0 ) - 10.0; - s[ i ] = ( randu()*5.0 ) + EPS; + x[ i ] = uniform( -50.0, 50.0 ); + mu[ i ] = uniform( -10.0, 10.0 ); + s[ i ] = uniform( EPS, 5.0 ); } b.tic(); @@ -66,6 +66,7 @@ bench( pkg, function benchmark( b ) { bench( pkg+':factory', function benchmark( b ) { var mylogcdf; + var len; var mu; var s; var x; @@ -75,11 +76,15 @@ bench( pkg+':factory', function benchmark( b ) { mu = 10.0; s = 4.0; mylogcdf = logcdf.factory( mu, s ); + len = 100; + x = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + x[ i ] = uniform( 0.0, 50.0 ); + } b.tic(); for ( i = 0; i < b.iterations; i++ ) { - x = ( randu()*50.0 ); - y = mylogcdf( x ); + y = mylogcdf( x[ i % len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } diff --git a/lib/node_modules/@stdlib/stats/base/dists/cosine/logcdf/benchmark/benchmark.native.js b/lib/node_modules/@stdlib/stats/base/dists/cosine/logcdf/benchmark/benchmark.native.js index 7cf0a2c4ee0a..608a2bfb655f 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/cosine/logcdf/benchmark/benchmark.native.js +++ b/lib/node_modules/@stdlib/stats/base/dists/cosine/logcdf/benchmark/benchmark.native.js @@ -23,7 +23,7 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); var Float64Array = require( '@stdlib/array/float64' ); -var randu = require( '@stdlib/random/base/randu' ); +var uniform = require( '@stdlib/random/base/uniform' ); var EPS = require( '@stdlib/constants/float64/eps' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var tryRequire = require( '@stdlib/utils/try-require' ); @@ -53,9 +53,9 @@ bench( pkg+'::native', opts, function benchmark( b ) { mu = new Float64Array( len ); s = new Float64Array( len ); for ( i = 0; i < len; i++ ) { - x[ i ] = ( randu()*100.0 ) - 50.0; - mu[ i ] = ( randu()*20.0 ) - 10.0; - s[ i ] = ( randu()*5.0 ) + EPS; + x[ i ] = uniform( -50.0, 50.0 ); + mu[ i ] = uniform( -10.0, 10.0 ); + s[ i ] = uniform( EPS, 5.0 ); } b.tic(); diff --git a/lib/node_modules/@stdlib/stats/base/dists/cosine/logpdf/benchmark/benchmark.js b/lib/node_modules/@stdlib/stats/base/dists/cosine/logpdf/benchmark/benchmark.js index 036e2443660e..56d7396d4893 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/cosine/logpdf/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/stats/base/dists/cosine/logpdf/benchmark/benchmark.js @@ -22,7 +22,7 @@ var bench = require( '@stdlib/bench' ); var Float64Array = require( '@stdlib/array/float64' ); -var randu = require( '@stdlib/random/base/randu' ); +var uniform = require( '@stdlib/random/base/uniform' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var EPS = require( '@stdlib/constants/float64/eps' ); var pkg = require( './../package.json' ).name; @@ -44,9 +44,9 @@ bench( pkg, function benchmark( b ) { mu = new Float64Array( len ); s = new Float64Array( len ); for ( i = 0; i < len; i++ ) { - x[ i ] = ( randu()*100.0 ) - 50.0; - mu[ i ] = ( randu()*20.0 ) - 10.0; - s[ i ] = ( randu()*5.0 ) + EPS; + x[ i ] = uniform( -50.0, 50.0 ); + mu[ i ] = uniform( -10.0, 10.0 ); + s[ i ] = uniform( EPS, 5.0 ); } b.tic(); @@ -66,6 +66,7 @@ bench( pkg, function benchmark( b ) { bench( pkg+':factory', function benchmark( b ) { var mylogpdf; + var len; var mu; var s; var x; @@ -75,11 +76,15 @@ bench( pkg+':factory', function benchmark( b ) { mu = 10.0; s = 4.0; mylogpdf = logpdf.factory( mu, s ); + len = 100; + x = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + x[ i ] = uniform( 0.0, 50.0 ); + } b.tic(); for ( i = 0; i < b.iterations; i++ ) { - x = randu() * 50.0; - y = mylogpdf( x ); + y = mylogpdf( x[ i % len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } diff --git a/lib/node_modules/@stdlib/stats/base/dists/cosine/logpdf/benchmark/benchmark.native.js b/lib/node_modules/@stdlib/stats/base/dists/cosine/logpdf/benchmark/benchmark.native.js index 9983053f6b73..e1885a36e469 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/cosine/logpdf/benchmark/benchmark.native.js +++ b/lib/node_modules/@stdlib/stats/base/dists/cosine/logpdf/benchmark/benchmark.native.js @@ -23,7 +23,7 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); var Float64Array = require( '@stdlib/array/float64' ); -var randu = require( '@stdlib/random/base/randu' ); +var uniform = require( '@stdlib/random/base/uniform' ); var EPS = require( '@stdlib/constants/float64/eps' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var tryRequire = require( '@stdlib/utils/try-require' ); @@ -53,9 +53,9 @@ bench( pkg+'::native', opts, function benchmark( b ) { mu = new Float64Array( len ); s = new Float64Array( len ); for ( i = 0; i < len; i++ ) { - x[ i ] = ( randu()*100.0 ) - 50.0; - mu[ i ] = ( randu()*20.0 ) - 10.0; - s[ i ] = ( randu()*5.0 ) + EPS; + x[ i ] = uniform( -50.0, 50.0 ); + mu[ i ] = uniform( -10.0, 10.0 ); + s[ i ] = uniform( EPS, 5.0 ); } b.tic(); diff --git a/lib/node_modules/@stdlib/stats/base/dists/cosine/mean/benchmark/benchmark.js b/lib/node_modules/@stdlib/stats/base/dists/cosine/mean/benchmark/benchmark.js index a64372a4bb78..b7485a2706bf 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/cosine/mean/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/stats/base/dists/cosine/mean/benchmark/benchmark.js @@ -21,7 +21,8 @@ // MODULES // var bench = require( '@stdlib/bench' ); -var randu = require( '@stdlib/random/base/randu' ); +var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var EPS = require( '@stdlib/constants/float64/eps' ); var pkg = require( './../package.json' ).name; @@ -31,16 +32,23 @@ var mean = require( './../lib' ); // MAIN // bench( pkg, function benchmark( b ) { + var len; var mu; var s; var y; var i; + len = 100; + mu = new Float64Array( len ); + s = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + mu[ i ] = uniform( -50.0, 50.0 ); + s[ i ] = uniform( EPS, 20.0 ); + } + b.tic(); for ( i = 0; i < b.iterations; i++ ) { - mu = ( randu()*100.0 ) - 50.0; - s = ( randu()*20.0 ) + EPS; - y = mean( mu, s ); + y = mean( mu[ i % len ], s[ i % len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } diff --git a/lib/node_modules/@stdlib/stats/base/dists/cosine/median/benchmark/benchmark.js b/lib/node_modules/@stdlib/stats/base/dists/cosine/median/benchmark/benchmark.js index 0d6f60f7dd67..229962be470c 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/cosine/median/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/stats/base/dists/cosine/median/benchmark/benchmark.js @@ -22,7 +22,7 @@ var bench = require( '@stdlib/bench' ); var Float64Array = require( '@stdlib/array/float64' ); -var randu = require( '@stdlib/random/base/randu' ); +var uniform = require( '@stdlib/random/base/uniform' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var EPS = require( '@stdlib/constants/float64/eps' ); var pkg = require( './../package.json' ).name; @@ -42,8 +42,8 @@ bench( pkg, function benchmark( b ) { mu = new Float64Array( len ); s = new Float64Array( len ); for ( i = 0; i < len; i++ ) { - mu[ i ] = ( randu()*100.0 ) - 50.0; - s[ i ] = ( randu()*20.0 ) + EPS; + mu[ i ] = uniform( -50.0, 50.0 ); + s[ i ] = uniform( EPS, 20.0 ); } b.tic(); diff --git a/lib/node_modules/@stdlib/stats/base/dists/cosine/median/benchmark/benchmark.native.js b/lib/node_modules/@stdlib/stats/base/dists/cosine/median/benchmark/benchmark.native.js index d73d223ebdbc..f9018140d892 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/cosine/median/benchmark/benchmark.native.js +++ b/lib/node_modules/@stdlib/stats/base/dists/cosine/median/benchmark/benchmark.native.js @@ -23,7 +23,7 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); var Float64Array = require( '@stdlib/array/float64' ); -var randu = require( '@stdlib/random/base/randu' ); +var uniform = require( '@stdlib/random/base/uniform' ); var EPS = require( '@stdlib/constants/float64/eps' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var tryRequire = require( '@stdlib/utils/try-require' ); @@ -51,8 +51,8 @@ bench( pkg+'::native', opts, function benchmark( b ) { mu = new Float64Array( len ); s = new Float64Array( len ); for ( i = 0; i < len; i++ ) { - mu[ i ] = ( randu()*100.0 ) - 50.0; - s[ i ] = ( randu()*20.0 ) + EPS; + mu[ i ] = uniform( -50.0, 50.0 ); + s[ i ] = uniform( EPS, 20.0 ); } b.tic(); diff --git a/lib/node_modules/@stdlib/stats/base/dists/cosine/mgf/benchmark/benchmark.js b/lib/node_modules/@stdlib/stats/base/dists/cosine/mgf/benchmark/benchmark.js index 63582742da3d..75a1f8e5fd2d 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/cosine/mgf/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/stats/base/dists/cosine/mgf/benchmark/benchmark.js @@ -22,7 +22,7 @@ var bench = require( '@stdlib/bench' ); var Float64Array = require( '@stdlib/array/float64' ); -var randu = require( '@stdlib/random/base/randu' ); +var uniform = require( '@stdlib/random/base/uniform' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var EPS = require( '@stdlib/constants/float64/eps' ); var pkg = require( './../package.json' ).name; @@ -44,9 +44,9 @@ bench( pkg, function benchmark( b ) { mu = new Float64Array( len ); s = new Float64Array( len ); for ( i = 0; i < len; i++ ) { - t[ i ] = ( randu()*10.0 ) + EPS; - mu[ i ] = ( randu()*20.0 ) - 10.0; - s[ i ] = ( randu()*5.0 ) + EPS; + t[ i ] = uniform( EPS, 10.0 ); + mu[ i ] = uniform( -10.0, 10.0 ); + s[ i ] = uniform( EPS, 5.0 ); } b.tic(); @@ -66,6 +66,7 @@ bench( pkg, function benchmark( b ) { bench( pkg+':factory', function benchmark( b ) { var myMGF; + var len; var mu; var s; var t; @@ -75,11 +76,15 @@ bench( pkg+':factory', function benchmark( b ) { mu = 10.0; s = 4.0; myMGF = mgf.factory( mu, s ); + len = 100; + t = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + t[ i ] = uniform( EPS, 5.0 ); + } b.tic(); for ( i = 0; i < b.iterations; i++ ) { - t = ( randu()*5.0 ) + EPS; - y = myMGF( t ); + y = myMGF( t[ i % len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } diff --git a/lib/node_modules/@stdlib/stats/base/dists/cosine/mgf/benchmark/benchmark.native.js b/lib/node_modules/@stdlib/stats/base/dists/cosine/mgf/benchmark/benchmark.native.js index 451cac79ee31..13ab500fe241 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/cosine/mgf/benchmark/benchmark.native.js +++ b/lib/node_modules/@stdlib/stats/base/dists/cosine/mgf/benchmark/benchmark.native.js @@ -23,7 +23,7 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); var Float64Array = require( '@stdlib/array/float64' ); -var randu = require( '@stdlib/random/base/randu' ); +var uniform = require( '@stdlib/random/base/uniform' ); var EPS = require( '@stdlib/constants/float64/eps' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var tryRequire = require( '@stdlib/utils/try-require' ); @@ -53,9 +53,9 @@ bench( pkg+'::native', opts, function benchmark( b ) { mu = new Float64Array( len ); s = new Float64Array( len ); for ( i = 0; i < len; i++ ) { - t[ i ] = ( randu()*10.0 ) + EPS; - mu[ i ] = ( randu()*20.0 ) - 10.0; - s[ i ] = ( randu()*5.0 ) + EPS; + t[ i ] = uniform( EPS, 10.0 ); + mu[ i ] = uniform( -10.0, 10.0 ); + s[ i ] = uniform( EPS, 5.0 ); } b.tic(); diff --git a/lib/node_modules/@stdlib/stats/base/dists/cosine/mode/benchmark/benchmark.js b/lib/node_modules/@stdlib/stats/base/dists/cosine/mode/benchmark/benchmark.js index 5cf431a76211..69337d7bd1bd 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/cosine/mode/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/stats/base/dists/cosine/mode/benchmark/benchmark.js @@ -22,7 +22,7 @@ var bench = require( '@stdlib/bench' ); var Float64Array = require( '@stdlib/array/float64' ); -var randu = require( '@stdlib/random/base/randu' ); +var uniform = require( '@stdlib/random/base/uniform' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var EPS = require( '@stdlib/constants/float64/eps' ); var pkg = require( './../package.json' ).name; @@ -42,8 +42,8 @@ bench( pkg, function benchmark( b ) { mu = new Float64Array( len ); s = new Float64Array( len ); for ( i = 0; i < len; i++ ) { - mu[ i ] = ( randu()*100.0 ) - 50.0; - s[ i ] = ( randu()*20.0 ) + EPS; + mu[ i ] = uniform( -50.0, 50.0 ); + s[ i ] = uniform( EPS, 20.0 ); } b.tic(); diff --git a/lib/node_modules/@stdlib/stats/base/dists/cosine/mode/benchmark/benchmark.native.js b/lib/node_modules/@stdlib/stats/base/dists/cosine/mode/benchmark/benchmark.native.js index 7fa1ff79dd31..363ed7cdbf6f 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/cosine/mode/benchmark/benchmark.native.js +++ b/lib/node_modules/@stdlib/stats/base/dists/cosine/mode/benchmark/benchmark.native.js @@ -23,7 +23,7 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); var Float64Array = require( '@stdlib/array/float64' ); -var randu = require( '@stdlib/random/base/randu' ); +var uniform = require( '@stdlib/random/base/uniform' ); var EPS = require( '@stdlib/constants/float64/eps' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var tryRequire = require( '@stdlib/utils/try-require' ); @@ -51,8 +51,8 @@ bench( pkg+'::native', opts, function benchmark( b ) { mu = new Float64Array( len ); s = new Float64Array( len ); for ( i = 0; i < len; i++ ) { - mu[ i ] = ( randu()*100.0 ) - 50.0; - s[ i ] = ( randu()*20.0 ) + EPS; + mu[ i ] = uniform( -50.0, 50.0 ); + s[ i ] = uniform( EPS, 20.0 ); } b.tic(); diff --git a/lib/node_modules/@stdlib/stats/base/dists/cosine/pdf/benchmark/benchmark.js b/lib/node_modules/@stdlib/stats/base/dists/cosine/pdf/benchmark/benchmark.js index 172c602c7e0b..fe43d161750f 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/cosine/pdf/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/stats/base/dists/cosine/pdf/benchmark/benchmark.js @@ -22,7 +22,7 @@ var bench = require( '@stdlib/bench' ); var Float64Array = require( '@stdlib/array/float64' ); -var randu = require( '@stdlib/random/base/randu' ); +var uniform = require( '@stdlib/random/base/uniform' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var EPS = require( '@stdlib/constants/float64/eps' ); var pkg = require( './../package.json' ).name; @@ -44,9 +44,9 @@ bench( pkg, function benchmark( b ) { mu = new Float64Array( len ); s = new Float64Array( len ); for ( i = 0; i < len; i++ ) { - x[ i ] = ( randu()*100.0 ) - 50.0; - mu[ i ] = ( randu()*20.0 ) - 10.0; - s[ i ] = ( randu()*5.0 ) + EPS; + x[ i ] = uniform( -50.0, 50.0 ); + mu[ i ] = uniform( -10.0, 10.0 ); + s[ i ] = uniform( EPS, 5.0 ); } b.tic(); @@ -66,6 +66,7 @@ bench( pkg, function benchmark( b ) { bench( pkg+':factory', function benchmark( b ) { var mypdf; + var len; var mu; var s; var x; @@ -75,11 +76,15 @@ bench( pkg+':factory', function benchmark( b ) { mu = 10.0; s = 4.0; mypdf = pdf.factory( mu, s ); + len = 100; + x = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + x[ i ] = uniform( 0.0, 50.0 ); + } b.tic(); for ( i = 0; i < b.iterations; i++ ) { - x = randu() * 50.0; - y = mypdf( x ); + y = mypdf( x[ i % len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } diff --git a/lib/node_modules/@stdlib/stats/base/dists/cosine/pdf/benchmark/benchmark.native.js b/lib/node_modules/@stdlib/stats/base/dists/cosine/pdf/benchmark/benchmark.native.js index e778ff70de49..3b5faf36a87e 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/cosine/pdf/benchmark/benchmark.native.js +++ b/lib/node_modules/@stdlib/stats/base/dists/cosine/pdf/benchmark/benchmark.native.js @@ -23,7 +23,7 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); var Float64Array = require( '@stdlib/array/float64' ); -var randu = require( '@stdlib/random/base/randu' ); +var uniform = require( '@stdlib/random/base/uniform' ); var EPS = require( '@stdlib/constants/float64/eps' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var tryRequire = require( '@stdlib/utils/try-require' ); @@ -53,9 +53,9 @@ bench( pkg+'::native', opts, function benchmark( b ) { mu = new Float64Array( len ); s = new Float64Array( len ); for ( i = 0; i < len; i++ ) { - x[ i ] = ( randu()*100.0 ) - 50.0; - mu[ i ] = ( randu()*20.0 ) - 10.0; - s[ i ] = ( randu()*5.0 ) + EPS; + x[ i ] = uniform( -50.0, 50.0 ); + mu[ i ] = uniform( -10.0, 10.0 ); + s[ i ] = uniform( EPS, 5.0 ); } b.tic(); diff --git a/lib/node_modules/@stdlib/stats/base/dists/cosine/quantile/benchmark/benchmark.js b/lib/node_modules/@stdlib/stats/base/dists/cosine/quantile/benchmark/benchmark.js index 4bf4028f53ef..ac6d7d5a1d48 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/cosine/quantile/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/stats/base/dists/cosine/quantile/benchmark/benchmark.js @@ -21,7 +21,8 @@ // MODULES // var bench = require( '@stdlib/bench' ); -var randu = require( '@stdlib/random/base/randu' ); +var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var EPS = require( '@stdlib/constants/float64/eps' ); var pkg = require( './../package.json' ).name; @@ -31,18 +32,26 @@ var quantile = require( './../lib' ); // MAIN // bench( pkg, function benchmark( b ) { + var len; var mu; var s; var p; var y; var i; + len = 100; + p = new Float64Array( len ); + mu = new Float64Array( len ); + s = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + p[ i ] = uniform( 0.0, 1.0 ); + mu[ i ] = uniform( -10.0, 10.0 ); + s[ i ] = uniform( EPS, 5.0 ); + } + b.tic(); for ( i = 0; i < b.iterations; i++ ) { - p = randu(); - mu = ( randu()*20.0 ) - 10.0; - s = ( randu()*5.0 ) + EPS; - y = quantile( p, mu, s ); + y = quantile( p[ i % len ], mu[ i % len ], s[ i % len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } @@ -57,6 +66,7 @@ bench( pkg, function benchmark( b ) { bench( pkg+':factory', function benchmark( b ) { var myquantile; + var len; var mu; var s; var p; @@ -66,11 +76,15 @@ bench( pkg+':factory', function benchmark( b ) { mu = 10.0; s = 4.0; myquantile = quantile.factory( mu, s ); + len = 100; + p = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + p[ i ] = uniform( 0.0, 1.0 ); + } b.tic(); for ( i = 0; i < b.iterations; i++ ) { - p = randu(); - y = myquantile( p ); + y = myquantile( p[ i % len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); } diff --git a/lib/node_modules/@stdlib/stats/base/dists/cosine/skewness/benchmark/benchmark.js b/lib/node_modules/@stdlib/stats/base/dists/cosine/skewness/benchmark/benchmark.js index 2f3b8471a648..a8af74e686f6 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/cosine/skewness/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/stats/base/dists/cosine/skewness/benchmark/benchmark.js @@ -22,7 +22,7 @@ var bench = require( '@stdlib/bench' ); var Float64Array = require( '@stdlib/array/float64' ); -var randu = require( '@stdlib/random/base/randu' ); +var uniform = require( '@stdlib/random/base/uniform' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var EPS = require( '@stdlib/constants/float64/eps' ); var pkg = require( './../package.json' ).name; @@ -42,8 +42,8 @@ bench( pkg, function benchmark( b ) { mu = new Float64Array( len ); s = new Float64Array( len ); for ( i = 0; i < len; i++ ) { - mu[ i ] = ( randu()*100.0 ) - 50.0; - s[ i ] = ( randu()*20.0 ) + EPS; + mu[ i ] = uniform( -50.0, 50.0 ); + s[ i ] = uniform( EPS, 20.0 ); } b.tic(); diff --git a/lib/node_modules/@stdlib/stats/base/dists/cosine/skewness/benchmark/benchmark.native.js b/lib/node_modules/@stdlib/stats/base/dists/cosine/skewness/benchmark/benchmark.native.js index 87a8210b7071..dbcaa6963fae 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/cosine/skewness/benchmark/benchmark.native.js +++ b/lib/node_modules/@stdlib/stats/base/dists/cosine/skewness/benchmark/benchmark.native.js @@ -23,7 +23,7 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); var Float64Array = require( '@stdlib/array/float64' ); -var randu = require( '@stdlib/random/base/randu' ); +var uniform = require( '@stdlib/random/base/uniform' ); var EPS = require( '@stdlib/constants/float64/eps' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var tryRequire = require( '@stdlib/utils/try-require' ); @@ -51,8 +51,8 @@ bench( pkg+'::native', opts, function benchmark( b ) { mu = new Float64Array( len ); s = new Float64Array( len ); for ( i = 0; i < len; i++ ) { - mu[ i ] = ( randu()*100.0 ) - 50.0; - s[ i ] = ( randu()*20.0 ) + EPS; + mu[ i ] = uniform( -50.0, 50.0 ); + s[ i ] = uniform( EPS, 20.0 ); } b.tic(); diff --git a/lib/node_modules/@stdlib/stats/base/dists/cosine/stdev/benchmark/benchmark.js b/lib/node_modules/@stdlib/stats/base/dists/cosine/stdev/benchmark/benchmark.js index 8f9f84b7521e..63cb7c65fb5c 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/cosine/stdev/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/stats/base/dists/cosine/stdev/benchmark/benchmark.js @@ -22,7 +22,7 @@ var bench = require( '@stdlib/bench' ); var Float64Array = require( '@stdlib/array/float64' ); -var randu = require( '@stdlib/random/base/randu' ); +var uniform = require( '@stdlib/random/base/uniform' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var EPS = require( '@stdlib/constants/float64/eps' ); var pkg = require( './../package.json' ).name; @@ -42,8 +42,8 @@ bench( pkg, function benchmark( b ) { mu = new Float64Array( len ); s = new Float64Array( len ); for ( i = 0; i < len; i++ ) { - mu[ i ] = ( randu()*100.0 ) - 50.0; - s[ i ] = ( randu()*20.0 ) + EPS; + mu[ i ] = uniform( -50.0, 50.0 ); + s[ i ] = uniform( EPS, 20.0 ); } b.tic(); diff --git a/lib/node_modules/@stdlib/stats/base/dists/cosine/stdev/benchmark/benchmark.native.js b/lib/node_modules/@stdlib/stats/base/dists/cosine/stdev/benchmark/benchmark.native.js index f929b13622f3..a72f26c2be6b 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/cosine/stdev/benchmark/benchmark.native.js +++ b/lib/node_modules/@stdlib/stats/base/dists/cosine/stdev/benchmark/benchmark.native.js @@ -23,7 +23,7 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); var Float64Array = require( '@stdlib/array/float64' ); -var randu = require( '@stdlib/random/base/randu' ); +var uniform = require( '@stdlib/random/base/uniform' ); var EPS = require( '@stdlib/constants/float64/eps' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var tryRequire = require( '@stdlib/utils/try-require' ); @@ -51,8 +51,8 @@ bench( pkg+'::native', opts, function benchmark( b ) { mu = new Float64Array( len ); s = new Float64Array( len ); for ( i = 0; i < len; i++ ) { - mu[ i ] = ( randu()*100.0 ) - 50.0; - s[ i ] = ( randu()*20.0 ) + EPS; + mu[ i ] = uniform( -50.0, 50.0 ); + s[ i ] = uniform( EPS, 20.0 ); } b.tic(); diff --git a/lib/node_modules/@stdlib/stats/base/dists/cosine/variance/benchmark/benchmark.js b/lib/node_modules/@stdlib/stats/base/dists/cosine/variance/benchmark/benchmark.js index 4a99acb04b1e..f015a1d62f9c 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/cosine/variance/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/stats/base/dists/cosine/variance/benchmark/benchmark.js @@ -21,7 +21,8 @@ // MODULES // var bench = require( '@stdlib/bench' ); -var randu = require( '@stdlib/random/base/randu' ); +var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var EPS = require( '@stdlib/constants/float64/eps' ); var pkg = require( './../package.json' ).name; @@ -31,16 +32,23 @@ var variance = require( './../lib' ); // MAIN // bench( pkg, function benchmark( b ) { + var len; var mu; var s; var y; var i; + len = 100; + mu = new Float64Array( len ); + s = new Float64Array( len ); + for ( i = 0; i < len; i++ ) { + mu[ i ] = uniform( -50.0, 50.0 ); + s[ i ] = uniform( EPS, 20.0 ); + } + b.tic(); for ( i = 0; i < b.iterations; i++ ) { - mu = ( randu()*100.0 ) - 50.0; - s = ( randu()*20.0 ) + EPS; - y = variance( mu, s ); + y = variance( mu[ i % len ], s[ i % len ] ); if ( isnan( y ) ) { b.fail( 'should not return NaN' ); }