Skip to content

Commit fba36b1

Browse files
committed
feat: updated benchmarks with precomputation
1 parent d211b60 commit fba36b1

File tree

3 files changed

+12
-9
lines changed

3 files changed

+12
-9
lines changed

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

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

2323
var bench = require( '@stdlib/bench' );
2424
var randu = require( '@stdlib/random/base/randu' );
25-
var roundf = require( '@stdlib/math/base/special/roundf' );
2625
var isBoolean = require( '@stdlib/assert/is-boolean' ).isPrimitive;
2726
var pkg = require( './../package.json' ).name;
2827
var isOddf = require( './../lib' );
@@ -35,10 +34,11 @@ bench( pkg, function benchmark( b ) {
3534
var y;
3635
var i;
3736

37+
x = randu( 100, -50, 50 );
38+
3839
b.tic();
3940
for ( i = 0; i < b.iterations; i++ ) {
40-
x = roundf( ( randu() * 1.0e7 ) - 5.0e6 );
41-
y = isOddf( x );
41+
y = isOddf( x[ i % 100 ] );
4242
if ( typeof y !== 'boolean' ) {
4343
b.fail( 'should return a boolean' );
4444
}

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

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@
2323
var resolve = require( 'path' ).resolve;
2424
var bench = require( '@stdlib/bench' );
2525
var randu = require( '@stdlib/random/base/randu' );
26-
var roundf = require( '@stdlib/math/base/special/roundf' );
2726
var isBoolean = require( '@stdlib/assert/is-boolean' ).isPrimitive;
2827
var tryRequire = require( '@stdlib/utils/try-require' );
2928
var pkg = require( './../package.json' ).name;
@@ -44,10 +43,11 @@ bench( pkg, opts, function benchmark( b ) {
4443
var y;
4544
var i;
4645

46+
x = randu( 100, -50, 50 );
47+
4748
b.tic();
4849
for ( i = 0; i < b.iterations; i++ ) {
49-
x = roundf( ( randu() * 1.0e7 ) - 5.0e6 );
50-
y = isOddf( x );
50+
y = isOddf( x[ i % 100 ] );
5151
if ( typeof y !== 'boolean' ) {
5252
b.fail( 'should return a boolean' );
5353
}

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

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

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

0 commit comments

Comments
 (0)