Skip to content

Commit 5429c27

Browse files
committed
bench: update random value generation
1 parent 9485c2b commit 5429c27

File tree

16 files changed

+83
-51
lines changed

16 files changed

+83
-51
lines changed

lib/node_modules/@stdlib/math/base/assert/is-integer/test/test.js

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ tape( 'main export is a function', function test( t ) {
3939
tape( 'the function returns `true` if provided an integer', function test( t ) {
4040
var i;
4141
for ( i = -50; i < 51; i++ ) {
42-
t.equal( isInteger( i ), true, 'returns true when provided '+i );
42+
t.equal( isInteger( i ), true, 'returns expected value when provided '+i );
4343
}
4444
t.end();
4545
});
@@ -50,23 +50,23 @@ tape( 'the function returns `false` if not provided an integer', function test(
5050
for ( i = 0; i < 100; i++ ) {
5151
v = ( randu()*100.0 ) - 50.0;
5252
if ( trunc(v) !== v ) {
53-
t.equal( isInteger( v ), false, 'returns false when provided '+v );
53+
t.equal( isInteger( v ), false, 'returns expected value when provided '+v );
5454
}
5555
}
5656
t.end();
5757
});
5858

5959
tape( 'the function returns `false` if provided `NaN`', function test( t ) {
60-
t.equal( isInteger( NaN ), false, 'returns false' );
60+
t.equal( isInteger( NaN ), false, 'returns expected value' );
6161
t.end();
6262
});
6363

6464
tape( 'WARNING: function returns `true` if provided `+infinity`', function test( t ) {
65-
t.equal( isInteger( PINF ), true, 'returns true' );
65+
t.equal( isInteger( PINF ), true, 'returns expected value' );
6666
t.end();
6767
});
6868

6969
tape( 'WARNING: function returns `true` if provided `-infinity`', function test( t ) {
70-
t.equal( isInteger( NINF ), true, 'returns true' );
70+
t.equal( isInteger( NINF ), true, 'returns expected value' );
7171
t.end();
7272
});

lib/node_modules/@stdlib/math/base/assert/is-integer/test/test.native.js

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ tape( 'main export is a function', opts, function test( t ) {
4848
tape( 'the function returns `true` if provided an integer', opts, function test( t ) {
4949
var i;
5050
for ( i = -50; i < 51; i++ ) {
51-
t.equal( isInteger( i ), true, 'returns true when provided '+i );
51+
t.equal( isInteger( i ), true, 'returns expected value when provided '+i );
5252
}
5353
t.end();
5454
});
@@ -59,23 +59,23 @@ tape( 'the function returns `false` if not provided an integer', opts, function
5959
for ( i = 0; i < 100; i++ ) {
6060
v = ( randu()*100.0 ) - 50.0;
6161
if ( trunc(v) !== v ) {
62-
t.equal( isInteger( v ), false, 'returns false when provided '+v );
62+
t.equal( isInteger( v ), false, 'returns expected value when provided '+v );
6363
}
6464
}
6565
t.end();
6666
});
6767

6868
tape( 'the function returns `false` if provided `NaN`', opts, function test( t ) {
69-
t.equal( isInteger( NaN ), false, 'returns false' );
69+
t.equal( isInteger( NaN ), false, 'returns expected value' );
7070
t.end();
7171
});
7272

7373
tape( 'WARNING: function returns `true` if provided `+infinity`', opts, function test( t ) {
74-
t.equal( isInteger( PINF ), true, 'returns true' );
74+
t.equal( isInteger( PINF ), true, 'returns expected value' );
7575
t.end();
7676
});
7777

7878
tape( 'WARNING: function returns `true` if provided `-infinity`', opts, function test( t ) {
79-
t.equal( isInteger( NINF ), true, 'returns true' );
79+
t.equal( isInteger( NINF ), true, 'returns expected value' );
8080
t.end();
8181
});

lib/node_modules/@stdlib/math/base/assert/is-integerf/test/test.js

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ tape( 'main export is a function', function test( t ) {
3939
tape( 'the function returns `true` if provided an integer', function test( t ) {
4040
var i;
4141
for ( i = -50; i < 51; i++ ) {
42-
t.equal( isIntegerf( i ), true, 'returns true when provided '+i );
42+
t.equal( isIntegerf( i ), true, 'returns expected value when provided '+i );
4343
}
4444
t.end();
4545
});
@@ -50,23 +50,23 @@ tape( 'the function returns `false` if not provided an integer', function test(
5050
for ( i = 0; i < 100; i++ ) {
5151
v = ( randu() * 100.0 ) - 50.0;
5252
if ( truncf( v ) !== v ) {
53-
t.equal( isIntegerf( v ), false, 'returns false when provided '+v );
53+
t.equal( isIntegerf( v ), false, 'returns expected value when provided '+v );
5454
}
5555
}
5656
t.end();
5757
});
5858

5959
tape( 'the function returns `false` if provided `NaN`', function test( t ) {
60-
t.equal( isIntegerf( NaN ), false, 'returns false' );
60+
t.equal( isIntegerf( NaN ), false, 'returns expected value' );
6161
t.end();
6262
});
6363

6464
tape( 'WARNING: function returns `true` if provided `+infinity`', function test( t ) {
65-
t.equal( isIntegerf( PINF ), true, 'returns true' );
65+
t.equal( isIntegerf( PINF ), true, 'returns expected value' );
6666
t.end();
6767
});
6868

6969
tape( 'WARNING: function returns `true` if provided `-infinity`', function test( t ) {
70-
t.equal( isIntegerf( NINF ), true, 'returns true' );
70+
t.equal( isIntegerf( NINF ), true, 'returns expected value' );
7171
t.end();
7272
});

lib/node_modules/@stdlib/math/base/assert/is-integerf/test/test.native.js

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ tape( 'main export is a function', opts, function test( t ) {
4848
tape( 'the function returns `true` if provided an integer', opts, function test( t ) {
4949
var i;
5050
for ( i = -50; i < 51; i++ ) {
51-
t.equal( isIntegerf( i ), true, 'returns true when provided '+i );
51+
t.equal( isIntegerf( i ), true, 'returns expected value when provided '+i );
5252
}
5353
t.end();
5454
});
@@ -59,23 +59,23 @@ tape( 'the function returns `false` if not provided an integer', opts, function
5959
for ( i = 0; i < 100; i++ ) {
6060
v = ( randu() * 100.0 ) - 50.0;
6161
if ( truncf( v ) !== v ) {
62-
t.equal( isIntegerf( v ), false, 'returns false when provided '+v );
62+
t.equal( isIntegerf( v ), false, 'returns expected value when provided '+v );
6363
}
6464
}
6565
t.end();
6666
});
6767

6868
tape( 'the function returns `false` if provided `NaN`', opts, function test( t ) {
69-
t.equal( isIntegerf( NaN ), false, 'returns false' );
69+
t.equal( isIntegerf( NaN ), false, 'returns expected value' );
7070
t.end();
7171
});
7272

7373
tape( 'WARNING: function returns `true` if provided `+infinity`', opts, function test( t ) {
74-
t.equal( isIntegerf( PINF ), true, 'returns true' );
74+
t.equal( isIntegerf( PINF ), true, 'returns expected value' );
7575
t.end();
7676
});
7777

7878
tape( 'WARNING: function returns `true` if provided `-infinity`', opts, function test( t ) {
79-
t.equal( isIntegerf( NINF ), true, 'returns true' );
79+
t.equal( isIntegerf( NINF ), true, 'returns expected value' );
8080
t.end();
8181
});

lib/node_modules/@stdlib/math/base/assert/is-nan/benchmark/benchmark.js

Lines changed: 8 additions & 3 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 isBoolean = require( '@stdlib/assert/is-boolean' ).isPrimitive;
2626
var pkg = require( './../package.json' ).name;
2727
var isnan = require( './../lib' );
@@ -30,14 +30,19 @@ var isnan = require( './../lib' );
3030
// MAIN //
3131

3232
bench( pkg, function benchmark( b ) {
33+
var opts;
3334
var x;
3435
var y;
3536
var i;
3637

38+
opts = {
39+
'dtype': 'float64'
40+
};
41+
x = uniform( 100, -5.0e6, 5.0e6, opts );
42+
3743
b.tic();
3844
for ( i = 0; i < b.iterations; i++ ) {
39-
x = ( randu()*1.0e7 ) - 5.0e6;
40-
y = isnan( x );
45+
y = isnan( x[ i%x.length ] );
4146
if ( typeof y !== 'boolean' ) {
4247
b.fail( 'should return a boolean' );
4348
}

lib/node_modules/@stdlib/math/base/assert/is-nan/benchmark/benchmark.native.js

Lines changed: 8 additions & 3 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 isBoolean = require( '@stdlib/assert/is-boolean' ).isPrimitive;
2727
var tryRequire = require( '@stdlib/utils/try-require' );
2828
var pkg = require( './../package.json' ).name;
@@ -39,14 +39,19 @@ var opts = {
3939
// MAIN //
4040

4141
bench( pkg+'::native', opts, function benchmark( b ) {
42+
var opts;
4243
var x;
4344
var y;
4445
var i;
4546

47+
opts = {
48+
'dtype': 'float64'
49+
};
50+
x = uniform( 100, -5.0e6, 5.0e6, opts );
51+
4652
b.tic();
4753
for ( i = 0; i < b.iterations; i++ ) {
48-
x = ( randu()*1.0e7 ) - 5.0e6;
49-
y = isnan( x );
54+
y = isnan( x[ i%x.length ] );
5055
if ( typeof y !== 'boolean' ) {
5156
b.fail( 'should return a boolean' );
5257
}

lib/node_modules/@stdlib/math/base/assert/is-nan/benchmark/c/benchmark.c

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -90,15 +90,18 @@ static double rand_double( void ) {
9090
*/
9191
static double benchmark( void ) {
9292
double elapsed;
93-
double x;
93+
double x[ 100 ];
9494
double t;
9595
int y;
9696
int i;
9797

98+
for ( i = 0; i < 100; i++ ) {
99+
x[ i ] = ( 1.0e7*rand_double() ) - 5.0e6;
100+
}
101+
98102
t = tic();
99103
for ( i = 0; i < ITERATIONS; i++ ) {
100-
x = ( 1.0e7*rand_double() ) - 5.0e6;
101-
y = isnan( x );
104+
y = isnan( x[ i%100 ] );
102105
if ( y != 0 && y != 1 ) {
103106
printf( "should return 0 or 1\n" );
104107
break;

lib/node_modules/@stdlib/math/base/assert/is-nan/benchmark/c/native/benchmark.c

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -92,15 +92,18 @@ static double rand_double( void ) {
9292
*/
9393
static double benchmark( void ) {
9494
double elapsed;
95-
double x;
95+
double x[ 100 ];
9696
double t;
9797
bool b;
9898
int i;
9999

100+
for ( i = 0; i < 100; i++ ) {
101+
x[ i ] = ( 1.0e7*rand_double() ) - 5.0e6;
102+
}
103+
100104
t = tic();
101105
for ( i = 0; i < ITERATIONS; i++ ) {
102-
x = (rand_double()*1.0e7) - 5.0e6;
103-
b = stdlib_base_is_nan( x );
106+
b = stdlib_base_is_nan( x[ i%100 ] );
104107
if ( b != true && b != false ) {
105108
printf( "should return either true or false\n" );
106109
break;

lib/node_modules/@stdlib/math/base/assert/is-nan/test/test.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ tape( 'main export is a function', function test( t ) {
3434
});
3535

3636
tape( 'the function returns `true` if provided `NaN`', function test( t ) {
37-
t.equal( isnan( NaN ), true, 'returns true' );
37+
t.equal( isnan( NaN ), true, 'returns expected value' );
3838
t.end();
3939
});
4040

@@ -56,7 +56,7 @@ tape( 'the function returns `false` if not provided `NaN`', function test( t ) {
5656
];
5757

5858
for ( i = 0; i < values.length; i++ ) {
59-
t.equal( isnan( values[i] ), false, 'returns false when provided ' + values[ i ] );
59+
t.equal( isnan( values[i] ), false, 'returns expected value when provided ' + values[ i ] );
6060
}
6161
t.end();
6262
});

lib/node_modules/@stdlib/math/base/assert/is-nan/test/test.native.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ tape( 'main export is a function', opts, function test( t ) {
4343
});
4444

4545
tape( 'the function returns `true` if provided `NaN`', opts, function test( t ) {
46-
t.equal( isnan( NaN ), true, 'returns true' );
46+
t.equal( isnan( NaN ), true, 'returns expected value' );
4747
t.end();
4848
});
4949

@@ -65,7 +65,7 @@ tape( 'the function returns `false` if not provided `NaN`', opts, function test(
6565
];
6666

6767
for ( i = 0; i < values.length; i++ ) {
68-
t.equal( isnan( values[i] ), false, 'returns false when provided ' + values[ i ] );
68+
t.equal( isnan( values[i] ), false, 'returns expected value when provided ' + values[ i ] );
6969
}
7070
t.end();
7171
});

0 commit comments

Comments
 (0)