Skip to content

Commit 4a25fb1

Browse files
bench: random value generatio
--- 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: passed - 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 ---
1 parent 69c1704 commit 4a25fb1

File tree

12 files changed

+73
-56
lines changed

12 files changed

+73
-56
lines changed

lib/node_modules/@stdlib/math/base/special/bernoulli/benchmark/benchmark.js

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

2323
var bench = require( '@stdlib/bench' );
24-
var randu = require( '@stdlib/random/array/discrete-uniform' );
24+
var discreteUniform = require( '@stdlib/random/array/discrete-uniform' );
2525
var isnan = require( '@stdlib/math/base/assert/is-nan' );
2626
var pkg = require( './../package.json' ).name;
2727
var bernoulli = require( './../lib' );
@@ -34,7 +34,7 @@ bench( pkg, function benchmark( b ) {
3434
var y;
3535
var i;
3636

37-
x = randu( 100, 0, 500 );
37+
x = discreteUniform( 100, 0, 500 );
3838

3939
b.tic();
4040
for ( i = 0; i < b.iterations; i++ ) {

lib/node_modules/@stdlib/math/base/special/bernoulli/benchmark/benchmark.native.js

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

2323
var resolve = require( 'path' ).resolve;
2424
var bench = require( '@stdlib/bench' );
25-
var randu = require( '@stdlib/random/array/discrete-uniform' );
25+
var discreteUniform = require( '@stdlib/random/array/discrete-uniform' );
2626
var isnan = require( '@stdlib/math/base/assert/is-nan' );
2727
var tryRequire = require( '@stdlib/utils/try-require' );
2828
var pkg = require( './../package.json' ).name;
@@ -43,7 +43,7 @@ bench( pkg+'::native', opts, function benchmark( b ) {
4343
var y;
4444
var i;
4545

46-
x = randu( 100, 0, 500 );
46+
x = discreteUniform( 100, 0, 500 );
4747

4848
b.tic();
4949
for ( i = 0; i < b.iterations; i++ ) {

lib/node_modules/@stdlib/math/base/special/betainc/benchmark/benchmark.js

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

2323
var bench = require( '@stdlib/bench' );
24-
var randu = require( '@stdlib/random/base/randu' );
24+
var uniform = require( '@stdlib/random/array/uniform' );
2525
var isnan = require( '@stdlib/math/base/assert/is-nan' );
2626
var EPS = require( '@stdlib/constants/float64/eps' );
2727
var pkg = require( './../package.json' ).name;
@@ -37,12 +37,13 @@ bench( pkg, function benchmark( assert ) {
3737
var b;
3838
var i;
3939

40+
x = uniform( 100, 0.0, 1.0 );
41+
a = uniform( 100, EPS, 1000.0 );
42+
b = uniform( 100, EPS, 1000.0 );
43+
4044
assert.tic();
4145
for ( i = 0; i < assert.iterations; i++ ) {
42-
x = randu();
43-
a = ( randu()*1000.0 ) + EPS;
44-
b = ( randu()*1000.0 ) + EPS;
45-
y = betainc( x, a, b );
46+
y = betainc( x[ i % x.length ], a[ i % a.length ], b[ i % b.length ] );
4647
if ( isnan( y ) ) {
4748
assert.fail( 'should not return NaN' );
4849
}

lib/node_modules/@stdlib/math/base/special/betainc/benchmark/c/cephes/benchmark.c

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -95,19 +95,22 @@ static double rand_double( void ) {
9595
*/
9696
static double benchmark( void ) {
9797
double elapsed;
98-
double x;
99-
double a;
100-
double b;
98+
double x[ 100 ];
99+
double a[ 100 ];
100+
double b[ 100 ];
101101
double y;
102102
double t;
103103
int i;
104104

105+
for ( i = 0; i < 100; i++ ) {
106+
x[ i ] = rand_double();
107+
a[ i ] = ( 1000.0*rand_double() ) + 0.1;
108+
b[ i ] = ( 1000.0*rand_double() ) + 0.1;
109+
}
110+
105111
t = tic();
106112
for ( i = 0; i < ITERATIONS; i++ ) {
107-
x = rand_double();
108-
a = ( 1000.0*rand_double() ) + 0.1;
109-
b = ( 1000.0*rand_double() ) + 0.1;
110-
y = incbet( a, b, x );
113+
y = incbet( a[ i%100 ], b[ i%100 ], x[ i%100 ] );
111114
if ( y != y ) {
112115
printf( "should not return NaN\n" );
113116
break;

lib/node_modules/@stdlib/math/base/special/betaincinv/benchmark/benchmark.js

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

2323
var bench = require( '@stdlib/bench' );
24-
var randu = require( '@stdlib/random/base/randu' );
24+
var uniform = require( '@stdlib/random/array/uniform' );
2525
var isnan = require( '@stdlib/math/base/assert/is-nan' );
2626
var EPS = require( '@stdlib/constants/float64/eps' );
2727
var pkg = require( './../package.json' ).name;
@@ -37,12 +37,13 @@ bench( pkg, function benchmark( assert ) {
3737
var b;
3838
var i;
3939

40+
x = uniform( 100, 0.0, 1.0 );
41+
a = uniform( 100, EPS, 1000.0 );
42+
b = uniform( 100, EPS, 1000.0 );
43+
4044
assert.tic();
4145
for ( i = 0; i < assert.iterations; i++ ) {
42-
x = randu();
43-
a = ( randu()*1000.0 ) + EPS;
44-
b = ( randu()*1000.0 ) + EPS;
45-
y = betaincinv( x, a, b );
46+
y = betaincinv( x[ i%x.length ], a[ i%a.length ], b[ i%b.length ] );
4647
if ( isnan( y ) ) {
4748
assert.fail( 'should not return NaN' );
4849
}

lib/node_modules/@stdlib/math/base/special/betaincinv/benchmark/c/cephes/benchmark.c

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -95,19 +95,23 @@ static double rand_double( void ) {
9595
*/
9696
static double benchmark( void ) {
9797
double elapsed;
98-
double x;
99-
double a;
100-
double b;
98+
double x[ 100 ];
99+
double a[ 100 ];
100+
double b[ 100 ];
101101
double y;
102102
double t;
103103
int i;
104104

105+
for ( i = 0; i < 100; i++ ) {
106+
x[ i ] = rand_double();
107+
a[ i ] = ( 1000.0*rand_double() ) + 0.1;
108+
b[ i ] = ( 1000.0*rand_double() ) + 0.1;
109+
}
110+
111+
105112
t = tic();
106113
for ( i = 0; i < ITERATIONS; i++ ) {
107-
x = rand_double();
108-
a = ( 1000.0*rand_double() ) + 0.1;
109-
b = ( 1000.0*rand_double() ) + 0.1;
110-
y = incbi( a, b, x );
114+
y = incbi( a[ i%100 ], b[ i%100 ], x[ i%100 ] );
111115
if ( y != y ) {
112116
printf( "should not return NaN\n" );
113117
break;

lib/node_modules/@stdlib/math/base/special/betaln/benchmark/benchmark.js

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

2323
var bench = require( '@stdlib/bench' );
24-
var randu = require( '@stdlib/random/base/randu' );
24+
var uniform = require( '@stdlib/random/array/uniform' );
2525
var isnan = require( '@stdlib/math/base/assert/is-nan' );
2626
var pkg = require( './../package.json' ).name;
2727
var betaln = require( './../lib' );
@@ -35,11 +35,12 @@ bench( pkg, function benchmark( b ) {
3535
var z;
3636
var i;
3737

38+
x = uniform( 100, 0.0, 1000.0 );
39+
y = uniform( 100, 0.0, 1000.0 );
40+
3841
b.tic();
3942
for ( i = 0; i < b.iterations; i++ ) {
40-
x = ( randu()*1000.0 ) - 0.0;
41-
y = ( randu()*1000.0 ) - 0.0;
42-
z = betaln( x, y );
43+
z = betaln( x[ i % x.length ], y[ i % y.length ] );
4344
if ( isnan( z ) ) {
4445
b.fail( 'should not return NaN' );
4546
}

lib/node_modules/@stdlib/math/base/special/betaln/benchmark/benchmark.native.js

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222

2323
var resolve = require( 'path' ).resolve;
2424
var bench = require( '@stdlib/bench' );
25-
var randu = require( '@stdlib/random/base/randu' );
25+
var uniform = require( '@stdlib/random/array/uniform' );
2626
var isnan = require( '@stdlib/math/base/assert/is-nan' );
2727
var tryRequire = require( '@stdlib/utils/try-require' );
2828
var pkg = require( './../package.json' ).name;
@@ -44,11 +44,12 @@ bench( pkg+'::native', opts, function benchmark( b ) {
4444
var z;
4545
var i;
4646

47+
x = uniform( 100, 0.0, 1000.0 );
48+
y = uniform( 100, 0.0, 1000.0 );
49+
4750
b.tic();
4851
for ( i = 0; i < b.iterations; i++ ) {
49-
x = ( randu() * 1000.0 ) - 0.0;
50-
y = ( randu() * 1000.0 ) - 0.0;
51-
z = betaln( x, y );
52+
z = betaln( x[ i % x.length ], y[ i % y.length ] );
5253
if ( isnan( z ) ) {
5354
b.fail( 'should not return NaN' );
5455
}

lib/node_modules/@stdlib/math/base/special/betaln/benchmark/c/native/benchmark.c

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -91,17 +91,20 @@ static double rand_double( void ) {
9191
*/
9292
static double benchmark( void ) {
9393
double elapsed;
94-
double x;
95-
double y;
94+
double x[ 100 ];
95+
double y[ 100 ];
9696
double z;
9797
double t;
9898
int i;
9999

100+
for ( i = 0; i < 100; i++ ) {
101+
x[ i ] = 1000.0 * rand_double() - 0.0;
102+
y[ i ] = 1000.0 * rand_double() - 0.0;
103+
}
104+
100105
t = tic();
101106
for ( i = 0; i < ITERATIONS; i++ ) {
102-
x = 1000.0 * rand_double() - 0.0;
103-
y = 1000.0 * rand_double() - 0.0;
104-
z = stdlib_base_betaln( x, y );
107+
z = stdlib_base_betaln( x[ i%100 ], y[ i%100 ] );
105108
if ( z != z ) {
106109
printf( "should not return NaN\n" );
107110
break;

lib/node_modules/@stdlib/math/base/special/binomcoefln/benchmark/benchmark.js

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

2323
var bench = require( '@stdlib/bench' );
24-
var randu = require( '@stdlib/random/base/randu' );
25-
var round = require( '@stdlib/math/base/special/round' );
24+
var discreteUniform = require( '@stdlib/random/array/discrete-uniform' );
2625
var isnan = require( '@stdlib/math/base/assert/is-nan' );
2726
var pkg = require( './../package.json' ).name;
2827
var binomcoefln = require( './../lib' );
@@ -36,11 +35,12 @@ bench( pkg, function benchmark( b ) {
3635
var z;
3736
var i;
3837

38+
x = discreteUniform( 100, 20, 70 );
39+
y = discreteUniform( 100, 0, 20 );
40+
3941
b.tic();
4042
for ( i = 0; i < b.iterations; i++ ) {
41-
x = round( (randu()*50.0) + 20.0 );
42-
y = round( randu()*20.0 );
43-
z = binomcoefln( x, y );
43+
z = binomcoefln( x[ i % x.length ], y[ i % y.length ] );
4444
if ( isnan( z ) ) {
4545
b.fail( 'should not return NaN' );
4646
}

0 commit comments

Comments
 (0)