From ee5839904290a1be926cd938b20abc003dc38581 Mon Sep 17 00:00:00 2001 From: yuvi-mittal Date: Sun, 2 Feb 2025 21:47:32 +0530 Subject: [PATCH] feat : Refactor random number generation in JS benchmarks --- 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 --- --- .../kumaraswamy/ctor/benchmark/benchmark.js | 388 +++++++++--------- 1 file changed, 194 insertions(+), 194 deletions(-) diff --git a/lib/node_modules/@stdlib/stats/base/dists/kumaraswamy/ctor/benchmark/benchmark.js b/lib/node_modules/@stdlib/stats/base/dists/kumaraswamy/ctor/benchmark/benchmark.js index 558002ea6bd5..5725c6f89a3e 100644 --- a/lib/node_modules/@stdlib/stats/base/dists/kumaraswamy/ctor/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/stats/base/dists/kumaraswamy/ctor/benchmark/benchmark.js @@ -31,34 +31,34 @@ var Kumaraswamy = require( './../lib' ); // MAIN // -bench( pkg+'::instantiation', function benchmark( b ) { - var alpha; +bench( pkg+'::instantiation', function benchmark( bm ) { var dist; - var beta; var len; + var a; + var b; var i; len = 100; - alpha = new Float64Array( len ); - beta = new Float64Array( len ); + a = new Float64Array( len ); + b = new Float64Array( len ); for ( i = 0; i < len; i++ ) { - alpha[ i ] = uniform( EPS, 10.0 ); - beta[ i ] = uniform( EPS, 10.0 ); + a[ i ] = uniform( EPS, 10.0 ); + b[ i ] = uniform( EPS, 10.0 ); } - b.tic(); - for ( i = 0; i < b.iterations; i++ ) { - dist = new Kumaraswamy( alpha[ i % len ], beta[ i % len ] ); + bm.tic(); + for ( i = 0; i < bm.iterations; i++ ) { + dist = new Kumaraswamy( a[ i % len ], b[ i % len ] ); if ( !( dist instanceof Kumaraswamy ) ) { - b.fail( 'should return a distribution instance' ); + bm.fail( 'should return a distribution instance' ); } } - b.toc(); + bm.toc(); if ( !( dist instanceof Kumaraswamy ) ) { - b.fail( 'should return a distribution instance' ); + bm.fail( 'should return a distribution instance' ); } - b.pass( 'benchmark finished' ); - b.end(); + bm.pass( 'benchmark finished' ); + bm.end(); }); bench( pkg+'::get:a', function benchmark( bm ) { @@ -87,36 +87,36 @@ bench( pkg+'::get:a', function benchmark( bm ) { bm.end(); }); -bench( pkg+'::set:alpha', function benchmark( b ) { - var alpha; - var beta; +bench( pkg+'::set:a', function benchmark( bm ) { var dist; var len; + var a; + var b; var y; var i; - alpha = 100.56789; - beta = 55.54321; - dist = new Kumaraswamy( alpha, beta ); + a = 100.56789; + b = 55.54321; + dist = new Kumaraswamy( a, b ); len = 100; y = new Float64Array( len ); for ( i = 0; i < len; i++ ) { y[ i ] = uniform( EPS, 100.0 ); } - b.tic(); - for ( i = 0; i < b.iterations; i++ ) { - dist.alpha = y[ i % len ]; - if ( dist.alpha !== y[i % len] ) { - b.fail( 'should return set value' ); + bm.tic(); + for ( i = 0; i < bm.iterations; i++ ) { + dist.a = y[i % len]; + if ( dist.a !== y[i % len] ) { + bm.fail( 'should return set value' ); } } - b.toc(); + bm.toc(); if ( isnan( y ) ) { - b.fail( 'should not return NaN' ); + bm.fail( 'should not return NaN' ); } - b.pass( 'benchmark finished' ); - b.end(); + bm.pass( 'benchmark finished' ); + bm.end(); }); bench( pkg+'::get:b', function benchmark( bm ) { @@ -145,403 +145,403 @@ bench( pkg+'::get:b', function benchmark( bm ) { bm.end(); }); -bench( pkg+'::set:beta', function benchmark( b ) { - var alpha; - var beta; +bench( pkg+'::set:b', function benchmark( bm ) { var dist; var len; + var a; + var b; var y; var i; - alpha = 100.56789; - beta = 55.54321; - dist = new Kumaraswamy( alpha, beta ); + a = 100.56789; + b = 55.54321; + dist = new Kumaraswamy( a, b ); len = 100; y = new Float64Array( len ); for ( i = 0; i < len; i++ ) { y[ i ] = uniform( EPS, 100.0 ); } - b.tic(); - for ( i = 0; i < b.iterations; i++ ) { - dist.beta = y[ i % len ]; - if ( dist.beta !== y[i % len ] ) { - b.fail( 'should return set value' ); + bm.tic(); + for ( i = 0; i < bm.iterations; i++ ) { + dist.b = y[i % len]; + if ( dist.b !== y[i % len] ) { + bm.fail( 'should return set value' ); } } - b.toc(); + bm.toc(); if ( isnan( y ) ) { - b.fail( 'should not return NaN' ); + bm.fail( 'should not return NaN' ); } - b.pass( 'benchmark finished' ); - b.end(); + bm.pass( 'benchmark finished' ); + bm.end(); }); -bench( pkg+':kurtosis', function benchmark( b ) { - var alpha; - var beta; +bench( pkg+':kurtosis', function benchmark( bm ) { var dist; var len; var x; + var a; + var b; var y; var i; - alpha = 100.56789; - beta = 55.54321; - dist = new Kumaraswamy( alpha, beta ); + a = 100.56789; + b = 55.54321; + dist = new Kumaraswamy( a, b ); len = 100; x = new Float64Array( len ); for ( i = 0; i < len; i++ ) { x[ i ] = uniform( EPS, 100.0 ); } - b.tic(); - for ( i = 0; i < b.iterations; i++ ) { - dist.alpha = x[ i % len ]; + bm.tic(); + for ( i = 0; i < bm.iterations; i++ ) { + dist.a = x[ i % len ]; y = dist.kurtosis; if ( isnan( y ) ) { - b.fail( 'should not return NaN' ); + bm.fail( 'should not return NaN' ); } } - b.toc(); + bm.toc(); if ( isnan( y ) ) { - b.fail( 'should not return NaN' ); + bm.fail( 'should not return NaN' ); } - b.pass( 'benchmark finished' ); - b.end(); + bm.pass( 'benchmark finished' ); + bm.end(); }); -bench( pkg+':mean', function benchmark( b ) { - var alpha; - var beta; +bench( pkg+':mean', function benchmark( bm ) { var dist; var len; var x; + var a; + var b; var y; var i; - alpha = 100.56789; - beta = 55.54321; - dist = new Kumaraswamy( alpha, beta ); + a = 100.56789; + b = 55.54321; + dist = new Kumaraswamy( a, b ); len = 100; x = new Float64Array( len ); for ( i = 0; i < len; i++ ) { x[ i ] = uniform( EPS, 100.0 ); } - b.tic(); - for ( i = 0; i < b.iterations; i++ ) { - dist.alpha = x[ i % len ]; + bm.tic(); + for ( i = 0; i < bm.iterations; i++ ) { + dist.a = x[ i % len ]; y = dist.mean; if ( isnan( y ) ) { - b.fail( 'should not return NaN' ); + bm.fail( 'should not return NaN' ); } } - b.toc(); + bm.toc(); if ( isnan( y ) ) { - b.fail( 'should not return NaN' ); + bm.fail( 'should not return NaN' ); } - b.pass( 'benchmark finished' ); - b.end(); + bm.pass( 'benchmark finished' ); + bm.end(); }); -bench( pkg+':mode', function benchmark( b ) { - var alpha; - var beta; +bench( pkg+':mode', function benchmark( bm ) { var dist; var len; var x; + var a; + var b; var y; var i; - alpha = 100.56789; - beta = 55.54321; - dist = new Kumaraswamy( alpha, beta ); + a = 100.56789; + b = 55.54321; + dist = new Kumaraswamy( a, b ); len = 100; x = new Float64Array( len ); for ( i = 0; i < len; i++ ) { x[ i ] = uniform( 1.0 + EPS, 100.0 ); } - b.tic(); - for ( i = 0; i < b.iterations; i++ ) { - dist.alpha = x[ i % len ]; + bm.tic(); + for ( i = 0; i < bm.iterations; i++ ) { + dist.a = x[ i % len ]; y = dist.mode; if ( isnan( y ) ) { - b.fail( 'should not return NaN' ); + bm.fail( 'should not return NaN' ); } } - b.toc(); + bm.toc(); if ( isnan( y ) ) { - b.fail( 'should not return NaN' ); + bm.fail( 'should not return NaN' ); } - b.pass( 'benchmark finished' ); - b.end(); + bm.pass( 'benchmark finished' ); + bm.end(); }); -bench( pkg+':skewness', function benchmark( b ) { - var alpha; - var beta; +bench( pkg+':skewness', function benchmark( bm ) { var dist; var len; var x; + var a; + var b; var y; var i; - alpha = 100.56789; - beta = 55.54321; - dist = new Kumaraswamy( alpha, beta ); + a = 100.56789; + b = 55.54321; + dist = new Kumaraswamy( a, b ); len = 100; x = new Float64Array( len ); for ( i = 0; i < len; i++ ) { x[ i ] = uniform( EPS, 100.0 ); } - b.tic(); - for ( i = 0; i < b.iterations; i++ ) { - dist.alpha = x[ i % len ]; + bm.tic(); + for ( i = 0; i < bm.iterations; i++ ) { + dist.a = x[ i % len ]; y = dist.skewness; if ( isnan( y ) ) { - b.fail( 'should not return NaN' ); + bm.fail( 'should not return NaN' ); } } - b.toc(); + bm.toc(); if ( isnan( y ) ) { - b.fail( 'should not return NaN' ); + bm.fail( 'should not return NaN' ); } - b.pass( 'benchmark finished' ); - b.end(); + bm.pass( 'benchmark finished' ); + bm.end(); }); -bench( pkg+':stdev', function benchmark( b ) { - var alpha; - var beta; +bench( pkg+':stdev', function benchmark( bm ) { var dist; var len; var x; + var a; + var b; var y; var i; - alpha = 100.56789; - beta = 55.54321; - dist = new Kumaraswamy( alpha, beta ); + a = 100.56789; + b = 55.54321; + dist = new Kumaraswamy( a, b ); len = 100; x = new Float64Array( len ); for ( i = 0; i < len; i++ ) { x[ i ] = uniform( EPS, 100.0 ); } - b.tic(); - for ( i = 0; i < b.iterations; i++ ) { - dist.alpha = x[ i % len ]; + bm.tic(); + for ( i = 0; i < bm.iterations; i++ ) { + dist.a = x[ i % len ]; y = dist.stdev; if ( isnan( y ) ) { - b.fail( 'should not return NaN' ); + bm.fail( 'should not return NaN' ); } } - b.toc(); + bm.toc(); if ( isnan( y ) ) { - b.fail( 'should not return NaN' ); + bm.fail( 'should not return NaN' ); } - b.pass( 'benchmark finished' ); - b.end(); + bm.pass( 'benchmark finished' ); + bm.end(); }); -bench( pkg+':variance', function benchmark( b ) { - var alpha; - var beta; +bench( pkg+':variance', function benchmark( bm ) { var dist; var len; var x; + var a; + var b; var y; var i; - alpha = 100.56789; - beta = 55.54321; - dist = new Kumaraswamy( alpha, beta ); + a = 100.56789; + b = 55.54321; + dist = new Kumaraswamy( a, b ); len = 100; x = new Float64Array( len ); for ( i = 0; i < len; i++ ) { x[ i ] = uniform( EPS, 100.0 ); } - b.tic(); - for ( i = 0; i < b.iterations; i++ ) { - dist.alpha = x[ i % len ]; + bm.tic(); + for ( i = 0; i < bm.iterations; i++ ) { + dist.a = x[ i % len ]; y = dist.variance; if ( isnan( y ) ) { - b.fail( 'should not return NaN' ); + bm.fail( 'should not return NaN' ); } } - b.toc(); + bm.toc(); if ( isnan( y ) ) { - b.fail( 'should not return NaN' ); + bm.fail( 'should not return NaN' ); } - b.pass( 'benchmark finished' ); - b.end(); + bm.pass( 'benchmark finished' ); + bm.end(); }); -bench( pkg+':cdf', function benchmark( b ) { - var alpha; - var beta; +bench( pkg+':cdf', function benchmark( bm ) { var dist; var len; + var a; + var b; var x; var y; var i; - alpha = 100.56789; - beta = 55.54321; - dist = new Kumaraswamy( alpha, beta ); + a = 100.56789; + b = 55.54321; + dist = new Kumaraswamy( a, b ); len = 100; x = new Float64Array( len ); for ( i = 0; i < len; i++ ) { x[ i ] = uniform( 0.0, 1.0 ); } - b.tic(); - for ( i = 0; i < b.iterations; i++ ) { + bm.tic(); + for ( i = 0; i < bm.iterations; i++ ) { y = dist.cdf( x[ i % len ] ); if ( isnan( y ) ) { - b.fail( 'should not return NaN' ); + bm.fail( 'should not return NaN' ); } } - b.toc(); + bm.toc(); if ( isnan( y ) ) { - b.fail( 'should not return NaN' ); + bm.fail( 'should not return NaN' ); } - b.pass( 'benchmark finished' ); - b.end(); + bm.pass( 'benchmark finished' ); + bm.end(); }); -bench( pkg+':logcdf', function benchmark( b ) { - var alpha; - var beta; +bench( pkg+':logcdf', function benchmark( bm ) { var dist; var len; + var a; + var b; var x; var y; var i; - alpha = 100.56789; - beta = 55.54321; - dist = new Kumaraswamy( alpha, beta ); + a = 100.56789; + b = 55.54321; + dist = new Kumaraswamy( a, b ); len = 100; x = new Float64Array( len ); for ( i = 0; i < len; i++ ) { x[ i ] = uniform( 0.0, 1.0 ); } - b.tic(); - for ( i = 0; i < b.iterations; i++ ) { + bm.tic(); + for ( i = 0; i < bm.iterations; i++ ) { y = dist.logpdf( x[ i % len ] ); if ( isnan( y ) ) { - b.fail( 'should not return NaN' ); + bm.fail( 'should not return NaN' ); } } - b.toc(); + bm.toc(); if ( isnan( y ) ) { - b.fail( 'should not return NaN' ); + bm.fail( 'should not return NaN' ); } - b.pass( 'benchmark finished' ); - b.end(); + bm.pass( 'benchmark finished' ); + bm.end(); }); -bench( pkg+':logpdf', function benchmark( b ) { - var alpha; - var beta; +bench( pkg+':logpdf', function benchmark( bm ) { var dist; var len; + var a; + var b; var x; var y; var i; - alpha = 100.56789; - beta = 55.54321; - dist = new Kumaraswamy( alpha, beta ); + a = 100.56789; + b = 55.54321; + dist = new Kumaraswamy( a, b ); len = 100; x = new Float64Array( len ); for ( i = 0; i < len; i++ ) { x[ i ] = uniform( 0.0, 1.0 ); } - b.tic(); - for ( i = 0; i < b.iterations; i++ ) { + bm.tic(); + for ( i = 0; i < bm.iterations; i++ ) { y = dist.logpdf( x[ i % len ] ); if ( isnan( y ) ) { - b.fail( 'should not return NaN' ); + bm.fail( 'should not return NaN' ); } } - b.toc(); + bm.toc(); if ( isnan( y ) ) { - b.fail( 'should not return NaN' ); + bm.fail( 'should not return NaN' ); } - b.pass( 'benchmark finished' ); - b.end(); + bm.pass( 'benchmark finished' ); + bm.end(); }); -bench( pkg+':pdf', function benchmark( b ) { - var alpha; - var beta; +bench( pkg+':pdf', function benchmark( bm ) { var dist; var len; + var a; + var b; var x; var y; var i; - alpha = 100.56789; - beta = 55.54321; - dist = new Kumaraswamy( alpha, beta ); + a = 100.56789; + b = 55.54321; + dist = new Kumaraswamy( a, b ); len = 100; x = new Float64Array( len ); for ( i = 0; i < len; i++ ) { x[ i ] = uniform( 0.0, 1.0 ); } - b.tic(); - for ( i = 0; i < b.iterations; i++ ) { + bm.tic(); + for ( i = 0; i < bm.iterations; i++ ) { y = dist.pdf( x[ i % len ] ); if ( isnan( y ) ) { - b.fail( 'should not return NaN' ); + bm.fail( 'should not return NaN' ); } } - b.toc(); + bm.toc(); if ( isnan( y ) ) { - b.fail( 'should not return NaN' ); + bm.fail( 'should not return NaN' ); } - b.pass( 'benchmark finished' ); - b.end(); + bm.pass( 'benchmark finished' ); + bm.end(); }); -bench( pkg+':quantile', function benchmark( b ) { - var alpha; - var beta; +bench( pkg+':quantile', function benchmark( bm ) { var dist; var len; + var a; + var b; var x; var y; var i; - alpha = 100.56789; - beta = 55.54321; - dist = new Kumaraswamy( alpha, beta ); + a = 100.56789; + b = 55.54321; + dist = new Kumaraswamy( a, b ); len = 100; x = new Float64Array( len ); for ( i = 0; i < len; i++ ) { x[ i ] = uniform( 0.0, 1.0 ); } - b.tic(); - for ( i = 0; i < b.iterations; i++ ) { + bm.tic(); + for ( i = 0; i < bm.iterations; i++ ) { y = dist.quantile( x[ i % len ] ); if ( isnan( y ) ) { - b.fail( 'should not return NaN' ); + bm.fail( 'should not return NaN' ); } } - b.toc(); + bm.toc(); if ( isnan( y ) ) { - b.fail( 'should not return NaN' ); + bm.fail( 'should not return NaN' ); } - b.pass( 'benchmark finished' ); - b.end(); + bm.pass( 'benchmark finished' ); + bm.end(); });