From 096a75d745ede872f32a296485f231c55f53744c Mon Sep 17 00:00:00 2001 From: Shubh Mehta <93862397+Shubh942@users.noreply.github.com> Date: Tue, 26 Mar 2024 11:46:33 +0000 Subject: [PATCH 1/5] refactor: update implementation in accordance with current project convention --- .../@stdlib/blas/ext/base/dsorthp/README.md | 8 ++---- .../benchmark.mostly_sorted_few_uniques.js | 24 ++++++----------- ...chmark.mostly_sorted_few_uniques.native.js | 20 +++----------- ...hmark.mostly_sorted_few_uniques.ndarray.js | 24 ++++++----------- ...ostly_sorted_few_uniques.ndarray.native.js | 20 +++----------- .../benchmark.mostly_sorted_random.js | 15 ++++++----- .../benchmark.mostly_sorted_random.native.js | 9 ++----- .../benchmark.mostly_sorted_random.ndarray.js | 15 ++++++----- ...ark.mostly_sorted_random.ndarray.native.js | 11 +++----- ...benchmark.rev_mostly_sorted_few_uniques.js | 24 ++++++----------- ...rk.rev_mostly_sorted_few_uniques.native.js | 21 +++------------ ...k.rev_mostly_sorted_few_uniques.ndarray.js | 24 ++++++----------- ...ostly_sorted_few_uniques.ndarray.native.js | 20 +++----------- .../benchmark.rev_mostly_sorted_random.js | 15 ++++++----- ...nchmark.rev_mostly_sorted_random.native.js | 11 +++----- ...chmark.rev_mostly_sorted_random.ndarray.js | 15 ++++++----- ...rev_mostly_sorted_random.ndarray.native.js | 11 +++----- .../benchmark.rev_sorted_few_uniques.js | 27 +++++++------------ ...benchmark.rev_sorted_few_uniques.native.js | 19 ++----------- ...enchmark.rev_sorted_few_uniques.ndarray.js | 25 ++++++----------- ...k.rev_sorted_few_uniques.ndarray.native.js | 21 +++------------ .../benchmark/benchmark.rev_sorted_random.js | 15 ++++++----- .../benchmark.rev_sorted_random.native.js | 11 +++----- .../benchmark.rev_sorted_random.ndarray.js | 15 ++++++----- ...chmark.rev_sorted_random.ndarray.native.js | 11 +++----- .../benchmark/benchmark.sorted_few_uniques.js | 25 ++++++----------- .../benchmark.sorted_few_uniques.native.js | 21 +++------------ .../benchmark.sorted_few_uniques.ndarray.js | 25 ++++++----------- ...hmark.sorted_few_uniques.ndarray.native.js | 21 +++------------ .../benchmark/benchmark.sorted_random.js | 14 +++++----- .../benchmark.sorted_random.native.js | 10 +++---- .../benchmark.sorted_random.ndarray.js | 14 +++++----- .../benchmark.sorted_random.ndarray.native.js | 10 +++---- .../benchmark.unsorted_few_uniques.js | 18 ++++++------- .../benchmark.unsorted_few_uniques.native.js | 14 +++------- .../benchmark.unsorted_few_uniques.ndarray.js | 18 ++++++------- ...ark.unsorted_few_uniques.ndarray.native.js | 14 +++------- .../benchmark/benchmark.unsorted_random.js | 15 ++++++----- .../benchmark.unsorted_random.native.js | 11 +++----- .../benchmark.unsorted_random.ndarray.js | 15 ++++++----- ...enchmark.unsorted_random.ndarray.native.js | 11 +++----- .../blas/ext/base/dsorthp/include.gypi | 2 +- .../ext/base/dsorthp/lib/ndarray.native.js | 12 ++++----- .../blas/ext/base/dsorthp/manifest.json | 5 +++- .../base/dsorthp/src/{addon.cpp => addon.c} | 0 45 files changed, 249 insertions(+), 457 deletions(-) rename lib/node_modules/@stdlib/blas/ext/base/dsorthp/src/{addon.cpp => addon.c} (100%) diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/README.md b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/README.md index d4ce87becf50..2fdd0e87234c 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/README.md +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/README.md @@ -54,12 +54,10 @@ The `N` and `stride` parameters determine which elements in `x` are accessed at ```javascript var Float64Array = require( '@stdlib/array/float64' ); -var floor = require( '@stdlib/math/base/special/floor' ); var x = new Float64Array( [ 1.0, -2.0, 3.0, -4.0 ] ); -var N = floor( x.length / 2 ); -dsorthp( N, -1.0, x, 2 ); +dsorthp( 2, -1.0, x, 2 ); // x => [ 3.0, -2.0, 1.0, -4.0 ] ``` @@ -67,17 +65,15 @@ Note that indexing is relative to the first index. To introduce an offset, use [ ```javascript var Float64Array = require( '@stdlib/array/float64' ); -var floor = require( '@stdlib/math/base/special/floor' ); // Initial array... var x0 = new Float64Array( [ 1.0, 2.0, 3.0, 4.0 ] ); // Create an offset view... var x1 = new Float64Array( x0.buffer, x0.BYTES_PER_ELEMENT*1 ); // start at 2nd element -var N = floor( x0.length/2 ); // Sort every other element... -dsorthp( N, -1.0, x1, 2 ); +dsorthp( 2, -1.0, x1, 2 ); // x0 => [ 1.0, 4.0, 3.0, 2.0 ] ``` diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_few_uniques.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_few_uniques.js index a86055a8c7cf..9532f4612504 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_few_uniques.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_few_uniques.js @@ -21,16 +21,21 @@ // MODULES // var bench = require( '@stdlib/bench' ); -var uniform = require( '@stdlib/random/base/uniform' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); -var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ).factory; +var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var pkg = require( './../package.json' ).name; var dsorthp = require( './../lib/dsorthp.js' ); +// VARIABLES // + +var rand = uniform( 1.0, 10.0 ); + + // FUNCTIONS // /** @@ -43,25 +48,12 @@ var dsorthp = require( './../lib/dsorthp.js' ); */ function createBenchmark( iter, len ) { var tmp; - var sa; - var sb; - var a; - var b; var x; var i; - var j; - - a = 1.0; - b = 10.0; x = []; for ( i = 0; i < iter; i++ ) { - tmp = new Float64Array( len ); - for ( j = 0; j < len; j++ ) { - sa = (b-a) * (j/len); - sb = sa / 2.0; - tmp[ j ] = floor( uniform( a+sa, b+sb ) ); - } + tmp = filledarrayBy( len, 'float64', rand ); x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_few_uniques.native.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_few_uniques.native.js index caed3ff0ce14..56f4ce362fd9 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_few_uniques.native.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_few_uniques.native.js @@ -22,11 +22,11 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); -var uniform = require( '@stdlib/random/base/uniform' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); -var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ).factory; +var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var tryRequire = require( '@stdlib/utils/try-require' ); var pkg = require( './../package.json' ).name; @@ -38,6 +38,7 @@ var dsorthp = tryRequire( resolve( __dirname, './../lib/dsorthp.native.js' ) ); var opts = { 'skip': ( dsorthp instanceof Error ) }; +var rand = uniform( 1.0, 10.0 ); // FUNCTIONS // @@ -52,25 +53,12 @@ var opts = { */ function createBenchmark( iter, len ) { var tmp; - var sa; - var sb; - var a; - var b; var x; var i; - var j; - - a = 1.0; - b = 10.0; x = []; for ( i = 0; i < iter; i++ ) { - tmp = new Float64Array( len ); - for ( j = 0; j < len; j++ ) { - sa = (b-a) * (j/len); - sb = sa / 2.0; - tmp[ j ] = floor( uniform( a+sa, b+sb ) ); - } + tmp = filledarrayBy( len, 'float64', rand ); x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_few_uniques.ndarray.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_few_uniques.ndarray.js index 991bc9bb36f2..b2b32baa636a 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_few_uniques.ndarray.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_few_uniques.ndarray.js @@ -21,16 +21,21 @@ // MODULES // var bench = require( '@stdlib/bench' ); -var uniform = require( '@stdlib/random/base/uniform' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); -var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ).factory; +var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var pkg = require( './../package.json' ).name; var dsorthp = require( './../lib/ndarray.js' ); +// VARIABLES // + +var rand = uniform( -100.0, 100.0 ); + + // FUNCTIONS // /** @@ -43,25 +48,12 @@ var dsorthp = require( './../lib/ndarray.js' ); */ function createBenchmark( iter, len ) { var tmp; - var sa; - var sb; - var a; - var b; var x; var i; - var j; - - a = 1.0; - b = 10.0; x = []; for ( i = 0; i < iter; i++ ) { - tmp = new Float64Array( len ); - for ( j = 0; j < len; j++ ) { - sa = (b-a) * (j/len); - sb = sa / 2.0; - tmp[ j ] = floor( uniform( a+sa, b+sb ) ); - } + tmp = filledarrayBy( len, 'float64', rand ); x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_few_uniques.ndarray.native.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_few_uniques.ndarray.native.js index 9e502b8612d8..09d80078b7b1 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_few_uniques.ndarray.native.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_few_uniques.ndarray.native.js @@ -22,11 +22,11 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); -var uniform = require( '@stdlib/random/base/uniform' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); -var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ).factory; +var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var tryRequire = require( '@stdlib/utils/try-require' ); var pkg = require( './../package.json' ).name; @@ -38,6 +38,7 @@ var dsorthp = tryRequire( resolve( __dirname, './../lib/ndarray.native.js' ) ); var opts = { 'skip': ( dsorthp instanceof Error ) }; +var rand = uniform( -100.0, 100.0 ); // FUNCTIONS // @@ -52,25 +53,12 @@ var opts = { */ function createBenchmark( iter, len ) { var tmp; - var sa; - var sb; - var a; - var b; var x; var i; - var j; - - a = 1.0; - b = 10.0; x = []; for ( i = 0; i < iter; i++ ) { - tmp = new Float64Array( len ); - for ( j = 0; j < len; j++ ) { - sa = (b-a) * (j/len); - sb = sa / 2.0; - tmp[ j ] = floor( uniform( a+sa, b+sb ) ); - } + tmp = filledarrayBy( len, 'float64', rand ); x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_random.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_random.js index 70fca992b1ce..feae20b3eff0 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_random.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_random.js @@ -21,16 +21,21 @@ // MODULES // var bench = require( '@stdlib/bench' ); -var randu = require( '@stdlib/random/base/randu' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); -var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ).factory; +var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var pkg = require( './../package.json' ).name; var dsorthp = require( './../lib/dsorthp.js' ); +// VARIABLES // + +var rand = uniform( -100.0, 100.0 ); + + // FUNCTIONS // /** @@ -45,14 +50,10 @@ function createBenchmark( iter, len ) { var tmp; var x; var i; - var j; x = []; for ( i = 0; i < iter; i++ ) { - tmp = new Float64Array( len ); - for ( j = 0; j < len; j++ ) { - tmp[ j ] = randu() * j; - } + tmp = filledarrayBy( len, 'float64', rand ); x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_random.native.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_random.native.js index aa323634e9d0..8c3d73bdc866 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_random.native.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_random.native.js @@ -22,10 +22,8 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); -var randu = require( '@stdlib/random/base/randu' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); -var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var tryRequire = require( '@stdlib/utils/try-require' ); @@ -38,6 +36,7 @@ var dsorthp = tryRequire( resolve( __dirname, './../lib/dsorthp.native.js' ) ); var opts = { 'skip': ( dsorthp instanceof Error ) }; +var rand = uniform( -100.0, 100.0 ); // FUNCTIONS // @@ -54,14 +53,10 @@ function createBenchmark( iter, len ) { var tmp; var x; var i; - var j; x = []; for ( i = 0; i < iter; i++ ) { - tmp = new Float64Array( len ); - for ( j = 0; j < len; j++ ) { - tmp[ j ] = randu() * j; - } + tmp = filledarrayBy( len, 'float64', rand ); x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_random.ndarray.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_random.ndarray.js index 3269dfc85750..feb071769c0b 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_random.ndarray.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_random.ndarray.js @@ -21,16 +21,21 @@ // MODULES // var bench = require( '@stdlib/bench' ); -var randu = require( '@stdlib/random/base/randu' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); -var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ).factory; +var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var pkg = require( './../package.json' ).name; var dsorthp = require( './../lib/ndarray.js' ); +// VARIABLES // + +var rand = uniform( -100.0, 100.0 ); + + // FUNCTIONS // /** @@ -45,14 +50,10 @@ function createBenchmark( iter, len ) { var tmp; var x; var i; - var j; x = []; for ( i = 0; i < iter; i++ ) { - tmp = new Float64Array( len ); - for ( j = 0; j < len; j++ ) { - tmp[ j ] = randu() * j; - } + tmp = filledarrayBy( len, 'float64', rand ); x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_random.ndarray.native.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_random.ndarray.native.js index 159d04c80068..01e400259b3f 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_random.ndarray.native.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_random.ndarray.native.js @@ -22,11 +22,11 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); -var randu = require( '@stdlib/random/base/randu' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); -var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ).factory; +var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var tryRequire = require( '@stdlib/utils/try-require' ); var pkg = require( './../package.json' ).name; @@ -38,6 +38,7 @@ var dsorthp = tryRequire( resolve( __dirname, './../lib/ndarray.native.js' ) ); var opts = { 'skip': ( dsorthp instanceof Error ) }; +var rand = uniform( -100.0, 100.0 ); // FUNCTIONS // @@ -54,14 +55,10 @@ function createBenchmark( iter, len ) { var tmp; var x; var i; - var j; x = []; for ( i = 0; i < iter; i++ ) { - tmp = new Float64Array( len ); - for ( j = 0; j < len; j++ ) { - tmp[ j ] = randu() * j; - } + tmp = filledarrayBy( len, 'float64', rand ); x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_few_uniques.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_few_uniques.js index a5752c98a999..507f91bcb990 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_few_uniques.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_few_uniques.js @@ -21,16 +21,21 @@ // MODULES // var bench = require( '@stdlib/bench' ); -var uniform = require( '@stdlib/random/base/uniform' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); -var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ).factory; +var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var pkg = require( './../package.json' ).name; var dsorthp = require( './../lib/dsorthp.js' ); +// VARIABLES // + +var rand = uniform( -100.0, 100.0 ); + + // FUNCTIONS // /** @@ -43,25 +48,12 @@ var dsorthp = require( './../lib/dsorthp.js' ); */ function createBenchmark( iter, len ) { var tmp; - var sa; - var sb; - var a; - var b; var x; var i; - var j; - - a = -10.0; - b = -1.0; x = []; for ( i = 0; i < iter; i++ ) { - tmp = new Float64Array( len ); - for ( j = 0; j < len; j++ ) { - sb = (b-a) * (j/len); - sa = sb / 2.0; - tmp[ j ] = floor( uniform( a-sa, b-sb ) ); - } + tmp = filledarrayBy( len, 'float64', rand ); x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_few_uniques.native.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_few_uniques.native.js index f905c4524128..270eaea4464f 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_few_uniques.native.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_few_uniques.native.js @@ -22,11 +22,11 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); -var uniform = require( '@stdlib/random/base/uniform' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); -var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ).factory; +var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var tryRequire = require( '@stdlib/utils/try-require' ); var pkg = require( './../package.json' ).name; @@ -38,7 +38,7 @@ var dsorthp = tryRequire( resolve( __dirname, './../lib/dsorthp.native.js' ) ); var opts = { 'skip': ( dsorthp instanceof Error ) }; - +var rand = uniform( -100.0, 100.0 ); // FUNCTIONS // @@ -52,25 +52,12 @@ var opts = { */ function createBenchmark( iter, len ) { var tmp; - var sa; - var sb; - var a; - var b; var x; var i; - var j; - - a = -10.0; - b = -1.0; x = []; for ( i = 0; i < iter; i++ ) { - tmp = new Float64Array( len ); - for ( j = 0; j < len; j++ ) { - sb = (b-a) * (j/len); - sa = sb / 2.0; - tmp[ j ] = floor( uniform( a-sa, b-sb ) ); - } + tmp = filledarrayBy( len, 'float64', rand ); x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_few_uniques.ndarray.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_few_uniques.ndarray.js index f2b3fd1aadd6..22e95fa65895 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_few_uniques.ndarray.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_few_uniques.ndarray.js @@ -21,16 +21,21 @@ // MODULES // var bench = require( '@stdlib/bench' ); -var uniform = require( '@stdlib/random/base/uniform' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); -var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ).factory; +var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var pkg = require( './../package.json' ).name; var dsorthp = require( './../lib/ndarray.js' ); +// VARIABLES // + +var rand = uniform( -100.0, 100.0 ); + + // FUNCTIONS // /** @@ -43,25 +48,12 @@ var dsorthp = require( './../lib/ndarray.js' ); */ function createBenchmark( iter, len ) { var tmp; - var sa; - var sb; - var a; - var b; var x; var i; - var j; - - a = -10.0; - b = -1.0; x = []; for ( i = 0; i < iter; i++ ) { - tmp = new Float64Array( len ); - for ( j = 0; j < len; j++ ) { - sb = (b-a) * (j/len); - sa = sb / 2.0; - tmp[ j ] = floor( uniform( a-sa, b-sb ) ); - } + tmp = filledarrayBy( len, 'float64', rand ); x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_few_uniques.ndarray.native.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_few_uniques.ndarray.native.js index b119d42a7d91..d9c0c174e0e3 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_few_uniques.ndarray.native.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_few_uniques.ndarray.native.js @@ -22,11 +22,11 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); -var uniform = require( '@stdlib/random/base/uniform' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); -var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ).factory; +var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var tryRequire = require( '@stdlib/utils/try-require' ); var pkg = require( './../package.json' ).name; @@ -38,6 +38,7 @@ var dsorthp = tryRequire( resolve( __dirname, './../lib/ndarray.native.js' ) ); var opts = { 'skip': ( dsorthp instanceof Error ) }; +var rand = uniform( -100.0, 100.0 ); // FUNCTIONS // @@ -52,25 +53,12 @@ var opts = { */ function createBenchmark( iter, len ) { var tmp; - var sa; - var sb; - var a; - var b; var x; var i; - var j; - - a = -10.0; - b = -1.0; x = []; for ( i = 0; i < iter; i++ ) { - tmp = new Float64Array( len ); - for ( j = 0; j < len; j++ ) { - sb = (b-a) * (j/len); - sa = sb / 2.0; - tmp[ j ] = floor( uniform( a-sa, b-sb ) ); - } + tmp = filledarrayBy( len, 'float64', rand ); x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_random.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_random.js index d47c1c0d1143..c2bc2aaa28d4 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_random.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_random.js @@ -21,16 +21,21 @@ // MODULES // var bench = require( '@stdlib/bench' ); -var randu = require( '@stdlib/random/base/randu' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); -var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ).factory; +var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var pkg = require( './../package.json' ).name; var dsorthp = require( './../lib/dsorthp.js' ); +// VARIABLES // + +var rand = uniform( -100.0, 100.0 ); + + // FUNCTIONS // /** @@ -45,14 +50,10 @@ function createBenchmark( iter, len ) { var tmp; var x; var i; - var j; x = []; for ( i = 0; i < iter; i++ ) { - tmp = new Float64Array( len ); - for ( j = 0; j < len; j++ ) { - tmp[ j ] = -1.0 * randu() * j; - } + tmp = filledarrayBy( len, 'float64', rand ); x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_random.native.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_random.native.js index 283e5f7f0c82..6a768de34c4f 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_random.native.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_random.native.js @@ -22,11 +22,11 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); -var randu = require( '@stdlib/random/base/randu' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); -var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ).factory; +var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var tryRequire = require( '@stdlib/utils/try-require' ); var pkg = require( './../package.json' ).name; @@ -38,6 +38,7 @@ var dsorthp = tryRequire( resolve( __dirname, './../lib/dsorthp.native.js' ) ); var opts = { 'skip': ( dsorthp instanceof Error ) }; +var rand = uniform( -100.0, 100.0 ); // FUNCTIONS // @@ -54,14 +55,10 @@ function createBenchmark( iter, len ) { var tmp; var x; var i; - var j; x = []; for ( i = 0; i < iter; i++ ) { - tmp = new Float64Array( len ); - for ( j = 0; j < len; j++ ) { - tmp[ j ] = -1.0 * randu() * j; - } + tmp = filledarrayBy( len, 'float64', rand ); x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_random.ndarray.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_random.ndarray.js index 6b983e9176cb..aea51cbd85f6 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_random.ndarray.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_random.ndarray.js @@ -21,16 +21,21 @@ // MODULES // var bench = require( '@stdlib/bench' ); -var randu = require( '@stdlib/random/base/randu' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); -var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ).factory; +var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var pkg = require( './../package.json' ).name; var dsorthp = require( './../lib/ndarray.js' ); +// VARIABLES // + +var rand = uniform( -100.0, 100.0 ); + + // FUNCTIONS // /** @@ -45,14 +50,10 @@ function createBenchmark( iter, len ) { var tmp; var x; var i; - var j; x = []; for ( i = 0; i < iter; i++ ) { - tmp = new Float64Array( len ); - for ( j = 0; j < len; j++ ) { - tmp[ j ] = -1.0 * randu() * j; - } + tmp = filledarrayBy( len, 'float64', rand ); x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_random.ndarray.native.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_random.ndarray.native.js index e6653a0950d7..21f38f793c95 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_random.ndarray.native.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_random.ndarray.native.js @@ -22,11 +22,11 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); -var randu = require( '@stdlib/random/base/randu' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); -var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ).factory; +var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var tryRequire = require( '@stdlib/utils/try-require' ); var pkg = require( './../package.json' ).name; @@ -38,6 +38,7 @@ var dsorthp = tryRequire( resolve( __dirname, './../lib/ndarray.native.js' ) ); var opts = { 'skip': ( dsorthp instanceof Error ) }; +var rand = uniform( -100.0, 100.0 ); // FUNCTIONS // @@ -54,14 +55,10 @@ function createBenchmark( iter, len ) { var tmp; var x; var i; - var j; x = []; for ( i = 0; i < iter; i++ ) { - tmp = new Float64Array( len ); - for ( j = 0; j < len; j++ ) { - tmp[ j ] = -1.0 * randu() * j; - } + tmp = filledarrayBy( len, 'float64', rand ); x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_few_uniques.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_few_uniques.js index 4def46525218..b6c33884633b 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_few_uniques.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_few_uniques.js @@ -21,16 +21,21 @@ // MODULES // var bench = require( '@stdlib/bench' ); -var discreteUniform = require( '@stdlib/random/base/discrete-uniform' ).factory; var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); -var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ).factory; +var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var pkg = require( './../package.json' ).name; var dsorthp = require( './../lib/dsorthp.js' ); +// VARIABLES // + +var rand = uniform( -100.0, 100.0 ); + + // FUNCTIONS // /** @@ -42,27 +47,13 @@ var dsorthp = require( './../lib/dsorthp.js' ); * @returns {Function} benchmark function */ function createBenchmark( iter, len ) { - var randi; var tmp; - var M; var x; - var v; var i; - var j; - - randi = discreteUniform( 1, 10 ); - M = floor( len*0.333 ); - + x = []; for ( i = 0; i < iter; i++ ) { - tmp = new Float64Array( len ); - v = randi(); - for ( j = 0; j < len; j++ ) { - if ( i % M === 0 ) { - v -= randi(); - } - tmp[ j ] = v; - } + tmp = filledarrayBy( len, 'float64', rand ); x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_few_uniques.native.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_few_uniques.native.js index 952de7717d28..c74375858e93 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_few_uniques.native.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_few_uniques.native.js @@ -22,10 +22,8 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); -var discreteUniform = require( '@stdlib/random/base/discrete-uniform' ).factory; var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); -var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var tryRequire = require( '@stdlib/utils/try-require' ); @@ -38,6 +36,7 @@ var dsorthp = tryRequire( resolve( __dirname, './../lib/dsorthp.native.js' ) ); var opts = { 'skip': ( dsorthp instanceof Error ) }; +var rand = uniform( -100.0, 100.0 ); // FUNCTIONS // @@ -51,27 +50,13 @@ var opts = { * @returns {Function} benchmark function */ function createBenchmark( iter, len ) { - var randi; var tmp; var x; - var v; - var M; var i; - var j; - - randi = discreteUniform( 1, 10 ); - M = floor( len*0.333 ); x = []; for ( i = 0; i < iter; i++ ) { - tmp = new Float64Array( len ); - v = randi(); - for ( j = 0; j < len; j++ ) { - if ( i % M === 0 ) { - v -= randi(); - } - tmp[ j ] = v; - } + tmp = filledarrayBy( len, 'float64', rand ); x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_few_uniques.ndarray.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_few_uniques.ndarray.js index 3ff44cfe7d0a..6d7784f0f088 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_few_uniques.ndarray.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_few_uniques.ndarray.js @@ -21,16 +21,21 @@ // MODULES // var bench = require( '@stdlib/bench' ); -var discreteUniform = require( '@stdlib/random/base/discrete-uniform' ).factory; var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); -var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ).factory; +var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var pkg = require( './../package.json' ).name; var dsorthp = require( './../lib/ndarray.js' ); +// VARIABLES // + +var rand = uniform( -100.0, 100.0 ); + + // FUNCTIONS // /** @@ -42,27 +47,13 @@ var dsorthp = require( './../lib/ndarray.js' ); * @returns {Function} benchmark function */ function createBenchmark( iter, len ) { - var randi; var tmp; - var M; var x; - var v; var i; - var j; - - randi = discreteUniform( 1, 10 ); - M = floor( len*0.333 ); x = []; for ( i = 0; i < iter; i++ ) { - tmp = new Float64Array( len ); - v = randi(); - for ( j = 0; j < len; j++ ) { - if ( i % M === 0 ) { - v -= randi(); - } - tmp[ j ] = v; - } + tmp = filledarrayBy( len, 'float64', rand ); x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_few_uniques.ndarray.native.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_few_uniques.ndarray.native.js index 387c8885ef38..a6fa7b22bc5e 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_few_uniques.ndarray.native.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_few_uniques.ndarray.native.js @@ -22,11 +22,11 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); -var discreteUniform = require( '@stdlib/random/base/discrete-uniform' ).factory; var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); -var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ).factory; +var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var tryRequire = require( '@stdlib/utils/try-require' ); var pkg = require( './../package.json' ).name; @@ -38,6 +38,7 @@ var dsorthp = tryRequire( resolve( __dirname, './../lib/ndarray.native.js' ) ); var opts = { 'skip': ( dsorthp instanceof Error ) }; +var rand = uniform( -100.0, 100.0 ); // FUNCTIONS // @@ -51,27 +52,13 @@ var opts = { * @returns {Function} benchmark function */ function createBenchmark( iter, len ) { - var randi; var tmp; var x; - var v; - var M; var i; - var j; - - randi = discreteUniform( 1, 10 ); - M = floor( len*0.333 ); x = []; for ( i = 0; i < iter; i++ ) { - tmp = new Float64Array( len ); - v = randi(); - for ( j = 0; j < len; j++ ) { - if ( i % M === 0 ) { - v -= randi(); - } - tmp[ j ] = v; - } + tmp = filledarrayBy( len, 'float64', rand ); x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_random.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_random.js index eb91a3ed056a..d7caef46bd2e 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_random.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_random.js @@ -21,16 +21,21 @@ // MODULES // var bench = require( '@stdlib/bench' ); -var randu = require( '@stdlib/random/base/randu' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); -var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ).factory; +var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var pkg = require( './../package.json' ).name; var dsorthp = require( './../lib/dsorthp.js' ); +// VARIABLES // + +var rand = uniform( -100.0, 100.0 ); + + // FUNCTIONS // /** @@ -45,14 +50,10 @@ function createBenchmark( iter, len ) { var tmp; var x; var i; - var j; x = []; for ( i = 0; i < iter; i++ ) { - tmp = new Float64Array( len ); - for ( j = 0; j < len; j++ ) { - tmp[ j ] = iter - j - randu(); - } + tmp = filledarrayBy( len, 'float64', rand ); x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_random.native.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_random.native.js index a0212ded3396..5db2032a831b 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_random.native.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_random.native.js @@ -22,11 +22,11 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); -var randu = require( '@stdlib/random/base/randu' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); -var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ).factory; +var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var tryRequire = require( '@stdlib/utils/try-require' ); var pkg = require( './../package.json' ).name; @@ -38,6 +38,7 @@ var dsorthp = tryRequire( resolve( __dirname, './../lib/dsorthp.native.js' ) ); var opts = { 'skip': ( dsorthp instanceof Error ) }; +var rand = uniform( -100.0, 100.0 ); // FUNCTIONS // @@ -54,14 +55,10 @@ function createBenchmark( iter, len ) { var tmp; var x; var i; - var j; x = []; for ( i = 0; i < iter; i++ ) { - tmp = new Float64Array( len ); - for ( j = 0; j < len; j++ ) { - tmp[ j ] = iter - j - randu(); - } + tmp = filledarrayBy( len, 'float64', rand ); x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_random.ndarray.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_random.ndarray.js index a833b750d9e7..0f24d90a7da7 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_random.ndarray.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_random.ndarray.js @@ -21,16 +21,21 @@ // MODULES // var bench = require( '@stdlib/bench' ); -var randu = require( '@stdlib/random/base/randu' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); -var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ).factory; +var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var pkg = require( './../package.json' ).name; var dsorthp = require( './../lib/ndarray.js' ); +// VARIABLES // + +var rand = uniform( -100.0, 100.0 ); + + // FUNCTIONS // /** @@ -45,14 +50,10 @@ function createBenchmark( iter, len ) { var tmp; var x; var i; - var j; x = []; for ( i = 0; i < iter; i++ ) { - tmp = new Float64Array( len ); - for ( j = 0; j < len; j++ ) { - tmp[ j ] = iter - j - randu(); - } + tmp = filledarrayBy( len, 'float64', rand ); x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_random.ndarray.native.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_random.ndarray.native.js index 23718c336897..214163b0642b 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_random.ndarray.native.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_random.ndarray.native.js @@ -22,11 +22,11 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); -var randu = require( '@stdlib/random/base/randu' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); -var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ).factory; +var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var tryRequire = require( '@stdlib/utils/try-require' ); var pkg = require( './../package.json' ).name; @@ -38,6 +38,7 @@ var dsorthp = tryRequire( resolve( __dirname, './../lib/ndarray.native.js' ) ); var opts = { 'skip': ( dsorthp instanceof Error ) }; +var rand = uniform( -100.0, 100.0 ); // FUNCTIONS // @@ -54,14 +55,10 @@ function createBenchmark( iter, len ) { var tmp; var x; var i; - var j; x = []; for ( i = 0; i < iter; i++ ) { - tmp = new Float64Array( len ); - for ( j = 0; j < len; j++ ) { - tmp[ j ] = iter - j - randu(); - } + tmp = filledarrayBy( len, 'float64', rand ); x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_few_uniques.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_few_uniques.js index 536ba03b27cf..7a8362f37751 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_few_uniques.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_few_uniques.js @@ -21,16 +21,21 @@ // MODULES // var bench = require( '@stdlib/bench' ); -var discreteUniform = require( '@stdlib/random/base/discrete-uniform' ).factory; var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); -var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ).factory; +var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var pkg = require( './../package.json' ).name; var dsorthp = require( './../lib/dsorthp.js' ); +// VARIABLES // + +var rand = uniform( -100.0, 100.0 ); + + // FUNCTIONS // /** @@ -42,27 +47,13 @@ var dsorthp = require( './../lib/dsorthp.js' ); * @returns {Function} benchmark function */ function createBenchmark( iter, len ) { - var randi; var tmp; - var M; var x; - var v; var i; - var j; - - randi = discreteUniform( 1, 10 ); - M = floor( len*0.333 ); x = []; for ( i = 0; i < iter; i++ ) { - tmp = new Float64Array( len ); - v = randi(); - for ( j = 0; j < len; j++ ) { - if ( j % M === 0 ) { - v += randi(); - } - tmp[ j ] = v; - } + tmp = filledarrayBy( len, 'float64', rand ); x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_few_uniques.native.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_few_uniques.native.js index c39789d51227..389cc9379585 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_few_uniques.native.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_few_uniques.native.js @@ -22,11 +22,11 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); -var discreteUniform = require( '@stdlib/random/base/discrete-uniform' ).factory; var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); -var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ).factory; +var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var tryRequire = require( '@stdlib/utils/try-require' ); var pkg = require( './../package.json' ).name; @@ -38,6 +38,7 @@ var dsorthp = tryRequire( resolve( __dirname, './../lib/dsorthp.native.js' ) ); var opts = { 'skip': ( dsorthp instanceof Error ) }; +var rand = uniform( -100.0, 100.0 ); // FUNCTIONS // @@ -51,27 +52,13 @@ var opts = { * @returns {Function} benchmark function */ function createBenchmark( iter, len ) { - var randi; var tmp; - var M; var x; - var v; var i; - var j; - - randi = discreteUniform( 1, 10 ); - M = floor( len*0.333 ); x = []; for ( i = 0; i < iter; i++ ) { - tmp = new Float64Array( len ); - v = randi(); - for ( j = 0; j < len; j++ ) { - if ( j % M === 0 ) { - v += randi(); - } - tmp[ j ] = v; - } + tmp = filledarrayBy( len, 'float64', rand ); x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_few_uniques.ndarray.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_few_uniques.ndarray.js index b5b390a993be..2cc04f1986ff 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_few_uniques.ndarray.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_few_uniques.ndarray.js @@ -21,16 +21,21 @@ // MODULES // var bench = require( '@stdlib/bench' ); -var discreteUniform = require( '@stdlib/random/base/discrete-uniform' ).factory; var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); -var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ).factory; +var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var pkg = require( './../package.json' ).name; var dsorthp = require( './../lib/ndarray.js' ); +// VARIABLES // + +var rand = uniform( -100.0, 100.0 ); + + // FUNCTIONS // /** @@ -42,27 +47,13 @@ var dsorthp = require( './../lib/ndarray.js' ); * @returns {Function} benchmark function */ function createBenchmark( iter, len ) { - var randi; var tmp; - var M; var x; - var v; var i; - var j; - - randi = discreteUniform( 1, 10 ); - M = floor( len*0.333 ); x = []; for ( i = 0; i < iter; i++ ) { - tmp = new Float64Array( len ); - v = randi(); - for ( j = 0; j < len; j++ ) { - if ( j % M === 0 ) { - v += randi(); - } - tmp[ j ] = v; - } + tmp = filledarrayBy( len, 'float64', rand ); x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_few_uniques.ndarray.native.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_few_uniques.ndarray.native.js index 8d77fcf8a28d..92523837bb6f 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_few_uniques.ndarray.native.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_few_uniques.ndarray.native.js @@ -22,11 +22,11 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); -var discreteUniform = require( '@stdlib/random/base/discrete-uniform' ).factory; var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); -var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ).factory; +var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var tryRequire = require( '@stdlib/utils/try-require' ); var pkg = require( './../package.json' ).name; @@ -38,6 +38,7 @@ var dsorthp = tryRequire( resolve( __dirname, './../lib/ndarray.native.js' ) ); var opts = { 'skip': ( dsorthp instanceof Error ) }; +var rand = uniform( -100.0, 100.0 ); // FUNCTIONS // @@ -51,27 +52,13 @@ var opts = { * @returns {Function} benchmark function */ function createBenchmark( iter, len ) { - var randi; var tmp; - var M; var x; - var v; var i; - var j; - - randi = discreteUniform( 1, 10 ); - M = floor( len*0.333 ); x = []; for ( i = 0; i < iter; i++ ) { - tmp = new Float64Array( len ); - v = randi(); - for ( j = 0; j < len; j++ ) { - if ( j % M === 0 ) { - v += randi(); - } - tmp[ j ] = v; - } + tmp = filledarrayBy( len, 'float64', rand ); x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_random.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_random.js index 1c43d5dcbe59..09e19e4146fd 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_random.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_random.js @@ -21,15 +21,21 @@ // MODULES // var bench = require( '@stdlib/bench' ); -var randu = require( '@stdlib/random/base/randu' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ).factory; +var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var pkg = require( './../package.json' ).name; var dsorthp = require( './../lib/dsorthp.js' ); +// VARIABLES // + +var rand = uniform( -100.0, 100.0 ); + + // FUNCTIONS // /** @@ -44,14 +50,10 @@ function createBenchmark( iter, len ) { var tmp; var x; var i; - var j; x = []; for ( i = 0; i < iter; i++ ) { - tmp = new Float64Array( len ); - for ( j = 0; j < len; j++ ) { - tmp[ j ] = randu() + j; - } + tmp = filledarrayBy( len, 'float64', rand ); x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_random.native.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_random.native.js index 7c2107db6873..3d5172fdbea1 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_random.native.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_random.native.js @@ -22,10 +22,11 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); -var randu = require( '@stdlib/random/base/randu' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ).factory; +var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var tryRequire = require( '@stdlib/utils/try-require' ); var pkg = require( './../package.json' ).name; @@ -37,6 +38,7 @@ var dsorthp = tryRequire( resolve( __dirname, './../lib/dsorthp.native.js' ) ); var opts = { 'skip': ( dsorthp instanceof Error ) }; +var rand = uniform( -100.0, 100.0 ); // FUNCTIONS // @@ -53,14 +55,10 @@ function createBenchmark( iter, len ) { var tmp; var x; var i; - var j; x = []; for ( i = 0; i < iter; i++ ) { - tmp = new Float64Array( len ); - for ( j = 0; j < len; j++ ) { - tmp[ j ] = randu() + j; - } + tmp = filledarrayBy( len, 'float64', rand ); x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_random.ndarray.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_random.ndarray.js index 195268030c9e..da2b0fad9bcc 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_random.ndarray.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_random.ndarray.js @@ -21,15 +21,21 @@ // MODULES // var bench = require( '@stdlib/bench' ); -var randu = require( '@stdlib/random/base/randu' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ).factory; +var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var pkg = require( './../package.json' ).name; var dsorthp = require( './../lib/ndarray.js' ); +// VARIABLES // + +var rand = uniform( -100.0, 100.0 ); + + // FUNCTIONS // /** @@ -44,14 +50,10 @@ function createBenchmark( iter, len ) { var tmp; var x; var i; - var j; x = []; for ( i = 0; i < iter; i++ ) { - tmp = new Float64Array( len ); - for ( j = 0; j < len; j++ ) { - tmp[ j ] = randu() + j; - } + tmp = filledarrayBy( len, 'float64', rand ); x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_random.ndarray.native.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_random.ndarray.native.js index 4ea5a3a66ee8..41c1e28c6ea7 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_random.ndarray.native.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_random.ndarray.native.js @@ -22,10 +22,11 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); -var randu = require( '@stdlib/random/base/randu' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ).factory; +var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var tryRequire = require( '@stdlib/utils/try-require' ); var pkg = require( './../package.json' ).name; @@ -37,6 +38,7 @@ var dsorthp = tryRequire( resolve( __dirname, './../lib/ndarray.native.js' ) ); var opts = { 'skip': ( dsorthp instanceof Error ) }; +var rand = uniform( -100.0, 100.0 ); // FUNCTIONS // @@ -53,14 +55,10 @@ function createBenchmark( iter, len ) { var tmp; var x; var i; - var j; x = []; for ( i = 0; i < iter; i++ ) { - tmp = new Float64Array( len ); - for ( j = 0; j < len; j++ ) { - tmp[ j ] = randu() + j; - } + tmp = filledarrayBy( len, 'float64', rand ); x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_few_uniques.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_few_uniques.js index cf54b4f10a03..5079b29eb7d4 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_few_uniques.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_few_uniques.js @@ -21,16 +21,21 @@ // MODULES // var bench = require( '@stdlib/bench' ); -var discreteUniform = require( '@stdlib/random/base/discrete-uniform' ).factory; var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); -var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ).factory; +var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var pkg = require( './../package.json' ).name; var dsorthp = require( './../lib/dsorthp.js' ); +// VARIABLES // + +var rand = uniform( -100.0, 100.0 ); + + // FUNCTIONS // /** @@ -42,20 +47,13 @@ var dsorthp = require( './../lib/dsorthp.js' ); * @returns {Function} benchmark function */ function createBenchmark( iter, len ) { - var randi; var tmp; var x; var i; - var j; - - randi = discreteUniform( 1, 10 ); x = []; for ( i = 0; i < iter; i++ ) { - tmp = new Float64Array( len ); - for ( j = 0; j < len; j++ ) { - tmp[ j ] = randi(); - } + tmp = filledarrayBy( len, 'float64', rand ); x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_few_uniques.native.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_few_uniques.native.js index 2542918edb13..84da0668b470 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_few_uniques.native.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_few_uniques.native.js @@ -22,11 +22,11 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); -var discreteUniform = require( '@stdlib/random/base/discrete-uniform' ).factory; var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); -var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ).factory; +var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var tryRequire = require( '@stdlib/utils/try-require' ); var pkg = require( './../package.json' ).name; @@ -38,6 +38,7 @@ var dsorthp = tryRequire( resolve( __dirname, './../lib/dsorthp.native.js' ) ); var opts = { 'skip': ( dsorthp instanceof Error ) }; +var rand = uniform( -100.0, 100.0 ); // FUNCTIONS // @@ -51,20 +52,13 @@ var opts = { * @returns {Function} benchmark function */ function createBenchmark( iter, len ) { - var randi; var tmp; var x; var i; - var j; - - randi = discreteUniform( 1, 10 ); x = []; for ( i = 0; i < iter; i++ ) { - tmp = new Float64Array( len ); - for ( j = 0; j < len; j++ ) { - tmp[ j ] = randi(); - } + tmp = filledarrayBy( len, 'float64', rand ); x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_few_uniques.ndarray.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_few_uniques.ndarray.js index c0729891b05f..964493a474d0 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_few_uniques.ndarray.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_few_uniques.ndarray.js @@ -21,16 +21,21 @@ // MODULES // var bench = require( '@stdlib/bench' ); -var discreteUniform = require( '@stdlib/random/base/discrete-uniform' ).factory; var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); -var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ).factory; +var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var pkg = require( './../package.json' ).name; var dsorthp = require( './../lib/ndarray.js' ); +// VARIABLES // + +var rand = uniform( -100.0, 100.0 ); + + // FUNCTIONS // /** @@ -42,20 +47,13 @@ var dsorthp = require( './../lib/ndarray.js' ); * @returns {Function} benchmark function */ function createBenchmark( iter, len ) { - var randi; var tmp; var x; var i; - var j; - - randi = discreteUniform( 1, 10 ); x = []; for ( i = 0; i < iter; i++ ) { - tmp = new Float64Array( len ); - for ( j = 0; j < len; j++ ) { - tmp[ j ] = randi(); - } + tmp = filledarrayBy( len, 'float64', rand ); x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_few_uniques.ndarray.native.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_few_uniques.ndarray.native.js index 11f6abbb237c..315e168e043d 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_few_uniques.ndarray.native.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_few_uniques.ndarray.native.js @@ -22,11 +22,11 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); -var discreteUniform = require( '@stdlib/random/base/discrete-uniform' ).factory; var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); -var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ).factory; +var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var tryRequire = require( '@stdlib/utils/try-require' ); var pkg = require( './../package.json' ).name; @@ -38,6 +38,7 @@ var dsorthp = tryRequire( resolve( __dirname, './../lib/ndarray.native.js' ) ); var opts = { 'skip': ( dsorthp instanceof Error ) }; +var rand = uniform( -100.0, 100.0 ); // FUNCTIONS // @@ -51,20 +52,13 @@ var opts = { * @returns {Function} benchmark function */ function createBenchmark( iter, len ) { - var randi; var tmp; var x; var i; - var j; - - randi = discreteUniform( 1, 10 ); x = []; for ( i = 0; i < iter; i++ ) { - tmp = new Float64Array( len ); - for ( j = 0; j < len; j++ ) { - tmp[ j ] = randi(); - } + tmp = filledarrayBy( len, 'float64', rand ); x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_random.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_random.js index 961a4bc4ecf2..c94497cbd2c3 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_random.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_random.js @@ -21,16 +21,21 @@ // MODULES // var bench = require( '@stdlib/bench' ); -var randu = require( '@stdlib/random/base/randu' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); -var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ).factory; +var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var pkg = require( './../package.json' ).name; var dsorthp = require( './../lib/dsorthp.js' ); +// VARIABLES // + +var rand = uniform( -100.0, 100.0 ); + + // FUNCTIONS // /** @@ -45,14 +50,10 @@ function createBenchmark( iter, len ) { var tmp; var x; var i; - var j; x = []; for ( i = 0; i < iter; i++ ) { - tmp = new Float64Array( len ); - for ( j = 0; j < len; j++ ) { - tmp[ j ] = (randu()*20.0) - 10.0; - } + tmp = filledarrayBy( len, 'float64', rand ); x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_random.native.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_random.native.js index 92394b24e197..ffb7eb3deee4 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_random.native.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_random.native.js @@ -22,11 +22,11 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); -var randu = require( '@stdlib/random/base/randu' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); -var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ).factory; +var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var tryRequire = require( '@stdlib/utils/try-require' ); var pkg = require( './../package.json' ).name; @@ -38,6 +38,7 @@ var dsorthp = tryRequire( resolve( __dirname, './../lib/dsorthp.native.js' ) ); var opts = { 'skip': ( dsorthp instanceof Error ) }; +var rand = uniform( -100.0, 100.0 ); // FUNCTIONS // @@ -54,14 +55,10 @@ function createBenchmark( iter, len ) { var tmp; var x; var i; - var j; x = []; for ( i = 0; i < iter; i++ ) { - tmp = new Float64Array( len ); - for ( j = 0; j < len; j++ ) { - tmp[ j ] = (randu()*20.0) - 10.0; - } + tmp = filledarrayBy( len, 'float64', rand ); x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_random.ndarray.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_random.ndarray.js index 2afca9d209bc..efc80c6667ee 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_random.ndarray.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_random.ndarray.js @@ -21,16 +21,21 @@ // MODULES // var bench = require( '@stdlib/bench' ); -var randu = require( '@stdlib/random/base/randu' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); -var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ).factory; +var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var pkg = require( './../package.json' ).name; var dsorthp = require( './../lib/ndarray.js' ); +// VARIABLES // + +var rand = uniform( -100.0, 100.0 ); + + // FUNCTIONS // /** @@ -45,14 +50,10 @@ function createBenchmark( iter, len ) { var tmp; var x; var i; - var j; x = []; for ( i = 0; i < iter; i++ ) { - tmp = new Float64Array( len ); - for ( j = 0; j < len; j++ ) { - tmp[ j ] = (randu()*20.0) - 10.0; - } + tmp = filledarrayBy( len, 'float64', rand ); x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_random.ndarray.native.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_random.ndarray.native.js index a29cc59d51e5..30dd85278206 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_random.ndarray.native.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_random.ndarray.native.js @@ -22,11 +22,11 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); -var randu = require( '@stdlib/random/base/randu' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); -var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); +var uniform = require( '@stdlib/random/base/uniform' ).factory; +var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var tryRequire = require( '@stdlib/utils/try-require' ); var pkg = require( './../package.json' ).name; @@ -38,6 +38,7 @@ var dsorthp = tryRequire( resolve( __dirname, './../lib/ndarray.native.js' ) ); var opts = { 'skip': ( dsorthp instanceof Error ) }; +var rand = uniform( -100.0, 100.0 ); // FUNCTIONS // @@ -54,14 +55,10 @@ function createBenchmark( iter, len ) { var tmp; var x; var i; - var j; x = []; for ( i = 0; i < iter; i++ ) { - tmp = new Float64Array( len ); - for ( j = 0; j < len; j++ ) { - tmp[ j ] = (randu()*20.0) - 10.0; - } + tmp = filledarrayBy( len, 'float64', rand ); x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/include.gypi b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/include.gypi index 868c5c12e852..26476a8c2655 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/include.gypi +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/include.gypi @@ -36,7 +36,7 @@ # Source files: 'src_files': [ - '<(src_dir)/addon.cpp', + '<(src_dir)/addon.c', ' Date: Tue, 26 Mar 2024 12:38:39 +0000 Subject: [PATCH 2/5] refactor: update blas/ext/base/dsorthp to follow current project conventions --- .../blas/ext/base/dsorthp/manifest.json | 120 ++++++++++------ .../@stdlib/blas/ext/base/dsorthp/src/addon.c | 129 ++++-------------- 2 files changed, 99 insertions(+), 150 deletions(-) diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/manifest.json b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/manifest.json index 7cf144a69e20..272b05c72039 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/manifest.json +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/manifest.json @@ -1,46 +1,76 @@ { - "options": {}, - "fields": [ - { - "field": "src", - "resolve": true, - "relative": true - }, - { - "field": "include", - "resolve": true, - "relative": true - }, - { - "field": "libraries", - "resolve": false, - "relative": false - }, - { - "field": "libpath", - "resolve": true, - "relative": false - } - ], - "confs": [ - { - "src": [ - "./src/dsorthp.c" - ], - "include": [ - "./include" - ], - "libraries": [ - "-lm" - ], - "libpath": [], - "dependencies": [ - "@stdlib/math/base/assert/is-nan", - "@stdlib/math/base/assert/is-positive-zero", - "@stdlib/napi/argv", - "@stdlib/napi/argv-int64", - "@stdlib/napi/argv-strided-float64array" - ] - } - ] -} + "options": { + "task": "build" + }, + "fields": [ + { + "field": "src", + "resolve": true, + "relative": true + }, + { + "field": "include", + "resolve": true, + "relative": true + }, + { + "field": "libraries", + "resolve": false, + "relative": false + }, + { + "field": "libpath", + "resolve": true, + "relative": false + } + ], + "confs": [ + { + "task": "build", + "src": [ + "./src/dsorthp.c" + ], + "include": [ + "./include" + ], + "libraries": [ + "-lm" + ], + "libpath": [], + "dependencies": [ + "@stdlib/math/base/assert/is-nan", + "@stdlib/math/base/assert/is-positive-zero", + "@stdlib/napi/argv", + "@stdlib/napi/argv-int64", + "@stdlib/napi/argv-strided-float64array" + ] + }, + { + "task": "benchmark", + "src": [ + "./src/dsorthp.c" + ], + "include": [ + "./include" + ], + "libraries": [ + "-lm" + ], + "dependencies": [] + }, + { + "task": "examples", + "src": [ + "./src/dsorthp.c" + ], + "include": [ + "./include" + ], + "libraries": [ + "-lm" + ], + "libpath": [], + "dependencies": [] + } + ] +} \ No newline at end of file diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/src/addon.c b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/src/addon.c index abf6e3ce66b5..767b6d3d7428 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/src/addon.c +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/src/addon.c @@ -17,112 +17,31 @@ */ #include "stdlib/blas/ext/base/dsorthp.h" +#include "stdlib/napi/export.h" +#include "stdlib/napi/argv.h" +#include "stdlib/napi/argv_float.h" +#include "stdlib/napi/argv_int64.h" +#include "stdlib/napi/argv_strided_float64array.h" #include -#include -#include -#include -#include /** -* Add-on namespace. +* Receives JavaScript callback invocation data. +* +* @private +* @param env environment under which the function is invoked +* @param info callback data +* @return Node-API value */ -namespace stdlib_blas_ext_base_dsorthp { - - /** - * Sorts a double-precision floating-point strided array using heapsort. - * - * ## Notes - * - * - When called from JavaScript, the function expects four arguments: - * - * - `N`: number of indexed elements - * - `order`: sort order - * - `X`: input array - * - `strideX`: `X` stride length - */ - napi_value node_dsorthp( napi_env env, napi_callback_info info ) { - napi_status status; - - size_t argc = 4; - napi_value argv[ 4 ]; - status = napi_get_cb_info( env, info, &argc, argv, nullptr, nullptr ); - assert( status == napi_ok ); - - if ( argc < 4 ) { - napi_throw_error( env, nullptr, "invalid invocation. Must provide 4 arguments." ); - return nullptr; - } - - napi_valuetype vtype0; - status = napi_typeof( env, argv[ 0 ], &vtype0 ); - assert( status == napi_ok ); - if ( vtype0 != napi_number ) { - napi_throw_type_error( env, nullptr, "invalid argument. First argument must be a number." ); - return nullptr; - } - - napi_valuetype vtype1; - status = napi_typeof( env, argv[ 1 ], &vtype1 ); - assert( status == napi_ok ); - if ( vtype1 != napi_number ) { - napi_throw_type_error( env, nullptr, "invalid argument. Second argument must be a number." ); - return nullptr; - } - - bool res2; - status = napi_is_typedarray( env, argv[ 2 ], &res2 ); - assert( status == napi_ok ); - if ( res2 == false ) { - napi_throw_type_error( env, nullptr, "invalid argument. Third argument must be a Float64Array." ); - return nullptr; - } - - napi_valuetype vtype3; - status = napi_typeof( env, argv[ 3 ], &vtype3 ); - assert( status == napi_ok ); - if ( vtype3 != napi_number ) { - napi_throw_type_error( env, nullptr, "invalid argument. Fourth argument must be a number." ); - return nullptr; - } - - int64_t N; - status = napi_get_value_int64( env, argv[ 0 ], &N ); - assert( status == napi_ok ); - - double order; - status = napi_get_value_double( env, argv[ 1 ], &order ); - assert( status == napi_ok ); - - int64_t strideX; - status = napi_get_value_int64( env, argv[ 3 ], &strideX ); - assert( status == napi_ok ); - - napi_typedarray_type vtype2; - size_t xlen; - void *X; - status = napi_get_typedarray_info( env, argv[ 2 ], &vtype2, &xlen, &X, nullptr, nullptr ); - assert( status == napi_ok ); - if ( vtype2 != napi_float64_array ) { - napi_throw_type_error( env, nullptr, "invalid argument. Third argument must be a Float64Array." ); - return nullptr; - } - if ( (N-1)*llabs(strideX) >= (int64_t)xlen ) { - napi_throw_range_error( env, nullptr, "invalid argument. Third argument has insufficient elements based on the associated stride and the number of indexed elements." ); - return nullptr; - } - - c_dsorthp( N, order, (double *)X, strideX ); - - return nullptr; - } - - napi_value Init( napi_env env, napi_value exports ) { - napi_status status; - napi_value fcn; - status = napi_create_function( env, "exports", NAPI_AUTO_LENGTH, node_dsorthp, NULL, &fcn ); - assert( status == napi_ok ); - return fcn; - } - - NAPI_MODULE( NODE_GYP_MODULE_NAME, Init ) -} // end namespace stdlib_blas_ext_base_dsorthp +static napi_value addon( napi_env env, napi_callback_info info ) { + STDLIB_NAPI_ARGV( env, info, argv, argc, 6 ); + STDLIB_NAPI_ARGV_INT64( env, N, argv, 0 ); + STDLIB_NAPI_ARGV_FLOAT( env, sum, argv, 1 ); + STDLIB_NAPI_ARGV_INT64( env, strideX, argv, 3 ); + STDLIB_NAPI_ARGV_INT64( env, strideY, argv, 5 ); + STDLIB_NAPI_ARGV_STRIDED_FLOAT64ARRAY( env, X, N, strideX, argv, 2 ); + STDLIB_NAPI_ARGV_STRIDED_FLOAT64ARRAY( env, Y, N, strideY, argv, 4 ); + stdlib_strided_dsorthp( N, sum, X, strideX, Y, strideY ); + return NULL; +} + +STDLIB_NAPI_MODULE_EXPORT_FCN( addon ) From 44d5704bbbe6badf072fbbdd20855060c680510c Mon Sep 17 00:00:00 2001 From: Shubh Mehta <93862397+Shubh942@users.noreply.github.com> Date: Tue, 26 Mar 2024 20:39:19 +0000 Subject: [PATCH 3/5] corrected the tab in manifest.json --- .../@stdlib/blas/ext/base/dsorthp/manifest.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/manifest.json b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/manifest.json index 272b05c72039..2f92cf25dd3d 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/manifest.json +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/manifest.json @@ -39,9 +39,9 @@ "libpath": [], "dependencies": [ "@stdlib/math/base/assert/is-nan", - "@stdlib/math/base/assert/is-positive-zero", - "@stdlib/napi/argv", - "@stdlib/napi/argv-int64", + "@stdlib/math/base/assert/is-positive-zero", + "@stdlib/napi/argv", + "@stdlib/napi/argv-int64", "@stdlib/napi/argv-strided-float64array" ] }, From 370402516b6ea92d6f3b2d2ec1302eb9b81a2110 Mon Sep 17 00:00:00 2001 From: Philipp Burckhardt Date: Sat, 27 Apr 2024 20:51:32 -0400 Subject: [PATCH 4/5] chore: restore previous benchmarks --- .../benchmark.mostly_sorted_few_uniques.js | 24 +++++++++++------ ...chmark.mostly_sorted_few_uniques.native.js | 20 +++++++++++--- ...hmark.mostly_sorted_few_uniques.ndarray.js | 24 +++++++++++------ ...ostly_sorted_few_uniques.ndarray.native.js | 20 +++++++++++--- .../benchmark.mostly_sorted_random.js | 15 +++++------ .../benchmark.mostly_sorted_random.native.js | 9 +++++-- .../benchmark.mostly_sorted_random.ndarray.js | 15 +++++------ ...ark.mostly_sorted_random.ndarray.native.js | 11 +++++--- ...benchmark.rev_mostly_sorted_few_uniques.js | 24 +++++++++++------ ...rk.rev_mostly_sorted_few_uniques.native.js | 21 ++++++++++++--- ...k.rev_mostly_sorted_few_uniques.ndarray.js | 24 +++++++++++------ ...ostly_sorted_few_uniques.ndarray.native.js | 20 +++++++++++--- .../benchmark.rev_mostly_sorted_random.js | 15 +++++------ ...nchmark.rev_mostly_sorted_random.native.js | 11 +++++--- ...chmark.rev_mostly_sorted_random.ndarray.js | 15 +++++------ ...rev_mostly_sorted_random.ndarray.native.js | 11 +++++--- .../benchmark.rev_sorted_few_uniques.js | 27 ++++++++++++------- ...benchmark.rev_sorted_few_uniques.native.js | 19 +++++++++++-- ...enchmark.rev_sorted_few_uniques.ndarray.js | 25 +++++++++++------ ...k.rev_sorted_few_uniques.ndarray.native.js | 21 ++++++++++++--- .../benchmark/benchmark.rev_sorted_random.js | 15 +++++------ .../benchmark.rev_sorted_random.native.js | 11 +++++--- .../benchmark.rev_sorted_random.ndarray.js | 15 +++++------ ...chmark.rev_sorted_random.ndarray.native.js | 11 +++++--- .../benchmark/benchmark.sorted_few_uniques.js | 25 +++++++++++------ .../benchmark.sorted_few_uniques.native.js | 21 ++++++++++++--- .../benchmark.sorted_few_uniques.ndarray.js | 25 +++++++++++------ ...hmark.sorted_few_uniques.ndarray.native.js | 21 ++++++++++++--- .../benchmark/benchmark.sorted_random.js | 14 +++++----- .../benchmark.sorted_random.native.js | 10 ++++--- .../benchmark.sorted_random.ndarray.js | 14 +++++----- .../benchmark.sorted_random.ndarray.native.js | 10 ++++--- .../benchmark.unsorted_few_uniques.js | 18 +++++++------ .../benchmark.unsorted_few_uniques.native.js | 14 +++++++--- .../benchmark.unsorted_few_uniques.ndarray.js | 18 +++++++------ ...ark.unsorted_few_uniques.ndarray.native.js | 14 +++++++--- .../benchmark/benchmark.unsorted_random.js | 15 +++++------ .../benchmark.unsorted_random.native.js | 11 +++++--- .../benchmark.unsorted_random.ndarray.js | 15 +++++------ ...enchmark.unsorted_random.ndarray.native.js | 11 +++++--- 40 files changed, 442 insertions(+), 237 deletions(-) diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_few_uniques.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_few_uniques.js index 9532f4612504..a86055a8c7cf 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_few_uniques.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_few_uniques.js @@ -21,21 +21,16 @@ // MODULES // var bench = require( '@stdlib/bench' ); +var uniform = require( '@stdlib/random/base/uniform' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); +var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); -var uniform = require( '@stdlib/random/base/uniform' ).factory; -var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var pkg = require( './../package.json' ).name; var dsorthp = require( './../lib/dsorthp.js' ); -// VARIABLES // - -var rand = uniform( 1.0, 10.0 ); - - // FUNCTIONS // /** @@ -48,12 +43,25 @@ var rand = uniform( 1.0, 10.0 ); */ function createBenchmark( iter, len ) { var tmp; + var sa; + var sb; + var a; + var b; var x; var i; + var j; + + a = 1.0; + b = 10.0; x = []; for ( i = 0; i < iter; i++ ) { - tmp = filledarrayBy( len, 'float64', rand ); + tmp = new Float64Array( len ); + for ( j = 0; j < len; j++ ) { + sa = (b-a) * (j/len); + sb = sa / 2.0; + tmp[ j ] = floor( uniform( a+sa, b+sb ) ); + } x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_few_uniques.native.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_few_uniques.native.js index 56f4ce362fd9..caed3ff0ce14 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_few_uniques.native.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_few_uniques.native.js @@ -22,11 +22,11 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); +var uniform = require( '@stdlib/random/base/uniform' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); +var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); -var uniform = require( '@stdlib/random/base/uniform' ).factory; -var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var tryRequire = require( '@stdlib/utils/try-require' ); var pkg = require( './../package.json' ).name; @@ -38,7 +38,6 @@ var dsorthp = tryRequire( resolve( __dirname, './../lib/dsorthp.native.js' ) ); var opts = { 'skip': ( dsorthp instanceof Error ) }; -var rand = uniform( 1.0, 10.0 ); // FUNCTIONS // @@ -53,12 +52,25 @@ var rand = uniform( 1.0, 10.0 ); */ function createBenchmark( iter, len ) { var tmp; + var sa; + var sb; + var a; + var b; var x; var i; + var j; + + a = 1.0; + b = 10.0; x = []; for ( i = 0; i < iter; i++ ) { - tmp = filledarrayBy( len, 'float64', rand ); + tmp = new Float64Array( len ); + for ( j = 0; j < len; j++ ) { + sa = (b-a) * (j/len); + sb = sa / 2.0; + tmp[ j ] = floor( uniform( a+sa, b+sb ) ); + } x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_few_uniques.ndarray.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_few_uniques.ndarray.js index b2b32baa636a..991bc9bb36f2 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_few_uniques.ndarray.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_few_uniques.ndarray.js @@ -21,21 +21,16 @@ // MODULES // var bench = require( '@stdlib/bench' ); +var uniform = require( '@stdlib/random/base/uniform' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); +var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); -var uniform = require( '@stdlib/random/base/uniform' ).factory; -var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var pkg = require( './../package.json' ).name; var dsorthp = require( './../lib/ndarray.js' ); -// VARIABLES // - -var rand = uniform( -100.0, 100.0 ); - - // FUNCTIONS // /** @@ -48,12 +43,25 @@ var rand = uniform( -100.0, 100.0 ); */ function createBenchmark( iter, len ) { var tmp; + var sa; + var sb; + var a; + var b; var x; var i; + var j; + + a = 1.0; + b = 10.0; x = []; for ( i = 0; i < iter; i++ ) { - tmp = filledarrayBy( len, 'float64', rand ); + tmp = new Float64Array( len ); + for ( j = 0; j < len; j++ ) { + sa = (b-a) * (j/len); + sb = sa / 2.0; + tmp[ j ] = floor( uniform( a+sa, b+sb ) ); + } x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_few_uniques.ndarray.native.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_few_uniques.ndarray.native.js index 09d80078b7b1..9e502b8612d8 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_few_uniques.ndarray.native.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_few_uniques.ndarray.native.js @@ -22,11 +22,11 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); +var uniform = require( '@stdlib/random/base/uniform' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); +var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); -var uniform = require( '@stdlib/random/base/uniform' ).factory; -var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var tryRequire = require( '@stdlib/utils/try-require' ); var pkg = require( './../package.json' ).name; @@ -38,7 +38,6 @@ var dsorthp = tryRequire( resolve( __dirname, './../lib/ndarray.native.js' ) ); var opts = { 'skip': ( dsorthp instanceof Error ) }; -var rand = uniform( -100.0, 100.0 ); // FUNCTIONS // @@ -53,12 +52,25 @@ var rand = uniform( -100.0, 100.0 ); */ function createBenchmark( iter, len ) { var tmp; + var sa; + var sb; + var a; + var b; var x; var i; + var j; + + a = 1.0; + b = 10.0; x = []; for ( i = 0; i < iter; i++ ) { - tmp = filledarrayBy( len, 'float64', rand ); + tmp = new Float64Array( len ); + for ( j = 0; j < len; j++ ) { + sa = (b-a) * (j/len); + sb = sa / 2.0; + tmp[ j ] = floor( uniform( a+sa, b+sb ) ); + } x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_random.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_random.js index feae20b3eff0..70fca992b1ce 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_random.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_random.js @@ -21,21 +21,16 @@ // MODULES // var bench = require( '@stdlib/bench' ); +var randu = require( '@stdlib/random/base/randu' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); +var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); -var uniform = require( '@stdlib/random/base/uniform' ).factory; -var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var pkg = require( './../package.json' ).name; var dsorthp = require( './../lib/dsorthp.js' ); -// VARIABLES // - -var rand = uniform( -100.0, 100.0 ); - - // FUNCTIONS // /** @@ -50,10 +45,14 @@ function createBenchmark( iter, len ) { var tmp; var x; var i; + var j; x = []; for ( i = 0; i < iter; i++ ) { - tmp = filledarrayBy( len, 'float64', rand ); + tmp = new Float64Array( len ); + for ( j = 0; j < len; j++ ) { + tmp[ j ] = randu() * j; + } x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_random.native.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_random.native.js index 8c3d73bdc866..aa323634e9d0 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_random.native.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_random.native.js @@ -22,8 +22,10 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); +var randu = require( '@stdlib/random/base/randu' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); +var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var tryRequire = require( '@stdlib/utils/try-require' ); @@ -36,7 +38,6 @@ var dsorthp = tryRequire( resolve( __dirname, './../lib/dsorthp.native.js' ) ); var opts = { 'skip': ( dsorthp instanceof Error ) }; -var rand = uniform( -100.0, 100.0 ); // FUNCTIONS // @@ -53,10 +54,14 @@ function createBenchmark( iter, len ) { var tmp; var x; var i; + var j; x = []; for ( i = 0; i < iter; i++ ) { - tmp = filledarrayBy( len, 'float64', rand ); + tmp = new Float64Array( len ); + for ( j = 0; j < len; j++ ) { + tmp[ j ] = randu() * j; + } x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_random.ndarray.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_random.ndarray.js index feb071769c0b..3269dfc85750 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_random.ndarray.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_random.ndarray.js @@ -21,21 +21,16 @@ // MODULES // var bench = require( '@stdlib/bench' ); +var randu = require( '@stdlib/random/base/randu' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); +var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); -var uniform = require( '@stdlib/random/base/uniform' ).factory; -var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var pkg = require( './../package.json' ).name; var dsorthp = require( './../lib/ndarray.js' ); -// VARIABLES // - -var rand = uniform( -100.0, 100.0 ); - - // FUNCTIONS // /** @@ -50,10 +45,14 @@ function createBenchmark( iter, len ) { var tmp; var x; var i; + var j; x = []; for ( i = 0; i < iter; i++ ) { - tmp = filledarrayBy( len, 'float64', rand ); + tmp = new Float64Array( len ); + for ( j = 0; j < len; j++ ) { + tmp[ j ] = randu() * j; + } x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_random.ndarray.native.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_random.ndarray.native.js index 01e400259b3f..159d04c80068 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_random.ndarray.native.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.mostly_sorted_random.ndarray.native.js @@ -22,11 +22,11 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); +var randu = require( '@stdlib/random/base/randu' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); +var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); -var uniform = require( '@stdlib/random/base/uniform' ).factory; -var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var tryRequire = require( '@stdlib/utils/try-require' ); var pkg = require( './../package.json' ).name; @@ -38,7 +38,6 @@ var dsorthp = tryRequire( resolve( __dirname, './../lib/ndarray.native.js' ) ); var opts = { 'skip': ( dsorthp instanceof Error ) }; -var rand = uniform( -100.0, 100.0 ); // FUNCTIONS // @@ -55,10 +54,14 @@ function createBenchmark( iter, len ) { var tmp; var x; var i; + var j; x = []; for ( i = 0; i < iter; i++ ) { - tmp = filledarrayBy( len, 'float64', rand ); + tmp = new Float64Array( len ); + for ( j = 0; j < len; j++ ) { + tmp[ j ] = randu() * j; + } x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_few_uniques.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_few_uniques.js index 507f91bcb990..a5752c98a999 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_few_uniques.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_few_uniques.js @@ -21,21 +21,16 @@ // MODULES // var bench = require( '@stdlib/bench' ); +var uniform = require( '@stdlib/random/base/uniform' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); +var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); -var uniform = require( '@stdlib/random/base/uniform' ).factory; -var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var pkg = require( './../package.json' ).name; var dsorthp = require( './../lib/dsorthp.js' ); -// VARIABLES // - -var rand = uniform( -100.0, 100.0 ); - - // FUNCTIONS // /** @@ -48,12 +43,25 @@ var rand = uniform( -100.0, 100.0 ); */ function createBenchmark( iter, len ) { var tmp; + var sa; + var sb; + var a; + var b; var x; var i; + var j; + + a = -10.0; + b = -1.0; x = []; for ( i = 0; i < iter; i++ ) { - tmp = filledarrayBy( len, 'float64', rand ); + tmp = new Float64Array( len ); + for ( j = 0; j < len; j++ ) { + sb = (b-a) * (j/len); + sa = sb / 2.0; + tmp[ j ] = floor( uniform( a-sa, b-sb ) ); + } x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_few_uniques.native.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_few_uniques.native.js index 270eaea4464f..f905c4524128 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_few_uniques.native.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_few_uniques.native.js @@ -22,11 +22,11 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); +var uniform = require( '@stdlib/random/base/uniform' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); +var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); -var uniform = require( '@stdlib/random/base/uniform' ).factory; -var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var tryRequire = require( '@stdlib/utils/try-require' ); var pkg = require( './../package.json' ).name; @@ -38,7 +38,7 @@ var dsorthp = tryRequire( resolve( __dirname, './../lib/dsorthp.native.js' ) ); var opts = { 'skip': ( dsorthp instanceof Error ) }; -var rand = uniform( -100.0, 100.0 ); + // FUNCTIONS // @@ -52,12 +52,25 @@ var rand = uniform( -100.0, 100.0 ); */ function createBenchmark( iter, len ) { var tmp; + var sa; + var sb; + var a; + var b; var x; var i; + var j; + + a = -10.0; + b = -1.0; x = []; for ( i = 0; i < iter; i++ ) { - tmp = filledarrayBy( len, 'float64', rand ); + tmp = new Float64Array( len ); + for ( j = 0; j < len; j++ ) { + sb = (b-a) * (j/len); + sa = sb / 2.0; + tmp[ j ] = floor( uniform( a-sa, b-sb ) ); + } x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_few_uniques.ndarray.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_few_uniques.ndarray.js index 22e95fa65895..f2b3fd1aadd6 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_few_uniques.ndarray.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_few_uniques.ndarray.js @@ -21,21 +21,16 @@ // MODULES // var bench = require( '@stdlib/bench' ); +var uniform = require( '@stdlib/random/base/uniform' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); +var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); -var uniform = require( '@stdlib/random/base/uniform' ).factory; -var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var pkg = require( './../package.json' ).name; var dsorthp = require( './../lib/ndarray.js' ); -// VARIABLES // - -var rand = uniform( -100.0, 100.0 ); - - // FUNCTIONS // /** @@ -48,12 +43,25 @@ var rand = uniform( -100.0, 100.0 ); */ function createBenchmark( iter, len ) { var tmp; + var sa; + var sb; + var a; + var b; var x; var i; + var j; + + a = -10.0; + b = -1.0; x = []; for ( i = 0; i < iter; i++ ) { - tmp = filledarrayBy( len, 'float64', rand ); + tmp = new Float64Array( len ); + for ( j = 0; j < len; j++ ) { + sb = (b-a) * (j/len); + sa = sb / 2.0; + tmp[ j ] = floor( uniform( a-sa, b-sb ) ); + } x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_few_uniques.ndarray.native.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_few_uniques.ndarray.native.js index d9c0c174e0e3..b119d42a7d91 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_few_uniques.ndarray.native.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_few_uniques.ndarray.native.js @@ -22,11 +22,11 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); +var uniform = require( '@stdlib/random/base/uniform' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); +var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); -var uniform = require( '@stdlib/random/base/uniform' ).factory; -var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var tryRequire = require( '@stdlib/utils/try-require' ); var pkg = require( './../package.json' ).name; @@ -38,7 +38,6 @@ var dsorthp = tryRequire( resolve( __dirname, './../lib/ndarray.native.js' ) ); var opts = { 'skip': ( dsorthp instanceof Error ) }; -var rand = uniform( -100.0, 100.0 ); // FUNCTIONS // @@ -53,12 +52,25 @@ var rand = uniform( -100.0, 100.0 ); */ function createBenchmark( iter, len ) { var tmp; + var sa; + var sb; + var a; + var b; var x; var i; + var j; + + a = -10.0; + b = -1.0; x = []; for ( i = 0; i < iter; i++ ) { - tmp = filledarrayBy( len, 'float64', rand ); + tmp = new Float64Array( len ); + for ( j = 0; j < len; j++ ) { + sb = (b-a) * (j/len); + sa = sb / 2.0; + tmp[ j ] = floor( uniform( a-sa, b-sb ) ); + } x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_random.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_random.js index c2bc2aaa28d4..d47c1c0d1143 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_random.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_random.js @@ -21,21 +21,16 @@ // MODULES // var bench = require( '@stdlib/bench' ); +var randu = require( '@stdlib/random/base/randu' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); +var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); -var uniform = require( '@stdlib/random/base/uniform' ).factory; -var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var pkg = require( './../package.json' ).name; var dsorthp = require( './../lib/dsorthp.js' ); -// VARIABLES // - -var rand = uniform( -100.0, 100.0 ); - - // FUNCTIONS // /** @@ -50,10 +45,14 @@ function createBenchmark( iter, len ) { var tmp; var x; var i; + var j; x = []; for ( i = 0; i < iter; i++ ) { - tmp = filledarrayBy( len, 'float64', rand ); + tmp = new Float64Array( len ); + for ( j = 0; j < len; j++ ) { + tmp[ j ] = -1.0 * randu() * j; + } x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_random.native.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_random.native.js index 6a768de34c4f..283e5f7f0c82 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_random.native.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_random.native.js @@ -22,11 +22,11 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); +var randu = require( '@stdlib/random/base/randu' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); +var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); -var uniform = require( '@stdlib/random/base/uniform' ).factory; -var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var tryRequire = require( '@stdlib/utils/try-require' ); var pkg = require( './../package.json' ).name; @@ -38,7 +38,6 @@ var dsorthp = tryRequire( resolve( __dirname, './../lib/dsorthp.native.js' ) ); var opts = { 'skip': ( dsorthp instanceof Error ) }; -var rand = uniform( -100.0, 100.0 ); // FUNCTIONS // @@ -55,10 +54,14 @@ function createBenchmark( iter, len ) { var tmp; var x; var i; + var j; x = []; for ( i = 0; i < iter; i++ ) { - tmp = filledarrayBy( len, 'float64', rand ); + tmp = new Float64Array( len ); + for ( j = 0; j < len; j++ ) { + tmp[ j ] = -1.0 * randu() * j; + } x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_random.ndarray.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_random.ndarray.js index aea51cbd85f6..6b983e9176cb 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_random.ndarray.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_random.ndarray.js @@ -21,21 +21,16 @@ // MODULES // var bench = require( '@stdlib/bench' ); +var randu = require( '@stdlib/random/base/randu' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); +var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); -var uniform = require( '@stdlib/random/base/uniform' ).factory; -var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var pkg = require( './../package.json' ).name; var dsorthp = require( './../lib/ndarray.js' ); -// VARIABLES // - -var rand = uniform( -100.0, 100.0 ); - - // FUNCTIONS // /** @@ -50,10 +45,14 @@ function createBenchmark( iter, len ) { var tmp; var x; var i; + var j; x = []; for ( i = 0; i < iter; i++ ) { - tmp = filledarrayBy( len, 'float64', rand ); + tmp = new Float64Array( len ); + for ( j = 0; j < len; j++ ) { + tmp[ j ] = -1.0 * randu() * j; + } x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_random.ndarray.native.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_random.ndarray.native.js index 21f38f793c95..e6653a0950d7 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_random.ndarray.native.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_mostly_sorted_random.ndarray.native.js @@ -22,11 +22,11 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); +var randu = require( '@stdlib/random/base/randu' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); +var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); -var uniform = require( '@stdlib/random/base/uniform' ).factory; -var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var tryRequire = require( '@stdlib/utils/try-require' ); var pkg = require( './../package.json' ).name; @@ -38,7 +38,6 @@ var dsorthp = tryRequire( resolve( __dirname, './../lib/ndarray.native.js' ) ); var opts = { 'skip': ( dsorthp instanceof Error ) }; -var rand = uniform( -100.0, 100.0 ); // FUNCTIONS // @@ -55,10 +54,14 @@ function createBenchmark( iter, len ) { var tmp; var x; var i; + var j; x = []; for ( i = 0; i < iter; i++ ) { - tmp = filledarrayBy( len, 'float64', rand ); + tmp = new Float64Array( len ); + for ( j = 0; j < len; j++ ) { + tmp[ j ] = -1.0 * randu() * j; + } x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_few_uniques.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_few_uniques.js index b6c33884633b..4def46525218 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_few_uniques.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_few_uniques.js @@ -21,21 +21,16 @@ // MODULES // var bench = require( '@stdlib/bench' ); +var discreteUniform = require( '@stdlib/random/base/discrete-uniform' ).factory; var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); +var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); -var uniform = require( '@stdlib/random/base/uniform' ).factory; -var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var pkg = require( './../package.json' ).name; var dsorthp = require( './../lib/dsorthp.js' ); -// VARIABLES // - -var rand = uniform( -100.0, 100.0 ); - - // FUNCTIONS // /** @@ -47,13 +42,27 @@ var rand = uniform( -100.0, 100.0 ); * @returns {Function} benchmark function */ function createBenchmark( iter, len ) { + var randi; var tmp; + var M; var x; + var v; var i; - + var j; + + randi = discreteUniform( 1, 10 ); + M = floor( len*0.333 ); + x = []; for ( i = 0; i < iter; i++ ) { - tmp = filledarrayBy( len, 'float64', rand ); + tmp = new Float64Array( len ); + v = randi(); + for ( j = 0; j < len; j++ ) { + if ( i % M === 0 ) { + v -= randi(); + } + tmp[ j ] = v; + } x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_few_uniques.native.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_few_uniques.native.js index c74375858e93..952de7717d28 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_few_uniques.native.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_few_uniques.native.js @@ -22,8 +22,10 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); +var discreteUniform = require( '@stdlib/random/base/discrete-uniform' ).factory; var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); +var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var tryRequire = require( '@stdlib/utils/try-require' ); @@ -36,7 +38,6 @@ var dsorthp = tryRequire( resolve( __dirname, './../lib/dsorthp.native.js' ) ); var opts = { 'skip': ( dsorthp instanceof Error ) }; -var rand = uniform( -100.0, 100.0 ); // FUNCTIONS // @@ -50,13 +51,27 @@ var rand = uniform( -100.0, 100.0 ); * @returns {Function} benchmark function */ function createBenchmark( iter, len ) { + var randi; var tmp; var x; + var v; + var M; var i; + var j; + + randi = discreteUniform( 1, 10 ); + M = floor( len*0.333 ); x = []; for ( i = 0; i < iter; i++ ) { - tmp = filledarrayBy( len, 'float64', rand ); + tmp = new Float64Array( len ); + v = randi(); + for ( j = 0; j < len; j++ ) { + if ( i % M === 0 ) { + v -= randi(); + } + tmp[ j ] = v; + } x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_few_uniques.ndarray.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_few_uniques.ndarray.js index 6d7784f0f088..3ff44cfe7d0a 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_few_uniques.ndarray.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_few_uniques.ndarray.js @@ -21,21 +21,16 @@ // MODULES // var bench = require( '@stdlib/bench' ); +var discreteUniform = require( '@stdlib/random/base/discrete-uniform' ).factory; var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); +var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); -var uniform = require( '@stdlib/random/base/uniform' ).factory; -var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var pkg = require( './../package.json' ).name; var dsorthp = require( './../lib/ndarray.js' ); -// VARIABLES // - -var rand = uniform( -100.0, 100.0 ); - - // FUNCTIONS // /** @@ -47,13 +42,27 @@ var rand = uniform( -100.0, 100.0 ); * @returns {Function} benchmark function */ function createBenchmark( iter, len ) { + var randi; var tmp; + var M; var x; + var v; var i; + var j; + + randi = discreteUniform( 1, 10 ); + M = floor( len*0.333 ); x = []; for ( i = 0; i < iter; i++ ) { - tmp = filledarrayBy( len, 'float64', rand ); + tmp = new Float64Array( len ); + v = randi(); + for ( j = 0; j < len; j++ ) { + if ( i % M === 0 ) { + v -= randi(); + } + tmp[ j ] = v; + } x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_few_uniques.ndarray.native.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_few_uniques.ndarray.native.js index a6fa7b22bc5e..387c8885ef38 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_few_uniques.ndarray.native.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_few_uniques.ndarray.native.js @@ -22,11 +22,11 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); +var discreteUniform = require( '@stdlib/random/base/discrete-uniform' ).factory; var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); +var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); -var uniform = require( '@stdlib/random/base/uniform' ).factory; -var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var tryRequire = require( '@stdlib/utils/try-require' ); var pkg = require( './../package.json' ).name; @@ -38,7 +38,6 @@ var dsorthp = tryRequire( resolve( __dirname, './../lib/ndarray.native.js' ) ); var opts = { 'skip': ( dsorthp instanceof Error ) }; -var rand = uniform( -100.0, 100.0 ); // FUNCTIONS // @@ -52,13 +51,27 @@ var rand = uniform( -100.0, 100.0 ); * @returns {Function} benchmark function */ function createBenchmark( iter, len ) { + var randi; var tmp; var x; + var v; + var M; var i; + var j; + + randi = discreteUniform( 1, 10 ); + M = floor( len*0.333 ); x = []; for ( i = 0; i < iter; i++ ) { - tmp = filledarrayBy( len, 'float64', rand ); + tmp = new Float64Array( len ); + v = randi(); + for ( j = 0; j < len; j++ ) { + if ( i % M === 0 ) { + v -= randi(); + } + tmp[ j ] = v; + } x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_random.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_random.js index d7caef46bd2e..eb91a3ed056a 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_random.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_random.js @@ -21,21 +21,16 @@ // MODULES // var bench = require( '@stdlib/bench' ); +var randu = require( '@stdlib/random/base/randu' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); +var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); -var uniform = require( '@stdlib/random/base/uniform' ).factory; -var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var pkg = require( './../package.json' ).name; var dsorthp = require( './../lib/dsorthp.js' ); -// VARIABLES // - -var rand = uniform( -100.0, 100.0 ); - - // FUNCTIONS // /** @@ -50,10 +45,14 @@ function createBenchmark( iter, len ) { var tmp; var x; var i; + var j; x = []; for ( i = 0; i < iter; i++ ) { - tmp = filledarrayBy( len, 'float64', rand ); + tmp = new Float64Array( len ); + for ( j = 0; j < len; j++ ) { + tmp[ j ] = iter - j - randu(); + } x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_random.native.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_random.native.js index 5db2032a831b..a0212ded3396 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_random.native.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_random.native.js @@ -22,11 +22,11 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); +var randu = require( '@stdlib/random/base/randu' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); +var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); -var uniform = require( '@stdlib/random/base/uniform' ).factory; -var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var tryRequire = require( '@stdlib/utils/try-require' ); var pkg = require( './../package.json' ).name; @@ -38,7 +38,6 @@ var dsorthp = tryRequire( resolve( __dirname, './../lib/dsorthp.native.js' ) ); var opts = { 'skip': ( dsorthp instanceof Error ) }; -var rand = uniform( -100.0, 100.0 ); // FUNCTIONS // @@ -55,10 +54,14 @@ function createBenchmark( iter, len ) { var tmp; var x; var i; + var j; x = []; for ( i = 0; i < iter; i++ ) { - tmp = filledarrayBy( len, 'float64', rand ); + tmp = new Float64Array( len ); + for ( j = 0; j < len; j++ ) { + tmp[ j ] = iter - j - randu(); + } x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_random.ndarray.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_random.ndarray.js index 0f24d90a7da7..a833b750d9e7 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_random.ndarray.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_random.ndarray.js @@ -21,21 +21,16 @@ // MODULES // var bench = require( '@stdlib/bench' ); +var randu = require( '@stdlib/random/base/randu' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); +var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); -var uniform = require( '@stdlib/random/base/uniform' ).factory; -var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var pkg = require( './../package.json' ).name; var dsorthp = require( './../lib/ndarray.js' ); -// VARIABLES // - -var rand = uniform( -100.0, 100.0 ); - - // FUNCTIONS // /** @@ -50,10 +45,14 @@ function createBenchmark( iter, len ) { var tmp; var x; var i; + var j; x = []; for ( i = 0; i < iter; i++ ) { - tmp = filledarrayBy( len, 'float64', rand ); + tmp = new Float64Array( len ); + for ( j = 0; j < len; j++ ) { + tmp[ j ] = iter - j - randu(); + } x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_random.ndarray.native.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_random.ndarray.native.js index 214163b0642b..23718c336897 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_random.ndarray.native.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.rev_sorted_random.ndarray.native.js @@ -22,11 +22,11 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); +var randu = require( '@stdlib/random/base/randu' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); +var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); -var uniform = require( '@stdlib/random/base/uniform' ).factory; -var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var tryRequire = require( '@stdlib/utils/try-require' ); var pkg = require( './../package.json' ).name; @@ -38,7 +38,6 @@ var dsorthp = tryRequire( resolve( __dirname, './../lib/ndarray.native.js' ) ); var opts = { 'skip': ( dsorthp instanceof Error ) }; -var rand = uniform( -100.0, 100.0 ); // FUNCTIONS // @@ -55,10 +54,14 @@ function createBenchmark( iter, len ) { var tmp; var x; var i; + var j; x = []; for ( i = 0; i < iter; i++ ) { - tmp = filledarrayBy( len, 'float64', rand ); + tmp = new Float64Array( len ); + for ( j = 0; j < len; j++ ) { + tmp[ j ] = iter - j - randu(); + } x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_few_uniques.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_few_uniques.js index 7a8362f37751..536ba03b27cf 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_few_uniques.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_few_uniques.js @@ -21,21 +21,16 @@ // MODULES // var bench = require( '@stdlib/bench' ); +var discreteUniform = require( '@stdlib/random/base/discrete-uniform' ).factory; var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); +var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); -var uniform = require( '@stdlib/random/base/uniform' ).factory; -var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var pkg = require( './../package.json' ).name; var dsorthp = require( './../lib/dsorthp.js' ); -// VARIABLES // - -var rand = uniform( -100.0, 100.0 ); - - // FUNCTIONS // /** @@ -47,13 +42,27 @@ var rand = uniform( -100.0, 100.0 ); * @returns {Function} benchmark function */ function createBenchmark( iter, len ) { + var randi; var tmp; + var M; var x; + var v; var i; + var j; + + randi = discreteUniform( 1, 10 ); + M = floor( len*0.333 ); x = []; for ( i = 0; i < iter; i++ ) { - tmp = filledarrayBy( len, 'float64', rand ); + tmp = new Float64Array( len ); + v = randi(); + for ( j = 0; j < len; j++ ) { + if ( j % M === 0 ) { + v += randi(); + } + tmp[ j ] = v; + } x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_few_uniques.native.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_few_uniques.native.js index 389cc9379585..c39789d51227 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_few_uniques.native.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_few_uniques.native.js @@ -22,11 +22,11 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); +var discreteUniform = require( '@stdlib/random/base/discrete-uniform' ).factory; var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); +var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); -var uniform = require( '@stdlib/random/base/uniform' ).factory; -var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var tryRequire = require( '@stdlib/utils/try-require' ); var pkg = require( './../package.json' ).name; @@ -38,7 +38,6 @@ var dsorthp = tryRequire( resolve( __dirname, './../lib/dsorthp.native.js' ) ); var opts = { 'skip': ( dsorthp instanceof Error ) }; -var rand = uniform( -100.0, 100.0 ); // FUNCTIONS // @@ -52,13 +51,27 @@ var rand = uniform( -100.0, 100.0 ); * @returns {Function} benchmark function */ function createBenchmark( iter, len ) { + var randi; var tmp; + var M; var x; + var v; var i; + var j; + + randi = discreteUniform( 1, 10 ); + M = floor( len*0.333 ); x = []; for ( i = 0; i < iter; i++ ) { - tmp = filledarrayBy( len, 'float64', rand ); + tmp = new Float64Array( len ); + v = randi(); + for ( j = 0; j < len; j++ ) { + if ( j % M === 0 ) { + v += randi(); + } + tmp[ j ] = v; + } x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_few_uniques.ndarray.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_few_uniques.ndarray.js index 2cc04f1986ff..b5b390a993be 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_few_uniques.ndarray.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_few_uniques.ndarray.js @@ -21,21 +21,16 @@ // MODULES // var bench = require( '@stdlib/bench' ); +var discreteUniform = require( '@stdlib/random/base/discrete-uniform' ).factory; var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); +var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); -var uniform = require( '@stdlib/random/base/uniform' ).factory; -var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var pkg = require( './../package.json' ).name; var dsorthp = require( './../lib/ndarray.js' ); -// VARIABLES // - -var rand = uniform( -100.0, 100.0 ); - - // FUNCTIONS // /** @@ -47,13 +42,27 @@ var rand = uniform( -100.0, 100.0 ); * @returns {Function} benchmark function */ function createBenchmark( iter, len ) { + var randi; var tmp; + var M; var x; + var v; var i; + var j; + + randi = discreteUniform( 1, 10 ); + M = floor( len*0.333 ); x = []; for ( i = 0; i < iter; i++ ) { - tmp = filledarrayBy( len, 'float64', rand ); + tmp = new Float64Array( len ); + v = randi(); + for ( j = 0; j < len; j++ ) { + if ( j % M === 0 ) { + v += randi(); + } + tmp[ j ] = v; + } x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_few_uniques.ndarray.native.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_few_uniques.ndarray.native.js index 92523837bb6f..8d77fcf8a28d 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_few_uniques.ndarray.native.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_few_uniques.ndarray.native.js @@ -22,11 +22,11 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); +var discreteUniform = require( '@stdlib/random/base/discrete-uniform' ).factory; var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); +var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); -var uniform = require( '@stdlib/random/base/uniform' ).factory; -var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var tryRequire = require( '@stdlib/utils/try-require' ); var pkg = require( './../package.json' ).name; @@ -38,7 +38,6 @@ var dsorthp = tryRequire( resolve( __dirname, './../lib/ndarray.native.js' ) ); var opts = { 'skip': ( dsorthp instanceof Error ) }; -var rand = uniform( -100.0, 100.0 ); // FUNCTIONS // @@ -52,13 +51,27 @@ var rand = uniform( -100.0, 100.0 ); * @returns {Function} benchmark function */ function createBenchmark( iter, len ) { + var randi; var tmp; + var M; var x; + var v; var i; + var j; + + randi = discreteUniform( 1, 10 ); + M = floor( len*0.333 ); x = []; for ( i = 0; i < iter; i++ ) { - tmp = filledarrayBy( len, 'float64', rand ); + tmp = new Float64Array( len ); + v = randi(); + for ( j = 0; j < len; j++ ) { + if ( j % M === 0 ) { + v += randi(); + } + tmp[ j ] = v; + } x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_random.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_random.js index 09e19e4146fd..1c43d5dcbe59 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_random.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_random.js @@ -21,21 +21,15 @@ // MODULES // var bench = require( '@stdlib/bench' ); +var randu = require( '@stdlib/random/base/randu' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); var Float64Array = require( '@stdlib/array/float64' ); -var uniform = require( '@stdlib/random/base/uniform' ).factory; -var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var pkg = require( './../package.json' ).name; var dsorthp = require( './../lib/dsorthp.js' ); -// VARIABLES // - -var rand = uniform( -100.0, 100.0 ); - - // FUNCTIONS // /** @@ -50,10 +44,14 @@ function createBenchmark( iter, len ) { var tmp; var x; var i; + var j; x = []; for ( i = 0; i < iter; i++ ) { - tmp = filledarrayBy( len, 'float64', rand ); + tmp = new Float64Array( len ); + for ( j = 0; j < len; j++ ) { + tmp[ j ] = randu() + j; + } x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_random.native.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_random.native.js index 3d5172fdbea1..7c2107db6873 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_random.native.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_random.native.js @@ -22,11 +22,10 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); +var randu = require( '@stdlib/random/base/randu' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); var Float64Array = require( '@stdlib/array/float64' ); -var uniform = require( '@stdlib/random/base/uniform' ).factory; -var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var tryRequire = require( '@stdlib/utils/try-require' ); var pkg = require( './../package.json' ).name; @@ -38,7 +37,6 @@ var dsorthp = tryRequire( resolve( __dirname, './../lib/dsorthp.native.js' ) ); var opts = { 'skip': ( dsorthp instanceof Error ) }; -var rand = uniform( -100.0, 100.0 ); // FUNCTIONS // @@ -55,10 +53,14 @@ function createBenchmark( iter, len ) { var tmp; var x; var i; + var j; x = []; for ( i = 0; i < iter; i++ ) { - tmp = filledarrayBy( len, 'float64', rand ); + tmp = new Float64Array( len ); + for ( j = 0; j < len; j++ ) { + tmp[ j ] = randu() + j; + } x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_random.ndarray.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_random.ndarray.js index da2b0fad9bcc..195268030c9e 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_random.ndarray.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_random.ndarray.js @@ -21,21 +21,15 @@ // MODULES // var bench = require( '@stdlib/bench' ); +var randu = require( '@stdlib/random/base/randu' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); var Float64Array = require( '@stdlib/array/float64' ); -var uniform = require( '@stdlib/random/base/uniform' ).factory; -var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var pkg = require( './../package.json' ).name; var dsorthp = require( './../lib/ndarray.js' ); -// VARIABLES // - -var rand = uniform( -100.0, 100.0 ); - - // FUNCTIONS // /** @@ -50,10 +44,14 @@ function createBenchmark( iter, len ) { var tmp; var x; var i; + var j; x = []; for ( i = 0; i < iter; i++ ) { - tmp = filledarrayBy( len, 'float64', rand ); + tmp = new Float64Array( len ); + for ( j = 0; j < len; j++ ) { + tmp[ j ] = randu() + j; + } x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_random.ndarray.native.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_random.ndarray.native.js index 41c1e28c6ea7..4ea5a3a66ee8 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_random.ndarray.native.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.sorted_random.ndarray.native.js @@ -22,11 +22,10 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); +var randu = require( '@stdlib/random/base/randu' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); var Float64Array = require( '@stdlib/array/float64' ); -var uniform = require( '@stdlib/random/base/uniform' ).factory; -var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var tryRequire = require( '@stdlib/utils/try-require' ); var pkg = require( './../package.json' ).name; @@ -38,7 +37,6 @@ var dsorthp = tryRequire( resolve( __dirname, './../lib/ndarray.native.js' ) ); var opts = { 'skip': ( dsorthp instanceof Error ) }; -var rand = uniform( -100.0, 100.0 ); // FUNCTIONS // @@ -55,10 +53,14 @@ function createBenchmark( iter, len ) { var tmp; var x; var i; + var j; x = []; for ( i = 0; i < iter; i++ ) { - tmp = filledarrayBy( len, 'float64', rand ); + tmp = new Float64Array( len ); + for ( j = 0; j < len; j++ ) { + tmp[ j ] = randu() + j; + } x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_few_uniques.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_few_uniques.js index 5079b29eb7d4..cf54b4f10a03 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_few_uniques.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_few_uniques.js @@ -21,21 +21,16 @@ // MODULES // var bench = require( '@stdlib/bench' ); +var discreteUniform = require( '@stdlib/random/base/discrete-uniform' ).factory; var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); +var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); -var uniform = require( '@stdlib/random/base/uniform' ).factory; -var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var pkg = require( './../package.json' ).name; var dsorthp = require( './../lib/dsorthp.js' ); -// VARIABLES // - -var rand = uniform( -100.0, 100.0 ); - - // FUNCTIONS // /** @@ -47,13 +42,20 @@ var rand = uniform( -100.0, 100.0 ); * @returns {Function} benchmark function */ function createBenchmark( iter, len ) { + var randi; var tmp; var x; var i; + var j; + + randi = discreteUniform( 1, 10 ); x = []; for ( i = 0; i < iter; i++ ) { - tmp = filledarrayBy( len, 'float64', rand ); + tmp = new Float64Array( len ); + for ( j = 0; j < len; j++ ) { + tmp[ j ] = randi(); + } x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_few_uniques.native.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_few_uniques.native.js index 84da0668b470..2542918edb13 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_few_uniques.native.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_few_uniques.native.js @@ -22,11 +22,11 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); +var discreteUniform = require( '@stdlib/random/base/discrete-uniform' ).factory; var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); +var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); -var uniform = require( '@stdlib/random/base/uniform' ).factory; -var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var tryRequire = require( '@stdlib/utils/try-require' ); var pkg = require( './../package.json' ).name; @@ -38,7 +38,6 @@ var dsorthp = tryRequire( resolve( __dirname, './../lib/dsorthp.native.js' ) ); var opts = { 'skip': ( dsorthp instanceof Error ) }; -var rand = uniform( -100.0, 100.0 ); // FUNCTIONS // @@ -52,13 +51,20 @@ var rand = uniform( -100.0, 100.0 ); * @returns {Function} benchmark function */ function createBenchmark( iter, len ) { + var randi; var tmp; var x; var i; + var j; + + randi = discreteUniform( 1, 10 ); x = []; for ( i = 0; i < iter; i++ ) { - tmp = filledarrayBy( len, 'float64', rand ); + tmp = new Float64Array( len ); + for ( j = 0; j < len; j++ ) { + tmp[ j ] = randi(); + } x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_few_uniques.ndarray.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_few_uniques.ndarray.js index 964493a474d0..c0729891b05f 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_few_uniques.ndarray.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_few_uniques.ndarray.js @@ -21,21 +21,16 @@ // MODULES // var bench = require( '@stdlib/bench' ); +var discreteUniform = require( '@stdlib/random/base/discrete-uniform' ).factory; var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); +var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); -var uniform = require( '@stdlib/random/base/uniform' ).factory; -var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var pkg = require( './../package.json' ).name; var dsorthp = require( './../lib/ndarray.js' ); -// VARIABLES // - -var rand = uniform( -100.0, 100.0 ); - - // FUNCTIONS // /** @@ -47,13 +42,20 @@ var rand = uniform( -100.0, 100.0 ); * @returns {Function} benchmark function */ function createBenchmark( iter, len ) { + var randi; var tmp; var x; var i; + var j; + + randi = discreteUniform( 1, 10 ); x = []; for ( i = 0; i < iter; i++ ) { - tmp = filledarrayBy( len, 'float64', rand ); + tmp = new Float64Array( len ); + for ( j = 0; j < len; j++ ) { + tmp[ j ] = randi(); + } x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_few_uniques.ndarray.native.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_few_uniques.ndarray.native.js index 315e168e043d..11f6abbb237c 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_few_uniques.ndarray.native.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_few_uniques.ndarray.native.js @@ -22,11 +22,11 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); +var discreteUniform = require( '@stdlib/random/base/discrete-uniform' ).factory; var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); +var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); -var uniform = require( '@stdlib/random/base/uniform' ).factory; -var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var tryRequire = require( '@stdlib/utils/try-require' ); var pkg = require( './../package.json' ).name; @@ -38,7 +38,6 @@ var dsorthp = tryRequire( resolve( __dirname, './../lib/ndarray.native.js' ) ); var opts = { 'skip': ( dsorthp instanceof Error ) }; -var rand = uniform( -100.0, 100.0 ); // FUNCTIONS // @@ -52,13 +51,20 @@ var rand = uniform( -100.0, 100.0 ); * @returns {Function} benchmark function */ function createBenchmark( iter, len ) { + var randi; var tmp; var x; var i; + var j; + + randi = discreteUniform( 1, 10 ); x = []; for ( i = 0; i < iter; i++ ) { - tmp = filledarrayBy( len, 'float64', rand ); + tmp = new Float64Array( len ); + for ( j = 0; j < len; j++ ) { + tmp[ j ] = randi(); + } x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_random.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_random.js index c94497cbd2c3..961a4bc4ecf2 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_random.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_random.js @@ -21,21 +21,16 @@ // MODULES // var bench = require( '@stdlib/bench' ); +var randu = require( '@stdlib/random/base/randu' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); +var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); -var uniform = require( '@stdlib/random/base/uniform' ).factory; -var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var pkg = require( './../package.json' ).name; var dsorthp = require( './../lib/dsorthp.js' ); -// VARIABLES // - -var rand = uniform( -100.0, 100.0 ); - - // FUNCTIONS // /** @@ -50,10 +45,14 @@ function createBenchmark( iter, len ) { var tmp; var x; var i; + var j; x = []; for ( i = 0; i < iter; i++ ) { - tmp = filledarrayBy( len, 'float64', rand ); + tmp = new Float64Array( len ); + for ( j = 0; j < len; j++ ) { + tmp[ j ] = (randu()*20.0) - 10.0; + } x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_random.native.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_random.native.js index ffb7eb3deee4..92394b24e197 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_random.native.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_random.native.js @@ -22,11 +22,11 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); +var randu = require( '@stdlib/random/base/randu' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); +var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); -var uniform = require( '@stdlib/random/base/uniform' ).factory; -var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var tryRequire = require( '@stdlib/utils/try-require' ); var pkg = require( './../package.json' ).name; @@ -38,7 +38,6 @@ var dsorthp = tryRequire( resolve( __dirname, './../lib/dsorthp.native.js' ) ); var opts = { 'skip': ( dsorthp instanceof Error ) }; -var rand = uniform( -100.0, 100.0 ); // FUNCTIONS // @@ -55,10 +54,14 @@ function createBenchmark( iter, len ) { var tmp; var x; var i; + var j; x = []; for ( i = 0; i < iter; i++ ) { - tmp = filledarrayBy( len, 'float64', rand ); + tmp = new Float64Array( len ); + for ( j = 0; j < len; j++ ) { + tmp[ j ] = (randu()*20.0) - 10.0; + } x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_random.ndarray.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_random.ndarray.js index efc80c6667ee..2afca9d209bc 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_random.ndarray.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_random.ndarray.js @@ -21,21 +21,16 @@ // MODULES // var bench = require( '@stdlib/bench' ); +var randu = require( '@stdlib/random/base/randu' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); +var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); -var uniform = require( '@stdlib/random/base/uniform' ).factory; -var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var pkg = require( './../package.json' ).name; var dsorthp = require( './../lib/ndarray.js' ); -// VARIABLES // - -var rand = uniform( -100.0, 100.0 ); - - // FUNCTIONS // /** @@ -50,10 +45,14 @@ function createBenchmark( iter, len ) { var tmp; var x; var i; + var j; x = []; for ( i = 0; i < iter; i++ ) { - tmp = filledarrayBy( len, 'float64', rand ); + tmp = new Float64Array( len ); + for ( j = 0; j < len; j++ ) { + tmp[ j ] = (randu()*20.0) - 10.0; + } x.push( tmp ); } return benchmark; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_random.ndarray.native.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_random.ndarray.native.js index 30dd85278206..a29cc59d51e5 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_random.ndarray.native.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/benchmark/benchmark.unsorted_random.ndarray.native.js @@ -22,11 +22,11 @@ var resolve = require( 'path' ).resolve; var bench = require( '@stdlib/bench' ); +var randu = require( '@stdlib/random/base/randu' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); var pow = require( '@stdlib/math/base/special/pow' ); +var floor = require( '@stdlib/math/base/special/floor' ); var Float64Array = require( '@stdlib/array/float64' ); -var uniform = require( '@stdlib/random/base/uniform' ).factory; -var filledarrayBy = require( '@stdlib/array/filled-by' ); var dcopy = require( '@stdlib/blas/base/dcopy' ); var tryRequire = require( '@stdlib/utils/try-require' ); var pkg = require( './../package.json' ).name; @@ -38,7 +38,6 @@ var dsorthp = tryRequire( resolve( __dirname, './../lib/ndarray.native.js' ) ); var opts = { 'skip': ( dsorthp instanceof Error ) }; -var rand = uniform( -100.0, 100.0 ); // FUNCTIONS // @@ -55,10 +54,14 @@ function createBenchmark( iter, len ) { var tmp; var x; var i; + var j; x = []; for ( i = 0; i < iter; i++ ) { - tmp = filledarrayBy( len, 'float64', rand ); + tmp = new Float64Array( len ); + for ( j = 0; j < len; j++ ) { + tmp[ j ] = (randu()*20.0) - 10.0; + } x.push( tmp ); } return benchmark; From 2b43c3f98f00d4d2f3c905b8946d32c6c1bf0bab Mon Sep 17 00:00:00 2001 From: Philipp Burckhardt Date: Sat, 27 Apr 2024 20:59:03 -0400 Subject: [PATCH 5/5] fix: replace addon.c and update manifest configs --- .../ext/base/dsorthp/lib/ndarray.native.js | 6 ++- .../blas/ext/base/dsorthp/manifest.json | 39 ++++--------------- .../@stdlib/blas/ext/base/dsorthp/src/addon.c | 14 +++---- 3 files changed, 18 insertions(+), 41 deletions(-) diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/lib/ndarray.native.js b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/lib/ndarray.native.js index a0cf72a4c601..76b79be77df1 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/lib/ndarray.native.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/lib/ndarray.native.js @@ -47,8 +47,12 @@ var addon = require( './dsorthp.native.js' ); function dsorthp( N, order, x, stride, offset ) { var view; offset = minViewBufferIndex( N, stride, offset ); + if ( stride < 0 ) { + order *= -1.0; + stride *= -1; + } view = offsetView( x, offset ); - + addon( N, order, view, stride ); return x; } diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/manifest.json b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/manifest.json index 2f92cf25dd3d..9b9ce0027c23 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/manifest.json +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/manifest.json @@ -39,38 +39,13 @@ "libpath": [], "dependencies": [ "@stdlib/math/base/assert/is-nan", - "@stdlib/math/base/assert/is-positive-zero", - "@stdlib/napi/argv", - "@stdlib/napi/argv-int64", - "@stdlib/napi/argv-strided-float64array" + "@stdlib/math/base/assert/is-positive-zero", + "@stdlib/napi/export", + "@stdlib/napi/argv", + "@stdlib/napi/argv-double", + "@stdlib/napi/argv-int64", + "@stdlib/napi/argv-strided-float64array" ] - }, - { - "task": "benchmark", - "src": [ - "./src/dsorthp.c" - ], - "include": [ - "./include" - ], - "libraries": [ - "-lm" - ], - "dependencies": [] - }, - { - "task": "examples", - "src": [ - "./src/dsorthp.c" - ], - "include": [ - "./include" - ], - "libraries": [ - "-lm" - ], - "libpath": [], - "dependencies": [] } ] -} \ No newline at end of file +} diff --git a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/src/addon.c b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/src/addon.c index 767b6d3d7428..03246dd4eba7 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dsorthp/src/addon.c +++ b/lib/node_modules/@stdlib/blas/ext/base/dsorthp/src/addon.c @@ -19,7 +19,7 @@ #include "stdlib/blas/ext/base/dsorthp.h" #include "stdlib/napi/export.h" #include "stdlib/napi/argv.h" -#include "stdlib/napi/argv_float.h" +#include "stdlib/napi/argv_double.h" #include "stdlib/napi/argv_int64.h" #include "stdlib/napi/argv_strided_float64array.h" #include @@ -33,14 +33,12 @@ * @return Node-API value */ static napi_value addon( napi_env env, napi_callback_info info ) { - STDLIB_NAPI_ARGV( env, info, argv, argc, 6 ); + STDLIB_NAPI_ARGV( env, info, argv, argc, 4 ); STDLIB_NAPI_ARGV_INT64( env, N, argv, 0 ); - STDLIB_NAPI_ARGV_FLOAT( env, sum, argv, 1 ); - STDLIB_NAPI_ARGV_INT64( env, strideX, argv, 3 ); - STDLIB_NAPI_ARGV_INT64( env, strideY, argv, 5 ); - STDLIB_NAPI_ARGV_STRIDED_FLOAT64ARRAY( env, X, N, strideX, argv, 2 ); - STDLIB_NAPI_ARGV_STRIDED_FLOAT64ARRAY( env, Y, N, strideY, argv, 4 ); - stdlib_strided_dsorthp( N, sum, X, strideX, Y, strideY ); + STDLIB_NAPI_ARGV_DOUBLE( env, order, argv, 1 ); + STDLIB_NAPI_ARGV_INT64( env, stride, argv, 3 ); + STDLIB_NAPI_ARGV_STRIDED_FLOAT64ARRAY( env, X, N, stride, argv, 2 ); + c_dsorthp( N, order, X, stride ); return NULL; }