Skip to content

Commit 66c95d7

Browse files
authored
bench: update random value generation for stats/base/dists/poisson
PR-URL: #10008 Reviewed-by: Athan Reines <kgryte@gmail.com>
1 parent c581849 commit 66c95d7

File tree

7 files changed

+69
-77
lines changed

7 files changed

+69
-77
lines changed

lib/node_modules/@stdlib/stats/base/dists/poisson/quantile/benchmark/benchmark.js

Lines changed: 18 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,9 @@
2121
// MODULES //
2222

2323
var bench = require( '@stdlib/bench' );
24-
var Float64Array = require( '@stdlib/array/float64' );
25-
var uniform = require( '@stdlib/random/base/uniform' );
24+
var uniform = require( '@stdlib/random/array/uniform' );
2625
var isnan = require( '@stdlib/math/base/assert/is-nan' );
26+
var format = require( '@stdlib/string/format' );
2727
var pkg = require( './../package.json' ).name;
2828
var quantile = require( './../lib' );
2929

@@ -32,21 +32,20 @@ var quantile = require( './../lib' );
3232

3333
bench( pkg, function benchmark( b ) {
3434
var lambda;
35-
var len;
35+
var opts;
3636
var p;
3737
var y;
3838
var i;
3939

40-
len = 100;
41-
p = new Float64Array( len );
42-
lambda = new Float64Array( len );
43-
for ( i = 0; i < len; i++ ) {
44-
p[ i ] = uniform( 0.0, 1.0 );
45-
lambda[ i ] = uniform( 0.0, 100.0 );
46-
}
40+
opts = {
41+
'dtype': 'float64'
42+
};
43+
p = uniform( 100, 0.0, 1.0, opts );
44+
lambda = uniform( 100, 0.0, 100.0, opts );
45+
4746
b.tic();
4847
for ( i = 0; i < b.iterations; i++ ) {
49-
y = quantile( p[ i % len ], lambda[ i % len ] );
48+
y = quantile( p[ i % p.length ], lambda[ i % lambda.length ] );
5049
if ( isnan( y ) ) {
5150
b.fail( 'should not return NaN' );
5251
}
@@ -59,24 +58,23 @@ bench( pkg, function benchmark( b ) {
5958
b.end();
6059
});
6160

62-
bench( pkg+':factory', function benchmark( b ) {
61+
bench( format( '%s::factory', pkg ), function benchmark( b ) {
6362
var myquantile;
6463
var lambda;
65-
var len;
64+
var opts;
6665
var p;
6766
var y;
6867
var i;
69-
68+
opts = {
69+
'dtype': 'float64'
70+
};
7071
lambda = 10.0;
7172
myquantile = quantile.factory( lambda );
72-
len = 100;
73-
p = new Float64Array( len );
74-
for ( i = 0; i < len; i++ ) {
75-
p[ i ] = uniform( 0.0, 1.0 );
76-
}
73+
p = uniform( 100, 0.0, 1.0, opts );
74+
7775
b.tic();
7876
for ( i = 0; i < b.iterations; i++ ) {
79-
y = myquantile( p[ i % len ] );
77+
y = myquantile( p[ i % p.length ] );
8078
if ( isnan( y ) ) {
8179
b.fail( 'should not return NaN' );
8280
}

lib/node_modules/@stdlib/stats/base/dists/poisson/skewness/benchmark/benchmark.js

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,7 @@
2121
// MODULES //
2222

2323
var bench = require( '@stdlib/bench' );
24-
var Float64Array = require( '@stdlib/array/float64' );
25-
var uniform = require( '@stdlib/random/base/uniform' );
24+
var uniform = require( '@stdlib/random/array/uniform' );
2625
var isnan = require( '@stdlib/math/base/assert/is-nan' );
2726
var EPS = require( '@stdlib/constants/float64/eps' );
2827
var pkg = require( './../package.json' ).name;
@@ -33,18 +32,18 @@ var skewness = require( './../lib' );
3332

3433
bench( pkg, function benchmark( b ) {
3534
var lambda;
36-
var len;
35+
var opts;
3736
var y;
3837
var i;
3938

40-
len = 100;
41-
lambda = new Float64Array( len );
42-
for ( i = 0; i < len; i++ ) {
43-
lambda[ i ] = uniform( EPS, 20.0 );
44-
}
39+
opts = {
40+
'dtype': 'float64'
41+
};
42+
lambda = uniform( 100, EPS, 20.0, opts );
43+
4544
b.tic();
4645
for ( i = 0; i < b.iterations; i++ ) {
47-
y = skewness( lambda[ i % len ] );
46+
y = skewness( lambda[ i % lambda.length ] );
4847
if ( isnan( y ) ) {
4948
b.fail( 'should not return NaN' );
5049
}

lib/node_modules/@stdlib/stats/base/dists/poisson/skewness/benchmark/benchmark.native.js

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -22,11 +22,11 @@
2222

2323
var resolve = require( 'path' ).resolve;
2424
var bench = require( '@stdlib/bench' );
25-
var Float64Array = require( '@stdlib/array/float64' );
26-
var uniform = require( '@stdlib/random/base/uniform' );
25+
var uniform = require( '@stdlib/random/array/uniform' );
2726
var isnan = require( '@stdlib/math/base/assert/is-nan' );
2827
var tryRequire = require( '@stdlib/utils/try-require' );
2928
var EPS = require( '@stdlib/constants/float64/eps' );
29+
var format = require( '@stdlib/string/format' );
3030
var pkg = require( './../package.json' ).name;
3131

3232

@@ -40,20 +40,20 @@ var opts = {
4040

4141
// MAIN //
4242

43-
bench( pkg+'::native', opts, function benchmark( b ) {
43+
bench( format( '%s::native', pkg ), opts, function benchmark( b ) {
4444
var lambda;
45-
var len;
45+
var opts;
4646
var y;
4747
var i;
4848

49-
len = 100;
50-
lambda = new Float64Array( len );
51-
for ( i = 0; i < len; i++ ) {
52-
lambda[ i ] = uniform( EPS, 20.0 );
53-
}
49+
opts = {
50+
'dtype': 'float64'
51+
};
52+
lambda = uniform( 100, EPS, 20.0, opts );
53+
5454
b.tic();
5555
for ( i = 0; i < b.iterations; i++ ) {
56-
y = skewness( lambda[ i % len ] );
56+
y = skewness( lambda[ i % lambda.length ] );
5757
if ( isnan( y ) ) {
5858
b.fail( 'should not return NaN' );
5959
}

lib/node_modules/@stdlib/stats/base/dists/poisson/stdev/benchmark/benchmark.js

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,7 @@
2121
// MODULES //
2222

2323
var bench = require( '@stdlib/bench' );
24-
var Float64Array = require( '@stdlib/array/float64' );
25-
var uniform = require( '@stdlib/random/base/uniform' );
24+
var uniform = require( '@stdlib/random/array/uniform' );
2625
var isnan = require( '@stdlib/math/base/assert/is-nan' );
2726
var EPS = require( '@stdlib/constants/float64/eps' );
2827
var pkg = require( './../package.json' ).name;
@@ -33,19 +32,18 @@ var stdev = require( './../lib' );
3332

3433
bench( pkg, function benchmark( b ) {
3534
var lambda;
36-
var len;
35+
var opts;
3736
var y;
3837
var i;
3938

40-
len = 100;
41-
lambda = new Float64Array( len );
42-
for ( i = 0; i < len; i++ ) {
43-
lambda[ i ] = uniform( EPS, 20.0 );
44-
}
39+
opts = {
40+
'dtype': 'float64'
41+
};
42+
lambda = uniform( 100, EPS, 20.0, opts );
4543

4644
b.tic();
4745
for ( i = 0; i < b.iterations; i++ ) {
48-
y = stdev( lambda[ i % len ] );
46+
y = stdev( lambda[ i % lambda.length ] );
4947
if ( isnan( y ) ) {
5048
b.fail( 'should not return NaN' );
5149
}

lib/node_modules/@stdlib/stats/base/dists/poisson/stdev/benchmark/benchmark.native.js

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -22,11 +22,11 @@
2222

2323
var resolve = require( 'path' ).resolve;
2424
var bench = require( '@stdlib/bench' );
25-
var Float64Array = require( '@stdlib/array/float64' );
26-
var uniform = require( '@stdlib/random/base/uniform' );
25+
var uniform = require( '@stdlib/random/array/uniform' );
2726
var isnan = require( '@stdlib/math/base/assert/is-nan' );
2827
var tryRequire = require( '@stdlib/utils/try-require' );
2928
var EPS = require( '@stdlib/constants/float64/eps' );
29+
var format = require( '@stdlib/string/format' );
3030
var pkg = require( './../package.json' ).name;
3131

3232

@@ -40,20 +40,20 @@ var opts = {
4040

4141
// MAIN //
4242

43-
bench( pkg+'::native', opts, function benchmark( b ) {
43+
bench( format( '%s::native', pkg ), opts, function benchmark( b ) {
4444
var lambda;
45-
var len;
45+
var opts;
4646
var y;
4747
var i;
4848

49-
len = 100;
50-
lambda = new Float64Array( len );
51-
for ( i = 0; i < len; i++ ) {
52-
lambda[ i ] = uniform( EPS, 20.0 );
53-
}
49+
opts = {
50+
'dtype': 'float64'
51+
};
52+
lambda = uniform( 100, EPS, 20.0, opts );
53+
5454
b.tic();
5555
for ( i = 0; i < b.iterations; i++ ) {
56-
y = stdev( lambda[ i % len ] );
56+
y = stdev( lambda[ i % lambda.length ] );
5757
if ( isnan( y ) ) {
5858
b.fail( 'should not return NaN' );
5959
}

lib/node_modules/@stdlib/stats/base/dists/poisson/variance/benchmark/benchmark.js

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,7 @@
2121
// MODULES //
2222

2323
var bench = require( '@stdlib/bench' );
24-
var Float64Array = require( '@stdlib/array/float64' );
25-
var uniform = require( '@stdlib/random/base/uniform' );
24+
var uniform = require( '@stdlib/random/array/uniform' );
2625
var isnan = require( '@stdlib/math/base/assert/is-nan' );
2726
var EPS = require( '@stdlib/constants/float64/eps' );
2827
var pkg = require( './../package.json' ).name;
@@ -33,19 +32,18 @@ var variance = require( './../lib' );
3332

3433
bench( pkg, function benchmark( b ) {
3534
var lambda;
36-
var len;
35+
var opts;
3736
var y;
3837
var i;
3938

40-
len = 100;
41-
lambda = new Float64Array( len );
42-
for ( i = 0; i < len; i++ ) {
43-
lambda[ i ] = uniform( EPS, 20.0 );
44-
}
39+
opts = {
40+
'dtype': 'float64'
41+
};
42+
lambda = uniform( 100, EPS, 20.0, opts );
4543

4644
b.tic();
4745
for ( i = 0; i < b.iterations; i++ ) {
48-
y = variance( lambda[ i % len ] );
46+
y = variance( lambda[ i % lambda.length ] );
4947
if ( isnan( y ) ) {
5048
b.fail( 'should not return NaN' );
5149
}

lib/node_modules/@stdlib/stats/base/dists/poisson/variance/benchmark/benchmark.native.js

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -22,11 +22,11 @@
2222

2323
var resolve = require( 'path' ).resolve;
2424
var bench = require( '@stdlib/bench' );
25-
var Float64Array = require( '@stdlib/array/float64' );
25+
var uniform = require( '@stdlib/random/array/uniform' );
2626
var tryRequire = require( '@stdlib/utils/try-require' );
27-
var uniform = require( '@stdlib/random/base/uniform' );
2827
var isnan = require( '@stdlib/math/base/assert/is-nan' );
2928
var EPS = require( '@stdlib/constants/float64/eps' );
29+
var format = require( '@stdlib/string/format' );
3030
var pkg = require( './../package.json' ).name;
3131

3232

@@ -40,21 +40,20 @@ var opts = {
4040

4141
// MAIN //
4242

43-
bench( pkg+'::native', opts, function benchmark( b ) {
43+
bench( format( '%s::native', pkg ), opts, function benchmark( b ) {
4444
var lambda;
45-
var len;
45+
var opts;
4646
var y;
4747
var i;
4848

49-
len = 100;
50-
lambda = new Float64Array( len );
51-
for ( i = 0; i < len; i++ ) {
52-
lambda[ i ] = uniform( EPS, 20.0 );
53-
}
49+
opts = {
50+
'dtype': 'float64'
51+
};
52+
lambda = uniform( 100, EPS, 20.0, opts );
5453

5554
b.tic();
5655
for ( i = 0; i < b.iterations; i++ ) {
57-
y = variance( lambda[ i % len ] );
56+
y = variance( lambda[ i % lambda.length ] );
5857
if ( isnan( y ) ) {
5958
b.fail( 'should not return NaN' );
6059
}

0 commit comments

Comments
 (0)