Skip to content

Commit fbe7b78

Browse files
hrshyanakul-krishnakumar
authored andcommitted
bench: update random value generation
PR-URL: stdlib-js#9764 Reviewed-by: Philipp Burckhardt <pburckhardt@outlook.com>
1 parent 53ad187 commit fbe7b78

28 files changed

Lines changed: 278 additions & 374 deletions

File tree

lib/node_modules/@stdlib/stats/base/dists/logistic/cdf/benchmark/benchmark.js

Lines changed: 16 additions & 20 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;
@@ -32,26 +31,23 @@ var cdf = require( './../lib' );
3231
// MAIN //
3332

3433
bench( pkg, function benchmark( b ) {
35-
var len;
34+
var opts;
3635
var mu;
3736
var s;
3837
var x;
3938
var y;
4039
var i;
4140

42-
len = 100;
43-
mu = new Float64Array( len );
44-
s = new Float64Array( len );
45-
x = new Float64Array( len );
46-
for ( i = 0; i < len; i++ ) {
47-
x[ i ] = uniform( -100.0, 0.0 );
48-
mu[ i ] = uniform( -50.0, 50.0 );
49-
s[ i ] = uniform( EPS, 20.0 );
50-
}
41+
opts = {
42+
'dtype': 'float64'
43+
};
44+
x = uniform( 100, -100.0, 0.0, opts );
45+
mu = uniform( 100, -50.0, 50.0, opts );
46+
s = uniform( 100, EPS, 20.0, opts );
5147

5248
b.tic();
5349
for ( i = 0; i < b.iterations; i++ ) {
54-
y = cdf( x[ i % len ], mu[ i % len ], s[ i % len ] );
50+
y = cdf( x[ i % x.length ], mu[ i % mu.length ], s[ i % s.length ] );
5551
if ( isnan( y ) ) {
5652
b.fail( 'should not return NaN' );
5753
}
@@ -66,7 +62,7 @@ bench( pkg, function benchmark( b ) {
6662

6763
bench( pkg+':factory', function benchmark( b ) {
6864
var mycdf;
69-
var len;
65+
var opts;
7066
var mu;
7167
var s;
7268
var x;
@@ -76,15 +72,15 @@ bench( pkg+':factory', function benchmark( b ) {
7672
mu = 10.0;
7773
s = 4.0;
7874
mycdf = cdf.factory( mu, s );
79-
len = 100;
80-
x = new Float64Array( len );
81-
for ( i = 0; i < len; i++ ) {
82-
x[ i ] = uniform( 0.0, 50.0 );
83-
}
75+
76+
opts = {
77+
'dtype': 'float64'
78+
};
79+
x = uniform( 100, 0.0, 50.0, opts );
8480

8581
b.tic();
8682
for ( i = 0; i < b.iterations; i++ ) {
87-
y = mycdf( x[ i % len ] );
83+
y = mycdf( x[ i % x.length ] );
8884
if ( isnan( y ) ) {
8985
b.fail( 'should not return NaN' );
9086
}

lib/node_modules/@stdlib/stats/base/dists/logistic/cdf/benchmark/benchmark.native.js

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

2323
var resolve = require( 'path' ).resolve;
2424
var bench = require( '@stdlib/bench' );
25-
var Float64Array = require( '@stdlib/array/float64' );
2625
var tryRequire = require( '@stdlib/utils/try-require' );
27-
var uniform = require( '@stdlib/random/base/uniform' );
26+
var uniform = require( '@stdlib/random/array/uniform' );
2827
var isnan = require( '@stdlib/math/base/assert/is-nan' );
2928
var EPS = require( '@stdlib/constants/float64/eps' );
3029
var pkg = require( './../package.json' ).name;
@@ -41,26 +40,23 @@ var opts = {
4140
// MAIN //
4241

4342
bench( pkg, opts, function benchmark( b ) {
44-
var len;
43+
var opts;
4544
var mu;
4645
var s;
4746
var x;
4847
var y;
4948
var i;
5049

51-
len = 100;
52-
mu = new Float64Array( len );
53-
s = new Float64Array( len );
54-
x = new Float64Array( len );
55-
for ( i = 0; i < len; i++ ) {
56-
x[ i ] = uniform( -50.0, 50.0 );
57-
mu[ i ] = uniform( -50.0, 50.0 );
58-
s[ i ] = uniform( EPS, 20.0 );
59-
}
50+
opts = {
51+
'dtype': 'float64'
52+
};
53+
x = uniform( 100, -50.0, 50.0, opts );
54+
mu = uniform( 100, -50.0, 50.0, opts );
55+
s = uniform( 100, EPS, 20.0, opts );
6056

6157
b.tic();
6258
for ( i = 0; i < b.iterations; i++ ) {
63-
y = cdf( x[ i % len ], mu[ i % len ], s[ i % len ] );
59+
y = cdf( x[ i % x.length ], mu[ i % mu.length ], s[ i % s.length ] );
6460
if ( isnan( y ) ) {
6561
b.fail( 'should not return NaN' );
6662
}

lib/node_modules/@stdlib/stats/base/dists/logistic/entropy/benchmark/benchmark.js

Lines changed: 8 additions & 11 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;
@@ -32,23 +31,21 @@ var entropy = require( './../lib' );
3231
// MAIN //
3332

3433
bench( pkg, function benchmark( b ) {
35-
var len;
34+
var opts;
3635
var mu;
3736
var s;
3837
var y;
3938
var i;
4039

41-
len = 100;
42-
mu = new Float64Array( len );
43-
s = new Float64Array( len );
44-
for ( i = 0; i < len; i++ ) {
45-
mu[ i ] = uniform( -50.0, 50.0 );
46-
s[ i ] = uniform( EPS, 20.0 );
47-
}
40+
opts = {
41+
'dtype': 'float64'
42+
};
43+
mu = uniform( 100, -50.0, 50.0, opts );
44+
s = uniform( 100, EPS, 20.0, opts );
4845

4946
b.tic();
5047
for ( i = 0; i < b.iterations; i++ ) {
51-
y = entropy( mu[ i % len ], s[ i % len ] );
48+
y = entropy( mu[ i % mu.length ], s[ i % s.length ] );
5249
if ( isnan( y ) ) {
5350
b.fail( 'should not return NaN' );
5451
}

lib/node_modules/@stdlib/stats/base/dists/logistic/entropy/benchmark/benchmark.native.js

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

2323
var resolve = require( 'path' ).resolve;
2424
var bench = require( '@stdlib/bench' );
25-
var Float64Array = require( '@stdlib/array/float64' );
2625
var tryRequire = require( '@stdlib/utils/try-require' );
27-
var uniform = require( '@stdlib/random/base/uniform' );
26+
var uniform = require( '@stdlib/random/array/uniform' );
2827
var isnan = require( '@stdlib/math/base/assert/is-nan' );
2928
var EPS = require( '@stdlib/constants/float64/eps' );
3029
var pkg = require( './../package.json' ).name;
@@ -41,23 +40,21 @@ var opts = {
4140
// MAIN //
4241

4342
bench( pkg, opts, function benchmark( b ) {
44-
var len;
43+
var opts;
4544
var mu;
4645
var s;
4746
var y;
4847
var i;
4948

50-
len = 100;
51-
mu = new Float64Array( len );
52-
s = new Float64Array( len );
53-
for ( i = 0; i < len; i++ ) {
54-
mu[ i ] = uniform( -50.0, 50.0 );
55-
s[ i ] = uniform( EPS, 20.0 );
56-
}
49+
opts = {
50+
'dtype': 'float64'
51+
};
52+
mu = uniform( 100, -50.0, 50.0, opts );
53+
s = uniform( 100, EPS, 20.0, opts );
5754

5855
b.tic();
5956
for ( i = 0; i < b.iterations; i++ ) {
60-
y = entropy( mu[ i % len ], s[ i % len ] );
57+
y = entropy( mu[ i % mu.length ], s[ i % s.length ] );
6158
if ( isnan( y ) ) {
6259
b.fail( 'should not return NaN' );
6360
}

lib/node_modules/@stdlib/stats/base/dists/logistic/kurtosis/benchmark/benchmark.js

Lines changed: 8 additions & 11 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;
@@ -32,23 +31,21 @@ var kurtosis = require( './../lib' );
3231
// MAIN //
3332

3433
bench( pkg, function benchmark( b ) {
35-
var len;
34+
var opts;
3635
var mu;
3736
var s;
3837
var y;
3938
var i;
4039

41-
len = 100;
42-
mu = new Float64Array( len );
43-
s = new Float64Array( len );
44-
for ( i = 0; i < len; i++ ) {
45-
mu[ i ] = uniform( -50.0, 50.0 );
46-
s[ i ] = uniform( EPS, 20.0 );
47-
}
40+
opts = {
41+
'dtype': 'float64'
42+
};
43+
mu = uniform( 100, -50.0, 50.0, opts );
44+
s = uniform( 100, EPS, 20.0, opts );
4845

4946
b.tic();
5047
for ( i = 0; i < b.iterations; i++ ) {
51-
y = kurtosis( mu[ i % len ], s[ i % len ] );
48+
y = kurtosis( mu[ i % mu.length ], s[ i % s.length ] );
5249
if ( isnan( y ) ) {
5350
b.fail( 'should not return NaN' );
5451
}

lib/node_modules/@stdlib/stats/base/dists/logistic/kurtosis/benchmark/benchmark.native.js

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

2323
var resolve = require( 'path' ).resolve;
2424
var bench = require( '@stdlib/bench' );
25-
var Float64Array = require( '@stdlib/array/float64' );
2625
var tryRequire = require( '@stdlib/utils/try-require' );
27-
var randu = require( '@stdlib/random/base/randu' );
26+
var uniform = require( '@stdlib/random/array/uniform' );
2827
var isnan = require( '@stdlib/math/base/assert/is-nan' );
2928
var EPS = require( '@stdlib/constants/float64/eps' );
3029
var pkg = require( './../package.json' ).name;
@@ -41,23 +40,21 @@ var opts = {
4140
// MAIN //
4241

4342
bench( pkg+'::native', opts, function benchmark( b ) {
44-
var len;
43+
var opts;
4544
var mu;
4645
var s;
4746
var y;
4847
var i;
4948

50-
len = 100;
51-
mu = new Float64Array( len );
52-
s = new Float64Array( len );
53-
for ( i = 0; i < len; i++ ) {
54-
mu[ i ] = ( randu() * 100.0 ) - 50.0;
55-
s[ i ] = ( randu() * 20.0 ) + EPS;
56-
}
49+
opts = {
50+
'dtype': 'float64'
51+
};
52+
mu = uniform( 100, -50.0, 50.0, opts );
53+
s = uniform( 100, EPS, 20.0, opts );
5754

5855
b.tic();
5956
for ( i = 0; i < b.iterations; i++ ) {
60-
y = kurtosis( mu[ i % len ], s[ i % len ] );
57+
y = kurtosis( mu[ i % mu.length ], s[ i % s.length ] );
6158
if ( isnan( y ) ) {
6259
b.fail( 'should not return NaN' );
6360
}

lib/node_modules/@stdlib/stats/base/dists/logistic/logcdf/benchmark/benchmark.js

Lines changed: 16 additions & 20 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;
@@ -32,26 +31,23 @@ var logcdf = require( './../lib' );
3231
// MAIN //
3332

3433
bench( pkg, function benchmark( b ) {
35-
var len;
34+
var opts;
3635
var mu;
3736
var s;
3837
var x;
3938
var y;
4039
var i;
4140

42-
len = 100;
43-
x = new Float64Array( len );
44-
mu = new Float64Array( len );
45-
s = new Float64Array( len );
46-
for ( i = 0; i < len; i++ ) {
47-
x[ i ] = uniform( -100.0, 0.0 );
48-
mu[ i ] = uniform( -50.0, 50.0 );
49-
s[ i ] = uniform( EPS, 20.0 );
50-
}
41+
opts = {
42+
'dtype': 'float64'
43+
};
44+
x = uniform( 100, -100.0, 0.0, opts );
45+
mu = uniform( 100, -50.0, 50.0, opts );
46+
s = uniform( 100, EPS, 20.0, opts );
5147

5248
b.tic();
5349
for ( i = 0; i < b.iterations; i++ ) {
54-
y = logcdf( x[ i % len ], mu[ i % len ], s[ i % len ] );
50+
y = logcdf( x[ i % x.length ], mu[ i % mu.length ], s[ i % s.length ] );
5551
if ( isnan( y ) ) {
5652
b.fail( 'should not return NaN' );
5753
}
@@ -66,7 +62,7 @@ bench( pkg, function benchmark( b ) {
6662

6763
bench( pkg+':factory', function benchmark( b ) {
6864
var mylogcdf;
69-
var len;
65+
var opts;
7066
var mu;
7167
var s;
7268
var x;
@@ -76,15 +72,15 @@ bench( pkg+':factory', function benchmark( b ) {
7672
mu = 10.0;
7773
s = 4.0;
7874
mylogcdf = logcdf.factory( mu, s );
79-
len = 100;
80-
x = new Float64Array( len );
81-
for ( i = 0; i < len; i++ ) {
82-
x[ i ] = uniform( 0.0, 50.0 );
83-
}
75+
76+
opts = {
77+
'dtype': 'float64'
78+
};
79+
x = uniform( 100, 0.0, 50.0, opts );
8480

8581
b.tic();
8682
for ( i = 0; i < b.iterations; i++ ) {
87-
y = mylogcdf( x[ i % len ] );
83+
y = mylogcdf( x[ i % x.length ] );
8884
if ( isnan( y ) ) {
8985
b.fail( 'should not return NaN' );
9086
}

0 commit comments

Comments
 (0)