Skip to content

Commit c718a4c

Browse files
Resolves #4982 by improving benchmark accuracy and performance.
1 parent bb3efff commit c718a4c

File tree

1 file changed

+18
-25
lines changed
  • lib/node_modules/@stdlib/stats/base/dists/pareto-type1/cdf/benchmark

1 file changed

+18
-25
lines changed

lib/node_modules/@stdlib/stats/base/dists/pareto-type1/cdf/benchmark/benchmark.js

Lines changed: 18 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -31,22 +31,19 @@ var cdf = require( './../lib' );
3131
// MAIN //
3232

3333
bench( pkg, function benchmark( b ) {
34-
var alpha;
35-
var beta;
34+
var alpha = uniform( EPS, 100.0 );
35+
var beta = uniform( EPS, 100.0 );
3636
var x;
3737
var y;
3838
var i;
3939

40-
b.tic();
41-
for ( i = 0; i < b.iterations; i++ ) {
42-
x = ( randu()*20.0 ) + EPS;
43-
alpha = ( randu()*100.0 ) + EPS;
44-
beta = ( randu()*100.0 ) + EPS;
45-
y = cdf( x, alpha, beta );
46-
if ( isnan( y ) ) {
47-
b.fail( 'should not return NaN' );
48-
}
49-
}
40+
for ( i = 0; i < b.iterations; i++ ) {
41+
x = uniform( EPS, 20.0 );
42+
y = cdf( x, alpha, beta );
43+
if ( isnan( y ) ) {
44+
b.fail( 'should not return NaN' );
45+
}
46+
}
5047
b.toc();
5148
if ( isnan( y ) ) {
5249
b.fail( 'should not return NaN' );
@@ -56,25 +53,21 @@ bench( pkg, function benchmark( b ) {
5653
});
5754

5855
bench( pkg+':factory', function benchmark( b ) {
59-
var mycdf;
60-
var alpha;
61-
var beta;
56+
var alpha = 100.56789;
57+
var beta = 55.54321;
58+
var mycdf = cdf.factory( alpha, beta );
6259
var x;
6360
var y;
6461
var i;
6562

66-
alpha = 100.56789;
67-
beta = 55.54321;
68-
mycdf = cdf.factory( alpha, beta );
69-
7063
b.tic();
7164
for ( i = 0; i < b.iterations; i++ ) {
72-
x = ( randu()*50.0 ) + EPS;
73-
y = mycdf( x );
74-
if ( isnan( y ) ) {
75-
b.fail( 'should not return NaN' );
76-
}
77-
}
65+
x = uniform( EPS, 50.0 );
66+
y = mycdf( x );
67+
if ( isnan( y ) ) {
68+
b.fail( 'should not return NaN' );
69+
}
70+
}
7871
b.toc();
7972
if ( isnan( y ) ) {
8073
b.fail( 'should not return NaN' );

0 commit comments

Comments
 (0)