@@ -126,7 +126,9 @@ import pop = require( '@stdlib/ndarray/base/pop' );
126126import prependSingletonDimensions = require( '@stdlib/ndarray/base/prepend-singleton-dimensions' ) ;
127127import promoteDataTypes = require( '@stdlib/ndarray/base/promote-dtypes' ) ;
128128import quaternaryLoopOrder = require( '@stdlib/ndarray/base/quaternary-loop-interchange-order' ) ;
129+ import quaternaryBlockSize = require( '@stdlib/ndarray/base/quaternary-tiling-block-size' ) ;
129130import quinaryLoopOrder = require( '@stdlib/ndarray/base/quinary-loop-interchange-order' ) ;
131+ import quinaryBlockSize = require( '@stdlib/ndarray/base/quinary-tiling-block-size' ) ;
130132import removeSingletonDimensions = require( '@stdlib/ndarray/base/remove-singleton-dimensions' ) ;
131133import reverse = require( '@stdlib/ndarray/base/reverse' ) ;
132134import reverseDimension = require( '@stdlib/ndarray/base/reverse-dimension' ) ;
@@ -154,6 +156,7 @@ import ternary = require( '@stdlib/ndarray/base/ternary' );
154156import ternaryLoopOrder = require( '@stdlib/ndarray/base/ternary-loop-interchange-order' ) ;
155157import ternaryOutputDataType = require( '@stdlib/ndarray/base/ternary-output-dtype' ) ;
156158import ternaryBlockSize = require( '@stdlib/ndarray/base/ternary-tiling-block-size' ) ;
159+ import blockSize = require( '@stdlib/ndarray/base/tiling-block-size' ) ;
157160import ndarray2array = require( '@stdlib/ndarray/base/to-array' ) ;
158161import toFlippedlr = require( '@stdlib/ndarray/base/to-flippedlr' ) ;
159162import toFlippedud = require( '@stdlib/ndarray/base/to-flippedud' ) ;
@@ -3281,6 +3284,22 @@ interface Namespace {
32813284 */
32823285 quaternaryLoopOrder : typeof quaternaryLoopOrder ;
32833286
3287+ /**
3288+ * Returns a loop block size for multi-dimensional array tiled loops.
3289+ *
3290+ * @param dtypeX - first input array data type
3291+ * @param dtypeY - second input array data type
3292+ * @param dtypeZ - third input array data type
3293+ * @param dtypeW - fourth input array data type
3294+ * @param dtypeU - output array data type
3295+ * @returns block size (in units of elements)
3296+ *
3297+ * @example
3298+ * var bsize = ns.quaternaryBlockSize( 'float64', 'float64', 'float64', 'float64', 'float64' );
3299+ * // returns <number>
3300+ */
3301+ quaternaryBlockSize : typeof quaternaryBlockSize ;
3302+
32843303 /**
32853304 * Reorders ndarray dimensions and associated strides for loop interchange.
32863305 *
@@ -3349,6 +3368,23 @@ interface Namespace {
33493368 */
33503369 quinaryLoopOrder : typeof quinaryLoopOrder ;
33513370
3371+ /**
3372+ * Returns a loop block size for multi-dimensional array tiled loops.
3373+ *
3374+ * @param dtypeX - first input array data type
3375+ * @param dtypeY - second input array data type
3376+ * @param dtypeZ - third input array data type
3377+ * @param dtypeW - fourth input array data type
3378+ * @param dtypeU - fifth input array data type
3379+ * @param dtypeV - output array data type
3380+ * @returns block size (in units of elements)
3381+ *
3382+ * @example
3383+ * var bsize = ns.quinaryBlockSize( 'float64', 'float64', 'float64', 'float64', 'float64', 'float64' );
3384+ * // returns <number>
3385+ */
3386+ quinaryBlockSize : typeof quinaryBlockSize ;
3387+
33523388 /**
33533389 * Returns an array without singleton dimensions.
33543390 *
@@ -4371,6 +4407,18 @@ interface Namespace {
43714407 */
43724408 ternaryBlockSize : typeof ternaryBlockSize ;
43734409
4410+ /**
4411+ * Returns a loop block size for multi-dimensional array tiled loops.
4412+ *
4413+ * @param dtypes - list of input and output ndarray data types
4414+ * @returns block size (in units of elements)
4415+ *
4416+ * @example
4417+ * var bsize = ns.blockSize( [ 'float64', 'float64', 'float64', 'float64' ] );
4418+ * // returns <number>
4419+ */
4420+ blockSize : typeof blockSize ;
4421+
43744422 /**
43754423 * Converts an ndarray buffer to a generic array (which may include nested arrays).
43764424 *
0 commit comments