2121// MODULES //
2222
2323var bench = require ( '@stdlib/bench' ) ;
24- var randu = require ( '@stdlib/random/base/randu ' ) ;
24+ var Float64Array = require ( '@stdlib/array/float64 ' ) ;
2525var uniform = require ( '@stdlib/random/base/uniform' ) ;
2626var isnan = require ( '@stdlib/math/base/assert/is-nan' ) ;
2727var pkg = require ( './../package.json' ) . name ;
@@ -31,16 +31,23 @@ var mgf = require( './../lib' );
3131// MAIN //
3232
3333bench ( pkg , function benchmark ( b ) {
34+ var len ;
3435 var mu ;
3536 var t ;
3637 var y ;
3738 var i ;
3839
40+ len = 100 ;
41+ t = new Float64Array ( len ) ;
42+ mu = new Float64Array ( len ) ;
43+ for ( i = 0 ; i < len ; i ++ ) {
44+ t [ i ] = uniform ( - 100.0 , 0.0 ) ;
45+ mu [ i ] = uniform ( - 50.0 , 50.0 ) ;
46+ }
47+
3948 b . tic ( ) ;
4049 for ( i = 0 ; i < b . iterations ; i ++ ) {
41- t = uniform ( - 100.0 , 0.0 ) ;
42- mu = uniform ( - 50.0 , 50.0 ) ;
43- y = mgf ( t , mu ) ;
50+ y = mgf ( t [ i % len ] , mu [ i % len ] ) ;
4451 if ( isnan ( y ) ) {
4552 b . fail ( 'should not return NaN' ) ;
4653 }
@@ -55,18 +62,23 @@ bench( pkg, function benchmark( b ) {
5562
5663bench ( pkg + ':factory' , function benchmark ( b ) {
5764 var mymgf ;
65+ var len ;
5866 var mu ;
5967 var t ;
6068 var y ;
6169 var i ;
6270
6371 mu = 40.0 ;
6472 mymgf = mgf . factory ( mu ) ;
73+ len = 100 ;
74+ t = new Float64Array ( len ) ;
75+ for ( i = 0 ; i < len ; i ++ ) {
76+ t [ i ] = uniform ( 0.0 , 100.0 ) ;
77+ }
6578
6679 b . tic ( ) ;
6780 for ( i = 0 ; i < b . iterations ; i ++ ) {
68- t = randu ( ) * 100.0 ;
69- y = mymgf ( t ) ;
81+ y = mymgf ( t [ i % len ] ) ;
7082 if ( isnan ( y ) ) {
7183 b . fail ( 'should not return NaN' ) ;
7284 }
0 commit comments