Skip to content

Commit 89e6e3f

Browse files
authored
bench: update random value generation
PR-URL: #9855 Reviewed-by: Philipp Burckhardt <pburckhardt@outlook.com>
1 parent 6114701 commit 89e6e3f

File tree

28 files changed

+291
-318
lines changed

28 files changed

+291
-318
lines changed

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

Lines changed: 17 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -21,10 +21,10 @@
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' );
27+
var format = require( '@stdlib/string/format' );
2828
var pkg = require( './../package.json' ).name;
2929
var cdf = require( './../lib' );
3030

@@ -33,22 +33,20 @@ var cdf = require( './../lib' );
3333

3434
bench( pkg, function benchmark( b ) {
3535
var sigma;
36-
var len;
36+
var opts;
3737
var x;
3838
var y;
3939
var i;
4040

41-
len = 100;
42-
x = new Float64Array( len );
43-
sigma = new Float64Array( len );
44-
for ( i = 0; i < len; i++ ) {
45-
x[ i ] = uniform( -100.0, 100.0 );
46-
sigma[ i ] = uniform( EPS, 20.0 );
47-
}
41+
opts = {
42+
'dtype': 'float64'
43+
};
44+
x = uniform( 100, -100.0, 100.0, opts );
45+
sigma = uniform( 100, EPS, 20.0, opts );
4846

4947
b.tic();
5048
for ( i = 0; i < b.iterations; i++ ) {
51-
y = cdf( x[ i % len ], sigma[ i % len ] );
49+
y = cdf( x[ i % x.length ], sigma[ i % sigma.length ] );
5250
if ( isnan( y ) ) {
5351
b.fail( 'should not return NaN' );
5452
}
@@ -61,25 +59,25 @@ bench( pkg, function benchmark( b ) {
6159
b.end();
6260
});
6361

64-
bench( pkg+':factory', function benchmark( b ) {
62+
bench( format( '%s:factory', pkg ), function benchmark( b ) {
6563
var sigma;
6664
var mycdf;
67-
var len;
65+
var opts;
6866
var x;
6967
var y;
7068
var i;
7169

7270
sigma = 4.0;
7371
mycdf = cdf.factory( sigma );
74-
len = 100;
75-
x = new Float64Array( len );
76-
for ( i = 0; i < len; i++ ) {
77-
x[ i ] = uniform( -25.0, 25.0 );
78-
}
72+
73+
opts = {
74+
'dtype': 'float64'
75+
};
76+
x = uniform( 100, -25.0, 25.0, opts );
7977

8078
b.tic();
8179
for ( i = 0; i < b.iterations; i++ ) {
82-
y = mycdf( x[ i % len ] );
80+
y = mycdf( x[ i % x.length ] );
8381
if ( isnan( y ) ) {
8482
b.fail( 'should not return NaN' );
8583
}

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

Lines changed: 10 additions & 12 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 randu = require( '@stdlib/random/base/randu' );
25+
var uniform = require( '@stdlib/random/array/uniform' );
2726
var isnan = require( '@stdlib/math/base/assert/is-nan' );
2827
var EPS = require( '@stdlib/constants/float64/eps' );
2928
var tryRequire = require( '@stdlib/utils/try-require' );
29+
var format = require( '@stdlib/string/format' );
3030
var pkg = require( './../package.json' ).name;
3131

3232

@@ -40,24 +40,22 @@ 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 sigma;
45-
var len;
45+
var opts;
4646
var x;
4747
var y;
4848
var i;
4949

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

5856
b.tic();
5957
for ( i = 0; i < b.iterations; i++ ) {
60-
y = cdf( x[ i % len ], sigma[ i % len ] );
58+
y = cdf( x[ i % x.length ], sigma[ i % sigma.length ] );
6159
if ( isnan( y ) ) {
6260
b.fail( 'should not return NaN' );
6361
}

lib/node_modules/@stdlib/stats/base/dists/rayleigh/entropy/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 randu = require( '@stdlib/random/base/randu' );
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 entropy = require( './../lib' );
3332

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

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

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

lib/node_modules/@stdlib/stats/base/dists/rayleigh/entropy/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' );
26-
var randu = require( '@stdlib/random/base/randu' );
25+
var uniform = require( '@stdlib/random/array/uniform' );
2726
var isnan = require( '@stdlib/math/base/assert/is-nan' );
2827
var EPS = require( '@stdlib/constants/float64/eps' );
2928
var tryRequire = require( '@stdlib/utils/try-require' );
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 sigma;
45-
var len;
45+
var opts;
4646
var y;
4747
var i;
4848

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

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

lib/node_modules/@stdlib/stats/base/dists/rayleigh/kurtosis/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 kurtosis = require( './../lib' );
3332

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

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

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

lib/node_modules/@stdlib/stats/base/dists/rayleigh/kurtosis/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' );
26-
var uniform = require( '@stdlib/random/base/uniform' );
25+
var uniform = require( '@stdlib/random/array/uniform' );
2726
var EPS = require( '@stdlib/constants/float64/eps' );
2827
var isnan = require( '@stdlib/math/base/assert/is-nan' );
2928
var tryRequire = require( '@stdlib/utils/try-require' );
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 sigma;
45-
var len;
45+
var opts;
4646
var y;
4747
var i;
4848

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

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

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

Lines changed: 17 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -21,10 +21,10 @@
2121
// MODULES //
2222

2323
var bench = require( '@stdlib/bench' );
24-
var Float64Array = require( '@stdlib/array/float64' );
25-
var randu = require( '@stdlib/random/base/randu' );
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' );
27+
var format = require( '@stdlib/string/format' );
2828
var pkg = require( './../package.json' ).name;
2929
var logcdf = require( './../lib' );
3030

@@ -33,22 +33,20 @@ var logcdf = require( './../lib' );
3333

3434
bench( pkg, function benchmark( b ) {
3535
var sigma;
36-
var len;
36+
var opts;
3737
var x;
3838
var y;
3939
var i;
4040

41-
len = 100;
42-
x = new Float64Array( len );
43-
sigma = new Float64Array( len );
44-
for ( i = 0; i < len; i++ ) {
45-
x[ i ] = ( randu() * 100.0 ) - 100.0;
46-
sigma[ i ] = ( randu() * 20.0 ) + EPS;
47-
}
41+
opts = {
42+
'dtype': 'float64'
43+
};
44+
x = uniform( 100, -100.0, 100.0, opts );
45+
sigma = uniform( 100, EPS, 20.0, opts );
4846

4947
b.tic();
5048
for ( i = 0; i < b.iterations; i++ ) {
51-
y = logcdf( x[ i % len ], sigma[ i % len ] );
49+
y = logcdf( x[ i % x.length ], sigma[ i % sigma.length ] );
5250
if ( isnan( y ) ) {
5351
b.fail( 'should not return NaN' );
5452
}
@@ -61,20 +59,25 @@ bench( pkg, function benchmark( b ) {
6159
b.end();
6260
});
6361

64-
bench( pkg+':factory', function benchmark( b ) {
62+
bench( format( '%s:factory', pkg ), function benchmark( b ) {
6563
var mylogcdf;
6664
var sigma;
65+
var opts;
6766
var x;
6867
var y;
6968
var i;
7069

7170
sigma = 4.0;
7271
mylogcdf = logcdf.factory( sigma );
7372

73+
opts = {
74+
'dtype': 'float64'
75+
};
76+
x = uniform( 100, -25.0, 25.0, opts );
77+
7478
b.tic();
7579
for ( i = 0; i < b.iterations; i++ ) {
76-
x = ( randu()*50.0 ) - 25.0;
77-
y = mylogcdf( x );
80+
y = mylogcdf( x[ i % x.length ] );
7881
if ( isnan( y ) ) {
7982
b.fail( 'should not return NaN' );
8083
}

0 commit comments

Comments
 (0)