## Uses of Class
org.apache.sysds.runtime.matrix.data.MatrixBlock

- Packages that use MatrixBlock
  Package | Description
  --- | ---
  org.apache.sysds.api.jmlc |
  org.apache.sysds.api.mlcontext |
  org.apache.sysds.hops.estim |
  org.apache.sysds.hops.rewrite |
  org.apache.sysds.runtime.codegen |
  org.apache.sysds.runtime.compress |
  org.apache.sysds.runtime.compress.colgroup |
  org.apache.sysds.runtime.compress.colgroup.dictionary |
  org.apache.sysds.runtime.compress.estim |
  org.apache.sysds.runtime.compress.lib |
  org.apache.sysds.runtime.compress.readers |
  org.apache.sysds.runtime.compress.utils |
  org.apache.sysds.runtime.controlprogram.caching |
  org.apache.sysds.runtime.controlprogram.context |
  org.apache.sysds.runtime.controlprogram.federated |
  org.apache.sysds.runtime.controlprogram.paramserv |
  org.apache.sysds.runtime.controlprogram.paramserv.dp |
  org.apache.sysds.runtime.controlprogram.parfor |
  org.apache.sysds.runtime.controlprogram.parfor.util |
  org.apache.sysds.runtime.data |
  org.apache.sysds.runtime.functionobjects |
  org.apache.sysds.runtime.instructions.gpu.context |
  org.apache.sysds.runtime.instructions.spark |
  org.apache.sysds.runtime.instructions.spark.data |
  org.apache.sysds.runtime.instructions.spark.functions |
  org.apache.sysds.runtime.instructions.spark.utils |
  org.apache.sysds.runtime.io |
  org.apache.sysds.runtime.lineage |
  org.apache.sysds.runtime.matrix.data |
  org.apache.sysds.runtime.privacy.propagation |
  org.apache.sysds.runtime.transform.decode |
  org.apache.sysds.runtime.transform.encode |
  org.apache.sysds.runtime.util |

- - ### Uses of MatrixBlock in org.apache.sysds.api.jmlc

    Methods in org.apache.sysds.api.jmlc that return MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `MatrixBlock` | Connection.`convertToMatrix(InputStream input, int rows, int cols)` Converts an input stream of a string matrix in text format into a matrix block.
    `MatrixBlock` | Connection.`convertToMatrix(InputStream input, int rows, int cols, String format)` Converts an input stream of a string matrix in csv or text format into a matrix block.
    `MatrixBlock` | Connection.`convertToMatrix(InputStream input, String meta)` Converts an input stream of a string matrix in csv or textcell format into a matrix block.
    `MatrixBlock` | Connection.`convertToMatrix(String input, int rows, int cols)` Converts an input string representation of a matrix in textcell format into a matrix block.
    `MatrixBlock` | Connection.`convertToMatrix(String input, String meta)` Converts an input string representation of a matrix in csv or textcell format into a matrix block.
    `MatrixBlock` | ResultVariables.`getMatrixBlock(String varname)` Obtain the matrix represented by the given output variable.

    Methods in org.apache.sysds.api.jmlc with parameters of type MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `void` | PreparedScript.`setMatrix(String varname, MatrixBlock matrix, boolean reuse)` Binds a matrix object to a registered input variable.

  - ### Uses of MatrixBlock in org.apache.sysds.api.mlcontext

    Methods in org.apache.sysds.api.mlcontext that return MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `static MatrixBlock` | MLContextConversionUtil.`binaryBlocksToMatrixBlock(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> binaryBlocks, MatrixMetadata matrixMetadata)` Convert a `JavaPairRDD<MatrixIndexes, MatrixBlock>` to a `MatrixBlock`
    `MatrixBlock` | Matrix.`toMatrixBlock()` Obtain the matrix as a `MatrixBlock`

    Methods in org.apache.sysds.api.mlcontext that return types with arguments of type MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | MLContextConversionUtil.`dataFrameToMatrixBinaryBlocks(org.apache.spark.sql.Dataset<org.apache.spark.sql.Row> dataFrame)` Convert a `DataFrame` to a `JavaPairRDD<MatrixIndexes, MatrixBlock>` binary-block matrix.
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | MLContextConversionUtil.`dataFrameToMatrixBinaryBlocks(org.apache.spark.sql.Dataset<org.apache.spark.sql.Row> dataFrame, MatrixMetadata matrixMetadata)` Convert a `DataFrame` to a `JavaPairRDD<MatrixIndexes, MatrixBlock>` binary-block matrix.
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | MLContextConversionUtil.`matrixObjectToBinaryBlocks(MatrixObject matrixObject, SparkExecutionContext sparkExecutionContext)` Convert a `MatrixObject` to a `JavaPairRDD<MatrixIndexes, MatrixBlock>`.
    `org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | Matrix.`toBinaryBlocks()` Obtain the matrix as a `JavaPairRDD<MatrixIndexes, MatrixBlock>`

    Methods in org.apache.sysds.api.mlcontext with parameters of type MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `static MatrixObject` | MLContextConversionUtil.`matrixBlockToMatrixObject(String variableName, MatrixBlock matrixBlock, MatrixMetadata matrixMetadata)` Convert a `MatrixBlock` to a `MatrixObject`.

    Method parameters in org.apache.sysds.api.mlcontext with type arguments of type MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `static MatrixBlock` | MLContextConversionUtil.`binaryBlocksToMatrixBlock(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> binaryBlocks, MatrixMetadata matrixMetadata)` Convert a `JavaPairRDD<MatrixIndexes, MatrixBlock>` to a `MatrixBlock`
    `static MatrixObject` | MLContextConversionUtil.`binaryBlocksToMatrixObject(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> binaryBlocks)` Convert a `JavaPairRDD<MatrixIndexes, MatrixBlock>` to a `MatrixObject`.
    `static MatrixObject` | MLContextConversionUtil.`binaryBlocksToMatrixObject(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> binaryBlocks, MatrixMetadata matrixMetadata)` Convert a `JavaPairRDD<MatrixIndexes, MatrixBlock>` to a `MatrixObject`.

    Constructor parameters in org.apache.sysds.api.mlcontext with type arguments of type MatrixBlock
    Constructor and Description
    `Matrix(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> binaryBlocks, MatrixMetadata matrixMetadata)` Create a Matrix, specifying the SystemDS binary-block matrix and its metadata.

  - ### Uses of MatrixBlock in org.apache.sysds.hops.estim

    Methods in org.apache.sysds.hops.estim that return MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `MatrixBlock` | MMNode.`getData()`
    `MatrixBlock` | EstimatorDensityMap.DensityMap.`getMap()`

    Methods in org.apache.sysds.hops.estim with parameters of type MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `void` | EstimatorLayeredGraph.LayeredGraph.`buildNext(MatrixBlock mb)`
    `static EstimatorBitsetMM.BitsetMatrix` | EstimatorBitsetMM.`createBitset(MatrixBlock in)`
    `double` | EstimatorBitsetMM.`estim(MatrixBlock m1, MatrixBlock m2)`
    `double` | EstimatorMatrixHistogram.`estim(MatrixBlock m1, MatrixBlock m2)`
    `double` | EstimatorDensityMap.`estim(MatrixBlock m1, MatrixBlock m2)`
    `double` | EstimatorSample.`estim(MatrixBlock m1, MatrixBlock m2)`
    `double` | EstimatorBasicWorst.`estim(MatrixBlock m1, MatrixBlock m2)`
    `double` | EstimatorBasicAvg.`estim(MatrixBlock m1, MatrixBlock m2)`
    `double` | EstimatorLayeredGraph.`estim(MatrixBlock m1, MatrixBlock m2)`
    `double` | EstimatorSampleRa.`estim(MatrixBlock m1, MatrixBlock m2)`
    `abstract double` | SparsityEstimator.`estim(MatrixBlock m1, MatrixBlock m2)` Estimates the output sparsity for a single matrix multiplication.
    `double` | EstimatorBitsetMM.`estim(MatrixBlock m1, MatrixBlock m2, SparsityEstimator.OpCode op)`
    `double` | EstimatorMatrixHistogram.`estim(MatrixBlock m1, MatrixBlock m2, SparsityEstimator.OpCode op)`
    `double` | EstimatorDensityMap.`estim(MatrixBlock m1, MatrixBlock m2, SparsityEstimator.OpCode op)`
    `double` | EstimatorSample.`estim(MatrixBlock m1, MatrixBlock m2, SparsityEstimator.OpCode op)`
    `double` | EstimatorBasicWorst.`estim(MatrixBlock m1, MatrixBlock m2, SparsityEstimator.OpCode op)`
    `double` | EstimatorBasicAvg.`estim(MatrixBlock m1, MatrixBlock m2, SparsityEstimator.OpCode op)`
    `double` | EstimatorLayeredGraph.`estim(MatrixBlock m1, MatrixBlock m2, SparsityEstimator.OpCode op)`
    `double` | EstimatorSampleRa.`estim(MatrixBlock m1, MatrixBlock m2, SparsityEstimator.OpCode op)`
    `abstract double` | SparsityEstimator.`estim(MatrixBlock m1, MatrixBlock m2, SparsityEstimator.OpCode op)` Estimates the output sparsity for a given binary operation.
    `double` | EstimatorBitsetMM.`estim(MatrixBlock m, SparsityEstimator.OpCode op)`
    `double` | EstimatorMatrixHistogram.`estim(MatrixBlock m1, SparsityEstimator.OpCode op)`
    `double` | EstimatorDensityMap.`estim(MatrixBlock m, SparsityEstimator.OpCode op)`
    `double` | EstimatorSample.`estim(MatrixBlock m, SparsityEstimator.OpCode op)`
    `double` | EstimatorBasicWorst.`estim(MatrixBlock m, SparsityEstimator.OpCode op)`
    `double` | EstimatorBasicAvg.`estim(MatrixBlock m, SparsityEstimator.OpCode op)`
    `double` | EstimatorLayeredGraph.`estim(MatrixBlock m, SparsityEstimator.OpCode op)`
    `double` | EstimatorSampleRa.`estim(MatrixBlock m, SparsityEstimator.OpCode op)`
    `abstract double` | SparsityEstimator.`estim(MatrixBlock m, SparsityEstimator.OpCode op)` Estimates the output sparsity for a given unary operation.
    `static long` | EstimationUtils.`getSelfProductOutputNnz(MatrixBlock m1)` This utility function computes the exact output nnz of a self matrix product without need to materialize the output.
    `static long` | EstimationUtils.`getSparseProductOutputNnz(MatrixBlock m1, MatrixBlock m2)`
    `void` | EstimatorMatrixHistogram.MatrixHistogram.`setData(MatrixBlock mb)`

    Constructors in org.apache.sysds.hops.estim with parameters of type MatrixBlock
    Constructor and Description
    `BitsetMatrix1(MatrixBlock in)`
    `BitsetMatrix2(MatrixBlock in)`
    `DensityMap(MatrixBlock in, int b)`
    `DensityMap(MatrixBlock map, int rlenOrig, int clenOrig, int b, boolean scaled)`
    `MatrixHistogram(MatrixBlock in, boolean useExcepts)`
    `MMNode(MatrixBlock in)`

    Constructor parameters in org.apache.sysds.hops.estim with type arguments of type MatrixBlock
    Constructor and Description
    `LayeredGraph(List<MatrixBlock> chain, int r)`

  - ### Uses of MatrixBlock in org.apache.sysds.hops.rewrite

    Methods in org.apache.sysds.hops.rewrite with parameters of type MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `static void` | HopRewriteUtils.`copyLineNumbers(MatrixBlock mb, Hop tread)`
    `static DataOp` | HopRewriteUtils.`createTransientRead(String name, MatrixBlock mb)`

  - ### Uses of MatrixBlock in org.apache.sysds.runtime.codegen

    Fields in org.apache.sysds.runtime.codegen declared as MatrixBlock
    Modifier and Type | Field and Description
    --- | ---
    `MatrixBlock` | SpoofOperator.SideInput.`mdat`

    Methods in org.apache.sysds.runtime.codegen that return MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `abstract MatrixBlock` | SpoofOperator.`execute(ArrayList<MatrixBlock> inputs, ArrayList<ScalarObject> scalars, MatrixBlock out)`
    `MatrixBlock` | SpoofOuterProduct.`execute(ArrayList<MatrixBlock> inputs, ArrayList<ScalarObject> scalarObjects, MatrixBlock out)`
    `MatrixBlock` | SpoofRowwise.`execute(ArrayList<MatrixBlock> inputs, ArrayList<ScalarObject> scalarObjects, MatrixBlock out)`
    `MatrixBlock` | SpoofCellwise.`execute(ArrayList<MatrixBlock> inputs, ArrayList<ScalarObject> scalarObjects, MatrixBlock out)`
    `MatrixBlock` | SpoofMultiAggregate.`execute(ArrayList<MatrixBlock> inputs, ArrayList<ScalarObject> scalarObjects, MatrixBlock out)`
    `MatrixBlock` | SpoofRowwise.`execute(ArrayList<MatrixBlock> inputs, ArrayList<ScalarObject> scalarObjects, MatrixBlock out, boolean allocTmp, boolean aggIncr, long rix)`
    `MatrixBlock` | SpoofOperator.`execute(ArrayList<MatrixBlock> inputs, ArrayList<ScalarObject> scalars, MatrixBlock out, int k)`
    `MatrixBlock` | SpoofOuterProduct.`execute(ArrayList<MatrixBlock> inputs, ArrayList<ScalarObject> scalarObjects, MatrixBlock out, int numThreads)`
    `MatrixBlock` | SpoofRowwise.`execute(ArrayList<MatrixBlock> inputs, ArrayList<ScalarObject> scalarObjects, MatrixBlock out, int k)`
    `MatrixBlock` | SpoofCellwise.`execute(ArrayList<MatrixBlock> inputs, ArrayList<ScalarObject> scalarObjects, MatrixBlock out, int k)`
    `MatrixBlock` | SpoofMultiAggregate.`execute(ArrayList<MatrixBlock> inputs, ArrayList<ScalarObject> scalarObjects, MatrixBlock out, int k)`
    `MatrixBlock` | SpoofCellwise.`execute(ArrayList<MatrixBlock> inputs, ArrayList<ScalarObject> scalarObjects, MatrixBlock out, int k, long rix)`
    `MatrixBlock` | SpoofMultiAggregate.`execute(ArrayList<MatrixBlock> inputs, ArrayList<ScalarObject> scalarObjects, MatrixBlock out, int k, long rix)`

    Methods in org.apache.sysds.runtime.codegen with parameters of type MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `static void` | SpoofMultiAggregate.`aggregatePartialResults(SpoofCellwise.AggOp[] aggOps, MatrixBlock c, MatrixBlock b)`
    `static SpoofOperator.SideInput` | CodegenUtils.`createSideInput(MatrixBlock in)`
    `abstract MatrixBlock` | SpoofOperator.`execute(ArrayList<MatrixBlock> inputs, ArrayList<ScalarObject> scalars, MatrixBlock out)`
    `MatrixBlock` | SpoofOuterProduct.`execute(ArrayList<MatrixBlock> inputs, ArrayList<ScalarObject> scalarObjects, MatrixBlock out)`
    `MatrixBlock` | SpoofRowwise.`execute(ArrayList<MatrixBlock> inputs, ArrayList<ScalarObject> scalarObjects, MatrixBlock out)`
    `MatrixBlock` | SpoofCellwise.`execute(ArrayList<MatrixBlock> inputs, ArrayList<ScalarObject> scalarObjects, MatrixBlock out)`
    `MatrixBlock` | SpoofMultiAggregate.`execute(ArrayList<MatrixBlock> inputs, ArrayList<ScalarObject> scalarObjects, MatrixBlock out)`
    `MatrixBlock` | SpoofRowwise.`execute(ArrayList<MatrixBlock> inputs, ArrayList<ScalarObject> scalarObjects, MatrixBlock out, boolean allocTmp, boolean aggIncr, long rix)`
    `MatrixBlock` | SpoofOperator.`execute(ArrayList<MatrixBlock> inputs, ArrayList<ScalarObject> scalars, MatrixBlock out, int k)`
    `MatrixBlock` | SpoofOuterProduct.`execute(ArrayList<MatrixBlock> inputs, ArrayList<ScalarObject> scalarObjects, MatrixBlock out, int numThreads)`
    `MatrixBlock` | SpoofRowwise.`execute(ArrayList<MatrixBlock> inputs, ArrayList<ScalarObject> scalarObjects, MatrixBlock out, int k)`
    `MatrixBlock` | SpoofCellwise.`execute(ArrayList<MatrixBlock> inputs, ArrayList<ScalarObject> scalarObjects, MatrixBlock out, int k)`
    `MatrixBlock` | SpoofMultiAggregate.`execute(ArrayList<MatrixBlock> inputs, ArrayList<ScalarObject> scalarObjects, MatrixBlock out, int k)`
    `MatrixBlock` | SpoofCellwise.`execute(ArrayList<MatrixBlock> inputs, ArrayList<ScalarObject> scalarObjects, MatrixBlock out, int k, long rix)`
    `MatrixBlock` | SpoofMultiAggregate.`execute(ArrayList<MatrixBlock> inputs, ArrayList<ScalarObject> scalarObjects, MatrixBlock out, int k, long rix)`

    Method parameters in org.apache.sysds.runtime.codegen with type arguments of type MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `ScalarObject` | SpoofOperator.`execute(ArrayList<MatrixBlock> inputs, ArrayList<ScalarObject> scalars)`
    `ScalarObject` | SpoofOuterProduct.`execute(ArrayList<MatrixBlock> inputs, ArrayList<ScalarObject> scalarObjects)`
    `ScalarObject` | SpoofOperator.`execute(ArrayList<MatrixBlock> inputs, ArrayList<ScalarObject> scalars, int k)`
    `ScalarObject` | SpoofOuterProduct.`execute(ArrayList<MatrixBlock> inputs, ArrayList<ScalarObject> scalarObjects, int numThreads)`
    `ScalarObject` | SpoofRowwise.`execute(ArrayList<MatrixBlock> inputs, ArrayList<ScalarObject> scalarObjects, int k)`
    `ScalarObject` | SpoofCellwise.`execute(ArrayList<MatrixBlock> inputs, ArrayList<ScalarObject> scalarObjects, int k)`
    `ScalarObject` | SpoofCellwise.`execute(ArrayList<MatrixBlock> inputs, ArrayList<ScalarObject> scalarObjects, int k, long rix)`
    `abstract MatrixBlock` | SpoofOperator.`execute(ArrayList<MatrixBlock> inputs, ArrayList<ScalarObject> scalars, MatrixBlock out)`
    `MatrixBlock` | SpoofOuterProduct.`execute(ArrayList<MatrixBlock> inputs, ArrayList<ScalarObject> scalarObjects, MatrixBlock out)`
    `MatrixBlock` | SpoofRowwise.`execute(ArrayList<MatrixBlock> inputs, ArrayList<ScalarObject> scalarObjects, MatrixBlock out)`
    `MatrixBlock` | SpoofCellwise.`execute(ArrayList<MatrixBlock> inputs, ArrayList<ScalarObject> scalarObjects, MatrixBlock out)`
    `MatrixBlock` | SpoofMultiAggregate.`execute(ArrayList<MatrixBlock> inputs, ArrayList<ScalarObject> scalarObjects, MatrixBlock out)`
    `MatrixBlock` | SpoofRowwise.`execute(ArrayList<MatrixBlock> inputs, ArrayList<ScalarObject> scalarObjects, MatrixBlock out, boolean allocTmp, boolean aggIncr, long rix)`
    `MatrixBlock` | SpoofOperator.`execute(ArrayList<MatrixBlock> inputs, ArrayList<ScalarObject> scalars, MatrixBlock out, int k)`
    `MatrixBlock` | SpoofOuterProduct.`execute(ArrayList<MatrixBlock> inputs, ArrayList<ScalarObject> scalarObjects, MatrixBlock out, int numThreads)`
    `MatrixBlock` | SpoofRowwise.`execute(ArrayList<MatrixBlock> inputs, ArrayList<ScalarObject> scalarObjects, MatrixBlock out, int k)`
    `MatrixBlock` | SpoofCellwise.`execute(ArrayList<MatrixBlock> inputs, ArrayList<ScalarObject> scalarObjects, MatrixBlock out, int k)`
    `MatrixBlock` | SpoofMultiAggregate.`execute(ArrayList<MatrixBlock> inputs, ArrayList<ScalarObject> scalarObjects, MatrixBlock out, int k)`
    `MatrixBlock` | SpoofCellwise.`execute(ArrayList<MatrixBlock> inputs, ArrayList<ScalarObject> scalarObjects, MatrixBlock out, int k, long rix)`
    `MatrixBlock` | SpoofMultiAggregate.`execute(ArrayList<MatrixBlock> inputs, ArrayList<ScalarObject> scalarObjects, MatrixBlock out, int k, long rix)`
    `static long` | SpoofOperator.`getTotalInputNnz(ArrayList<MatrixBlock> inputs)`
    `static long` | SpoofOperator.`getTotalInputSize(ArrayList<MatrixBlock> inputs)`
    `static boolean` | SpoofRowwise.`hasMatrixSideInput(ArrayList<MatrixBlock> inputs)`

    Constructors in org.apache.sysds.runtime.codegen with parameters of type MatrixBlock
    Constructor and Description
    `SideInput(DenseBlock ddata, MatrixBlock mdata, int clength)`

  - ### Uses of MatrixBlock in org.apache.sysds.runtime.compress

    Subclasses of MatrixBlock in org.apache.sysds.runtime.compress
    Modifier and Type | Class and Description
    --- | ---
    `class` | `CompressedMatrixBlock`

    Methods in org.apache.sysds.runtime.compress that return MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `MatrixBlock` | CompressedMatrixBlock.`aggregateBinaryOperations(MatrixBlock m1, MatrixBlock m2, MatrixBlock ret, AggregateBinaryOperator op)`
    `MatrixBlock` | CompressedMatrixBlock.`aggregateBinaryOperations(MatrixBlock m1, MatrixBlock m2, MatrixBlock ret, AggregateBinaryOperator op, boolean transposeLeft, boolean transposeRight)`
    `MatrixBlock` | CompressedMatrixBlock.`aggregateBinaryOperations(MatrixIndexes m1Index, MatrixBlock m1Value, MatrixIndexes m2Index, MatrixBlock m2Value, MatrixBlock result, AggregateBinaryOperator op)`
    `MatrixBlock` | CompressedMatrixBlock.`aggregateTernaryOperations(MatrixBlock m1, MatrixBlock m2, MatrixBlock m3, MatrixBlock ret, AggregateTernaryOperator op, boolean inCP)`
    `MatrixBlock` | CompressedMatrixBlock.`aggregateUnaryOperations(AggregateUnaryOperator op, MatrixValue result, int blen, MatrixIndexes indexesIn)`
    `MatrixBlock` | CompressedMatrixBlock.`aggregateUnaryOperations(AggregateUnaryOperator op, MatrixValue result, int blen, MatrixIndexes indexesIn, boolean inCP)`
    `MatrixBlock` | CompressedMatrixBlock.`append(MatrixBlock that, MatrixBlock ret)`
    `MatrixBlock` | CompressedMatrixBlock.`append(MatrixBlock that, MatrixBlock ret, boolean cbind)`
    `MatrixBlock` | CompressedMatrixBlock.`binaryOperations(BinaryOperator op, MatrixValue thatValue, MatrixValue result)`
    `MatrixBlock` | CompressedMatrixBlock.`binaryOperationsInPlace(BinaryOperator op, MatrixValue thatValue)`
    `MatrixBlock` | CompressedMatrixBlock.`binaryOperationsLeft(BinaryOperator op, MatrixValue thatValue, MatrixValue result)`
    `MatrixBlock` | CompressedMatrixBlock.`chainMatrixMultOperations(MatrixBlock v, MatrixBlock w, MatrixBlock out, MapMultChain.ChainType ctype)`
    `MatrixBlock` | CompressedMatrixBlock.`chainMatrixMultOperations(MatrixBlock v, MatrixBlock w, MatrixBlock out, MapMultChain.ChainType ctype, int k)`
    `MatrixBlock` | CompressedMatrixBlock.`ctableSeqOperations(MatrixValue that, double scalar, MatrixBlock resultBlock)`
    `MatrixBlock` | CompressedMatrixBlock.`decompress()` Decompress block.
    `MatrixBlock` | CompressedMatrixBlock.`decompress(int k)` Decompress block.
    `MatrixBlock` | CompressedMatrixBlock.`decompress(MatrixBlock ret, int k)`
    `MatrixBlock` | CompressedMatrixBlock.`getUncompressed()`
    `static MatrixBlock` | CompressedMatrixBlock.`getUncompressed(MatrixValue mVal)`
    `MatrixBlock` | CompressedMatrixBlock.`groupedAggOperations(MatrixValue tgt, MatrixValue wghts, MatrixValue ret, int ngroups, Operator op)`
    `MatrixBlock` | CompressedMatrixBlock.`groupedAggOperations(MatrixValue tgt, MatrixValue wghts, MatrixValue ret, int ngroups, Operator op, int k)`
    `MatrixBlock` | CompressedMatrixBlock.`leftIndexingOperations(MatrixBlock rhsMatrix, int rl, int ru, int cl, int cu, MatrixBlock ret, MatrixObject.UpdateType update)`
    `MatrixBlock` | CompressedMatrixBlock.`leftIndexingOperations(ScalarObject scalar, int rl, int cl, MatrixBlock ret, MatrixObject.UpdateType update)`
    `MatrixBlock` | CompressedMatrixBlock.`quaternaryOperations(QuaternaryOperator qop, MatrixBlock um, MatrixBlock vm, MatrixBlock wm, MatrixBlock out)`
    `MatrixBlock` | CompressedMatrixBlock.`quaternaryOperations(QuaternaryOperator qop, MatrixBlock um, MatrixBlock vm, MatrixBlock wm, MatrixBlock out, int k)`
    `MatrixBlock` | CompressedMatrixBlock.`randOperationsInPlace(RandomMatrixGenerator rgen, org.apache.commons.math3.random.Well1024a bigrand, long bSeed)`
    `MatrixBlock` | CompressedMatrixBlock.`randOperationsInPlace(RandomMatrixGenerator rgen, org.apache.commons.math3.random.Well1024a bigrand, long bSeed, int k)`
    `MatrixBlock` | CompressedMatrixBlock.`removeEmptyOperations(MatrixBlock ret, boolean rows, boolean emptyReturn)`
    `MatrixBlock` | CompressedMatrixBlock.`removeEmptyOperations(MatrixBlock ret, boolean rows, boolean emptyReturn, MatrixBlock select)`
    `MatrixBlock` | CompressedMatrixBlock.`reorgOperations(ReorgOperator op, MatrixValue ret, int startRow, int startColumn, int length)`
    `MatrixBlock` | CompressedMatrixBlock.`replaceOperations(MatrixValue result, double pattern, double replacement)`
    `MatrixBlock` | CompressedMatrixBlock.`rexpandOperations(MatrixBlock ret, double max, boolean rows, boolean cast, boolean ignore, int k)`
    `MatrixBlock` | CompressedMatrixBlock.`scalarOperations(ScalarOperator sop, MatrixValue result)`
    `MatrixBlock` | CompressedMatrixBlock.`seqOperationsInPlace(double from, double to, double incr)`
    `MatrixBlock` | CompressedMatrixBlock.`slice(int rl, int ru, int cl, int cu, boolean deep, CacheBlock ret)`
    `MatrixBlock` | CompressedMatrixBlock.`sortOperations(MatrixValue weights, MatrixBlock result)`
    `MatrixBlock` | CompressedMatrixBlock.`ternaryOperations(TernaryOperator op, MatrixBlock m2, MatrixBlock m3, MatrixBlock ret)`
    `MatrixBlock` | CompressedMatrixBlock.`transposeSelfMatrixMultOperations(MatrixBlock out, MMTSJ.MMTSJType tstype)`
    `MatrixBlock` | CompressedMatrixBlock.`transposeSelfMatrixMultOperations(MatrixBlock out, MMTSJ.MMTSJType tstype, int k)`
    `MatrixBlock` | CompressedMatrixBlock.`uaggouterchainOperations(MatrixBlock mbLeft, MatrixBlock mbRight, MatrixBlock mbOut, BinaryOperator bOp, AggregateUnaryOperator uaggOp)`
    `MatrixBlock` | CompressedMatrixBlock.`unaryOperations(UnaryOperator op, MatrixValue result)`
    `MatrixBlock` | CompressedMatrixBlock.`zeroOutOperations(MatrixValue result, IndexRange range, boolean complementary)`

    Methods in org.apache.sysds.runtime.compress that return types with arguments of type MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `static org.apache.commons.lang3.tuple.Pair<MatrixBlock,CompressionStatistics>` | CompressedMatrixBlockFactory.`compress(MatrixBlock mb)` Default sequential compression with no parallelization
    `static org.apache.commons.lang3.tuple.Pair<MatrixBlock,CompressionStatistics>` | CompressedMatrixBlockFactory.`compress(MatrixBlock mb, CompressionSettings customSettings)`
    `static org.apache.commons.lang3.tuple.Pair<MatrixBlock,CompressionStatistics>` | CompressedMatrixBlockFactory.`compress(MatrixBlock mb, int k)`
    `static org.apache.commons.lang3.tuple.Pair<MatrixBlock,CompressionStatistics>` | CompressedMatrixBlockFactory.`compress(MatrixBlock mb, int k, CompressionSettings compSettings)` The main method for compressing the input matrix.

    Methods in org.apache.sysds.runtime.compress with parameters of type MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `MatrixBlock` | CompressedMatrixBlock.`aggregateBinaryOperations(MatrixBlock m1, MatrixBlock m2, MatrixBlock ret, AggregateBinaryOperator op)`
    `MatrixBlock` | CompressedMatrixBlock.`aggregateBinaryOperations(MatrixBlock m1, MatrixBlock m2, MatrixBlock ret, AggregateBinaryOperator op, boolean transposeLeft, boolean transposeRight)`
    `MatrixBlock` | CompressedMatrixBlock.`aggregateBinaryOperations(MatrixIndexes m1Index, MatrixBlock m1Value, MatrixIndexes m2Index, MatrixBlock m2Value, MatrixBlock result, AggregateBinaryOperator op)`
    `MatrixBlock` | CompressedMatrixBlock.`aggregateTernaryOperations(MatrixBlock m1, MatrixBlock m2, MatrixBlock m3, MatrixBlock ret, AggregateTernaryOperator op, boolean inCP)`
    `MatrixBlock` | CompressedMatrixBlock.`append(MatrixBlock that, MatrixBlock ret)`
    `MatrixBlock` | CompressedMatrixBlock.`append(MatrixBlock that, MatrixBlock ret, boolean cbind)`
    `MatrixBlock` | CompressedMatrixBlock.`chainMatrixMultOperations(MatrixBlock v, MatrixBlock w, MatrixBlock out, MapMultChain.ChainType ctype)`
    `MatrixBlock` | CompressedMatrixBlock.`chainMatrixMultOperations(MatrixBlock v, MatrixBlock w, MatrixBlock out, MapMultChain.ChainType ctype, int k)`
    `CM_COV_Object` | CompressedMatrixBlock.`cmOperations(CMOperator op, MatrixBlock weights)`
    `static org.apache.commons.lang3.tuple.Pair<MatrixBlock,CompressionStatistics>` | CompressedMatrixBlockFactory.`compress(MatrixBlock mb)` Default sequential compression with no parallelization
    `static org.apache.commons.lang3.tuple.Pair<MatrixBlock,CompressionStatistics>` | CompressedMatrixBlockFactory.`compress(MatrixBlock mb, CompressionSettings customSettings)`
    `static org.apache.commons.lang3.tuple.Pair<MatrixBlock,CompressionStatistics>` | CompressedMatrixBlockFactory.`compress(MatrixBlock mb, int k)`
    `static org.apache.commons.lang3.tuple.Pair<MatrixBlock,CompressionStatistics>` | CompressedMatrixBlockFactory.`compress(MatrixBlock mb, int k, CompressionSettings compSettings)` The main method for compressing the input matrix.
    `CM_COV_Object` | CompressedMatrixBlock.`covOperations(COVOperator op, MatrixBlock that)`
    `CM_COV_Object` | CompressedMatrixBlock.`covOperations(COVOperator op, MatrixBlock that, MatrixBlock weights)`
    `void` | CompressedMatrixBlock.`ctableOperations(Operator op, double scalar, double scalar2, CTableMap resultMap, MatrixBlock resultBlock)`
    `void` | CompressedMatrixBlock.`ctableOperations(Operator op, double scalar, MatrixValue that, CTableMap resultMap, MatrixBlock resultBlock)`
    `void` | CompressedMatrixBlock.`ctableOperations(Operator op, MatrixIndexes ix1, double scalar, boolean left, int brlen, CTableMap resultMap, MatrixBlock resultBlock)`
    `void` | CompressedMatrixBlock.`ctableOperations(Operator op, MatrixValue that, double scalar, boolean ignoreZeros, CTableMap resultMap, MatrixBlock resultBlock)`
    `void` | CompressedMatrixBlock.`ctableOperations(Operator op, MatrixValue that, MatrixValue that2, CTableMap resultMap, MatrixBlock resultBlock)`
    `MatrixBlock` | CompressedMatrixBlock.`ctableSeqOperations(MatrixValue that, double scalar, MatrixBlock resultBlock)`
    `MatrixBlock` | CompressedMatrixBlock.`decompress(MatrixBlock ret, int k)`
    `MatrixBlock` | CompressedMatrixBlock.`leftIndexingOperations(MatrixBlock rhsMatrix, int rl, int ru, int cl, int cu, MatrixBlock ret, MatrixObject.UpdateType update)`
    `MatrixBlock` | CompressedMatrixBlock.`leftIndexingOperations(ScalarObject scalar, int rl, int cl, MatrixBlock ret, MatrixObject.UpdateType update)`
    `MatrixBlock` | CompressedMatrixBlock.`quaternaryOperations(QuaternaryOperator qop, MatrixBlock um, MatrixBlock vm, MatrixBlock wm, MatrixBlock out)`
    `MatrixBlock` | CompressedMatrixBlock.`quaternaryOperations(QuaternaryOperator qop, MatrixBlock um, MatrixBlock vm, MatrixBlock wm, MatrixBlock out, int k)`
    `MatrixBlock` | CompressedMatrixBlock.`removeEmptyOperations(MatrixBlock ret, boolean rows, boolean emptyReturn)`
    `MatrixBlock` | CompressedMatrixBlock.`removeEmptyOperations(MatrixBlock ret, boolean rows, boolean emptyReturn, MatrixBlock select)`
    `MatrixBlock` | CompressedMatrixBlock.`rexpandOperations(MatrixBlock ret, double max, boolean rows, boolean cast, boolean ignore, int k)`
    `MatrixBlock` | CompressedMatrixBlock.`sortOperations(MatrixValue weights, MatrixBlock result)`
    `MatrixBlock` | CompressedMatrixBlock.`ternaryOperations(TernaryOperator op, MatrixBlock m2, MatrixBlock m3, MatrixBlock ret)`
    `MatrixBlock` | CompressedMatrixBlock.`transposeSelfMatrixMultOperations(MatrixBlock out, MMTSJ.MMTSJType tstype)`
    `MatrixBlock` | CompressedMatrixBlock.`transposeSelfMatrixMultOperations(MatrixBlock out, MMTSJ.MMTSJType tstype, int k)`
    `MatrixBlock` | CompressedMatrixBlock.`uaggouterchainOperations(MatrixBlock mbLeft, MatrixBlock mbRight, MatrixBlock mbOut, BinaryOperator bOp, AggregateUnaryOperator uaggOp)`

  - ### Uses of MatrixBlock in org.apache.sysds.runtime.compress.colgroup

    Methods in org.apache.sysds.runtime.compress.colgroup that return MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `MatrixBlock` | ColGroupUncompressed.`getData()` Access for superclass
    `MatrixBlock` | ColGroupEmpty.`getValuesAsBlock()`
    `MatrixBlock` | ColGroupUncompressed.`getValuesAsBlock()`
    `abstract MatrixBlock` | AColGroup.`getValuesAsBlock()` Returns the ColGroup as a MatrixBlock.
    `MatrixBlock` | ColGroupValue.`getValuesAsBlock()`

    Methods in org.apache.sysds.runtime.compress.colgroup with parameters of type MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `static AColGroup` | ColGroupFactory.`compress(int[] colIndexes, int rlen, ABitmap ubm, AColGroup.CompressionType compType, CompressionSettings cs, MatrixBlock rawMatrixBlock, double tupleSparsity)` Method for compressing an ColGroup.
    `static List<AColGroup>` | ColGroupFactory.`compressColGroups(MatrixBlock in, CompressedSizeInfo csi, CompressionSettings compSettings, int k)` The actual compression method, that handles the logic of compressing multiple columns together.
    `static void` | AColGroup.`decompressColumnToBlockUnSafe(MatrixBlock target, int rl, int ru, List<AColGroup> colGroups)` Decompress part of the col groups into the target matrix block, this decompression maintain the number of non zeros.
    `void` | ColGroupEmpty.`decompressToBlockSafe(MatrixBlock target, int rl, int ru, int offT)`
    `void` | ColGroupUncompressed.`decompressToBlockSafe(MatrixBlock target, int rl, int ru, int offT)`
    `abstract void` | AColGroup.`decompressToBlockSafe(MatrixBlock target, int rl, int ru, int offT)` Decompress the contents of this column group into the specified full matrix block while managing the number of non zeros.
    `void` | ColGroupValue.`decompressToBlockSafe(MatrixBlock target, int rl, int ru, int offT)`
    `void` | AColGroup.`decompressToBlockUnSafe(MatrixBlock target, int rl, int ru)` Decompress the contents of the columngroup unsafely, meaning that it does not count nonzero values.
    `void` | ColGroupEmpty.`decompressToBlockUnSafe(MatrixBlock target, int rl, int ru, int offT)`
    `void` | ColGroupUncompressed.`decompressToBlockUnSafe(MatrixBlock target, int rl, int ru, int offT)`
    `abstract void` | AColGroup.`decompressToBlockUnSafe(MatrixBlock target, int rl, int ru, int offT)` Decompress the contents of the columngroup unsafely, meaning that it does not count nonzero values.
    `void` | ColGroupValue.`decompressToBlockUnSafe(MatrixBlock target, int rl, int ru, int offT)`
    `void` | ColGroupEmpty.`leftMultByAColGroup(AColGroup lhs, MatrixBlock c)`
    `void` | ColGroupUncompressed.`leftMultByAColGroup(AColGroup lhs, MatrixBlock result)`
    `abstract void` | AColGroup.`leftMultByAColGroup(AColGroup lhs, MatrixBlock result)` Left side matrix multiplication with a column group that is transposed.
    `void` | ColGroupValue.`leftMultByAColGroup(AColGroup lhs, MatrixBlock result)`
    `void` | AColGroup.`leftMultByMatrix(MatrixBlock matrix, MatrixBlock result)` Left multiply with this column group
    `void` | ColGroupEmpty.`leftMultByMatrix(MatrixBlock a, MatrixBlock c, int rl, int ru)`
    `void` | ColGroupUncompressed.`leftMultByMatrix(MatrixBlock matrix, MatrixBlock result, int rl, int ru)`
    `abstract void` | AColGroup.`leftMultByMatrix(MatrixBlock matrix, MatrixBlock result, int rl, int ru)` Left multiply with this column group.
    `void` | ColGroupValue.`leftMultByMatrix(MatrixBlock matrix, MatrixBlock result, int rl, int ru)` Multiply with a matrix on the left.
    `void` | ColGroupRLE.`preAggregate(MatrixBlock m, MatrixBlock preAgg, int rl, int ru)`
    `void` | ColGroupSDC.`preAggregate(MatrixBlock m, MatrixBlock preAgg, int rl, int ru)`
    `AColGroup` | ColGroupEmpty.`rightMultByMatrix(MatrixBlock right)`
    `AColGroup` | ColGroupUncompressed.`rightMultByMatrix(MatrixBlock right)`
    `abstract AColGroup` | AColGroup.`rightMultByMatrix(MatrixBlock right)` Right matrix multiplication with this column group.
    `AColGroup` | ColGroupValue.`rightMultByMatrix(MatrixBlock right)`

    Constructors in org.apache.sysds.runtime.compress.colgroup with parameters of type MatrixBlock
    Constructor and Description
    `ColGroupUncompressed(int[] colIndicesList, MatrixBlock rawBlock, boolean transposed)` Main constructor for Uncompressed ColGroup.

  - ### Uses of MatrixBlock in org.apache.sysds.runtime.compress.colgroup.dictionary

    Methods in org.apache.sysds.runtime.compress.colgroup.dictionary that return MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `MatrixBlock` | MatrixBlockDictionary.`getMatrixBlock()`

    Constructors in org.apache.sysds.runtime.compress.colgroup.dictionary with parameters of type MatrixBlock
    Constructor and Description
    `MatrixBlockDictionary(MatrixBlock data)`

  - ### Uses of MatrixBlock in org.apache.sysds.runtime.compress.estim

    Methods in org.apache.sysds.runtime.compress.estim that return MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `MatrixBlock` | CompressedSizeEstimatorSample.`getSample()`
    `MatrixBlock` | CompressedSizeEstimatorSample.`sampleData(int sampleSize)`

    Methods in org.apache.sysds.runtime.compress.estim with parameters of type MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `static CompressedSizeEstimator` | CompressedSizeEstimatorFactory.`getSizeEstimator(MatrixBlock data, CompressionSettings cs)`

    Constructors in org.apache.sysds.runtime.compress.estim with parameters of type MatrixBlock
    Constructor and Description
    `CompressedSizeEstimatorExact(MatrixBlock data, CompressionSettings compSettings)`
    `CompressedSizeEstimatorSample(MatrixBlock data, CompressionSettings cs, int sampleSize)` CompressedSizeEstimatorSample, samples from the input data and estimates the size of the compressed matrix.

  - ### Uses of MatrixBlock in org.apache.sysds.runtime.compress.lib

    Methods in org.apache.sysds.runtime.compress.lib that return MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `static MatrixBlock` | CLALibCompAgg.`aggregateUnary(CompressedMatrixBlock inputMatrix, MatrixBlock outputMatrix, AggregateUnaryOperator op, int blen, MatrixIndexes indexesIn, boolean inCP)`
    `static MatrixBlock` | CLALibAppend.`append(MatrixBlock left, MatrixBlock right)`
    `static MatrixBlock` | CLALibBinaryCellOp.`binaryOperations(BinaryOperator op, CompressedMatrixBlock m1, MatrixValue thatValue, MatrixValue result)`
    `static MatrixBlock` | CLALibBinaryCellOp.`binaryOperationsLeft(BinaryOperator op, CompressedMatrixBlock m1, MatrixValue thatValue, MatrixValue result)`
    `static MatrixBlock` | CLALibLeftMultBy.`leftMultByMatrix(CompressedMatrixBlock m1, MatrixBlock m2, MatrixBlock ret, int k)`
    `static MatrixBlock` | CLALibLeftMultBy.`leftMultByMatrixTransposed(CompressedMatrixBlock m1, CompressedMatrixBlock m2, MatrixBlock ret, int k)`
    `static MatrixBlock` | CLALibLeftMultBy.`leftMultByMatrixTransposed(CompressedMatrixBlock m1, MatrixBlock m2, MatrixBlock ret, int k)`
    `static MatrixBlock` | CLALibRelationalOp.`overlappingRelativeRelationalOperation(ScalarOperator sop, CompressedMatrixBlock m1)`
    `static MatrixBlock` | CLALibReExpand.`reExpand(CompressedMatrixBlock in, MatrixBlock ret, double max, boolean cast, boolean ignore, int k)`
    `static MatrixBlock` | CLALibRightMultBy.`rightMultByMatrix(CompressedMatrixBlock m1, MatrixBlock m2, MatrixBlock ret, int k, boolean allowOverlap)`
    `static MatrixBlock` | CLALibScalar.`scalarOperations(ScalarOperator sop, CompressedMatrixBlock m1, MatrixValue result)`

    Methods in org.apache.sysds.runtime.compress.lib with parameters of type MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `static MatrixBlock` | CLALibCompAgg.`aggregateUnary(CompressedMatrixBlock inputMatrix, MatrixBlock outputMatrix, AggregateUnaryOperator op, int blen, MatrixIndexes indexesIn, boolean inCP)`
    `static MatrixBlock` | CLALibAppend.`append(MatrixBlock left, MatrixBlock right)`
    `static ABitmap` | BitmapEncoder.`extractBitmap(int[] colIndices, MatrixBlock rawBlock, boolean transposed)` Generate uncompressed bitmaps for a set of columns in an uncompressed matrix block.
    `static MatrixBlock` | CLALibLeftMultBy.`leftMultByMatrix(CompressedMatrixBlock m1, MatrixBlock m2, MatrixBlock ret, int k)`
    `static MatrixBlock` | CLALibLeftMultBy.`leftMultByMatrixTransposed(CompressedMatrixBlock m1, CompressedMatrixBlock m2, MatrixBlock ret, int k)`
    `static MatrixBlock` | CLALibLeftMultBy.`leftMultByMatrixTransposed(CompressedMatrixBlock m1, MatrixBlock m2, MatrixBlock ret, int k)`
    `static void` | CLALibLeftMultBy.`leftMultByTransposeSelf(List<AColGroup> groups, MatrixBlock result, int k, int numColumns, org.apache.commons.lang3.tuple.Pair<Integer,int[]> v, boolean overlapping)`
    `static MatrixBlock` | CLALibReExpand.`reExpand(CompressedMatrixBlock in, MatrixBlock ret, double max, boolean cast, boolean ignore, int k)`
    `static MatrixBlock` | CLALibRightMultBy.`rightMultByMatrix(CompressedMatrixBlock m1, MatrixBlock m2, MatrixBlock ret, int k, boolean allowOverlap)`

  - ### Uses of MatrixBlock in org.apache.sysds.runtime.compress.readers

    Methods in org.apache.sysds.runtime.compress.readers with parameters of type MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `static ReaderColumnSelection` | ReaderColumnSelection.`createReader(MatrixBlock rawBlock, int[] colIndices, boolean transposed)`

    Constructors in org.apache.sysds.runtime.compress.readers with parameters of type MatrixBlock
    Constructor and Description
    `ReaderColumnSelectionDenseMultiBlock(MatrixBlock data, int[] colIndices)`
    `ReaderColumnSelectionDenseMultiBlockTransposed(MatrixBlock data, int[] colIndices)`
    `ReaderColumnSelectionDenseSingleBlock(MatrixBlock data, int[] colIndices)`
    `ReaderColumnSelectionDenseSingleBlockTransposed(MatrixBlock data, int[] colIndexes)`
    `ReaderColumnSelectionSparse(MatrixBlock data, int[] colIndexes)` Reader of sparse matrix blocks for compression.
    `ReaderColumnSelectionSparseTransposed(MatrixBlock data, int[] colIndexes)` Reader of sparse matrix blocks for compression.

  - ### Uses of MatrixBlock in org.apache.sysds.runtime.compress.utils

    Methods in org.apache.sysds.runtime.compress.utils with parameters of type MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `static void` | LinearAlgebraUtils.`copyNonZerosToUpperTriangle(MatrixBlock ret, MatrixBlock tmp, int ix)`
    `static long` | LinearAlgebraUtils.`copyUpperToLowerTriangle(MatrixBlock ret)`

  - ### Uses of MatrixBlock in org.apache.sysds.runtime.controlprogram.caching

    Methods in org.apache.sysds.runtime.controlprogram.caching that return MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `MatrixBlock` | MatrixObject.`readMatrixPartition(IndexRange pred)` NOTE: for reading matrix partitions, we could cache (in its real sense) the read block with soft references (no need for eviction, as partitioning only applied for read-only matrices).

    Methods in org.apache.sysds.runtime.controlprogram.caching with parameters of type MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `void` | MatrixObject.`setInMemoryPartition(MatrixBlock block)`

    Constructors in org.apache.sysds.runtime.controlprogram.caching with parameters of type MatrixBlock
    Constructor and Description
    `MatrixObject(Types.ValueType vt, String file, MetaData mtd, MatrixBlock data)` Constructor that takes the value type, HDFS filename and associated metadata and a MatrixBlock used for creation after serialization

  - ### Uses of MatrixBlock in org.apache.sysds.runtime.controlprogram.context

    Methods in org.apache.sysds.runtime.controlprogram.context that return MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `MatrixBlock` | ExecutionContext.`getMatrixInput(String varName)` Pins a matrix variable into memory and returns the internal matrix block.
    `static MatrixBlock` | SparkExecutionContext.`toMatrixBlock(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> rdd, int rlen, int clen, int blen, long nnz)` Utility method for creating a single matrix block out of a binary block RDD.
    `static MatrixBlock` | SparkExecutionContext.`toMatrixBlock(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixCell> rdd, int rlen, int clen, long nnz)` Utility method for creating a single matrix block out of a binary cell RDD.
    `static MatrixBlock` | SparkExecutionContext.`toMatrixBlock(RDDObject rdd, int rlen, int clen, int blen, long nnz)` This method is a generic abstraction for calls from the buffer pool.
    `static MatrixBlock` | SparkExecutionContext.`toMatrixBlock(RDDObject rdd, int rlen, int clen, long nnz)`

    Methods in org.apache.sysds.runtime.controlprogram.context that return types with arguments of type MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | SparkExecutionContext.`getBinaryMatrixBlockRDDHandleForVariable(String varname)` Spark instructions should call this for all matrix inputs except broadcast variables.
    `org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | SparkExecutionContext.`getBinaryMatrixBlockRDDHandleForVariable(String varname, int numParts, boolean inclEmpty)`
    `PartitionedBroadcast<MatrixBlock>` | SparkExecutionContext.`getBroadcastForMatrixObject(MatrixObject mo)`
    `PartitionedBroadcast<MatrixBlock>` | SparkExecutionContext.`getBroadcastForVariable(String varname)`
    `List<MatrixBlock>` | ExecutionContext.`getMatrixInputs(CPOperand[] inputs)`
    `List<MatrixBlock>` | ExecutionContext.`getMatrixInputs(CPOperand[] inputs, boolean includeList)`
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | SparkExecutionContext.`toMatrixJavaPairRDD(org.apache.spark.api.java.JavaSparkContext sc, MatrixBlock src, int blen)`
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | SparkExecutionContext.`toMatrixJavaPairRDD(org.apache.spark.api.java.JavaSparkContext sc, MatrixBlock src, int blen, int numParts, boolean inclEmpty)`
    `static PartitionedBlock<MatrixBlock>` | SparkExecutionContext.`toPartitionedMatrixBlock(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> rdd, int rlen, int clen, int blen, long nnz)`

    Methods in org.apache.sysds.runtime.controlprogram.context with parameters of type MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `static MatrixObject` | ExecutionContext.`createMatrixObject(MatrixBlock mb)`
    `void` | ExecutionContext.`setMatrixOutput(String varName, MatrixBlock outputData)`
    `void` | ExecutionContext.`setMatrixOutput(String varName, MatrixBlock outputData, MatrixObject.UpdateType flag)`
    `void` | ExecutionContext.`setMatrixOutputAndLineage(String varName, MatrixBlock outputData, LineageItem li)`
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | SparkExecutionContext.`toMatrixJavaPairRDD(org.apache.spark.api.java.JavaSparkContext sc, MatrixBlock src, int blen)`
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | SparkExecutionContext.`toMatrixJavaPairRDD(org.apache.spark.api.java.JavaSparkContext sc, MatrixBlock src, int blen, int numParts, boolean inclEmpty)`

    Method parameters in org.apache.sysds.runtime.controlprogram.context with type arguments of type MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `static MatrixBlock` | SparkExecutionContext.`toMatrixBlock(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> rdd, int rlen, int clen, int blen, long nnz)` Utility method for creating a single matrix block out of a binary block RDD.
    `static PartitionedBlock<MatrixBlock>` | SparkExecutionContext.`toPartitionedMatrixBlock(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> rdd, int rlen, int clen, int blen, long nnz)`

  - ### Uses of MatrixBlock in org.apache.sysds.runtime.controlprogram.federated

    Methods in org.apache.sysds.runtime.controlprogram.federated that return MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `static MatrixBlock` | FederationUtils.`aggAdd(Future<FederatedResponse>[] ffr)`
    `static MatrixBlock` | FederationUtils.`aggMatrix(AggregateUnaryOperator aop, Future<FederatedResponse>[] ffr, FederationMap map)`
    `static MatrixBlock` | FederationUtils.`aggMatrix(AggregateUnaryOperator aop, Future<FederatedResponse>[] ffr, Future<FederatedResponse>[] meanFfr, FederationMap map)`
    `static MatrixBlock` | FederationUtils.`aggMean(Future<FederatedResponse>[] ffr, FederationMap map)`
    `static MatrixBlock` | FederationUtils.`aggMinMax(Future<FederatedResponse>[] ffr, boolean isMin, boolean isScalar, Optional<FederationMap.FType> fedType)`
    `static MatrixBlock` | FederationUtils.`aggMinMaxIndex(Future<FederatedResponse>[] ffr, boolean isMin, FederationMap map)`
    `static MatrixBlock` | FederationUtils.`aggProd(Future<FederatedResponse>[] ffr, FederationMap fedMap, AggregateUnaryOperator aop)`
    `static MatrixBlock` | FederationUtils.`aggregateResponses(List<org.apache.commons.lang3.tuple.Pair<FederatedRange,Future<FederatedResponse>>> readResponses)` Aggregate partially aggregated data from federated workers by adding values with the same index in different federated locations.
    `static MatrixBlock` | FederationUtils.`aggVar(Future<FederatedResponse>[] ffr, Future<FederatedResponse>[] meanFfr, FederationMap map, boolean isRowAggregate, boolean isScalar)`
    `static MatrixBlock` | FederationUtils.`bind(Future<FederatedResponse>[] ffr, boolean cbind)`
    `static MatrixBlock` | FederationUtils.`bindResponses(List<org.apache.commons.lang3.tuple.Pair<FederatedRange,Future<FederatedResponse>>> readResponses, long[] dims)` Bind data from federated workers based on non-overlapping federated ranges.
    `static MatrixBlock[]` | FederationUtils.`getResults(Future<FederatedResponse>[] ffr)`

  - ### Uses of MatrixBlock in org.apache.sysds.runtime.controlprogram.paramserv

    Methods in org.apache.sysds.runtime.controlprogram.paramserv that return MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `static MatrixBlock` | ParamservUtils.`cbindMatrix(MatrixBlock left, MatrixBlock right)`
    `static MatrixBlock` | ParamservUtils.`generatePermutation(int numEntries, long seed)` Generate the permutation
    `static MatrixBlock` | ParamservUtils.`generateReplicationMatrix(int nsamples, int nrows, long seed)` Generates a matrix which when left multiplied with the input matrix will replicate n data rows
    `static MatrixBlock` | ParamservUtils.`generateSubsampleMatrix(int nsamples, int nrows, long seed)` Generates a matrix which when left multiplied with the input matrix will subsample
    `static MatrixBlock` | ParamservUtils.`sliceMatrixBlock(MatrixBlock mb, long rl, long rh)` Slice the matrix block and return a matrix block (used in spark)

    Methods in org.apache.sysds.runtime.controlprogram.paramserv that return types with arguments of type MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `static org.apache.spark.api.java.JavaPairRDD<Long,scala.Tuple2<MatrixBlock,MatrixBlock>>` | ParamservUtils.`assembleTrainingData(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> featuresRDD, org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> labelsRDD)` Assemble the matrix of features and labels according to the rowID
    `static org.apache.spark.api.java.JavaPairRDD<Long,scala.Tuple2<MatrixBlock,MatrixBlock>>` | ParamservUtils.`assembleTrainingData(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> featuresRDD, org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> labelsRDD)` Assemble the matrix of features and labels according to the rowID
    `static org.apache.spark.api.java.JavaPairRDD<Integer,scala.Tuple2<MatrixBlock,MatrixBlock>>` | ParamservUtils.`doPartitionOnSpark(SparkExecutionContext sec, MatrixObject features, MatrixObject labels, Statement.PSScheme scheme, int workerNum)`
    `static org.apache.spark.api.java.JavaPairRDD<Integer,scala.Tuple2<MatrixBlock,MatrixBlock>>` | ParamservUtils.`doPartitionOnSpark(SparkExecutionContext sec, MatrixObject features, MatrixObject labels, Statement.PSScheme scheme, int workerNum)`

    Methods in org.apache.sysds.runtime.controlprogram.paramserv with parameters of type MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `static MatrixBlock` | ParamservUtils.`cbindMatrix(MatrixBlock left, MatrixBlock right)`
    `static MatrixObject` | ParamservUtils.`newMatrixObject(MatrixBlock mb)`
    `static MatrixObject` | ParamservUtils.`newMatrixObject(MatrixBlock mb, boolean cleanup)`
    `static MatrixBlock` | ParamservUtils.`sliceMatrixBlock(MatrixBlock mb, long rl, long rh)` Slice the matrix block and return a matrix block (used in spark)

    Method parameters in org.apache.sysds.runtime.controlprogram.paramserv with type arguments of type MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `static org.apache.spark.api.java.JavaPairRDD<Long,scala.Tuple2<MatrixBlock,MatrixBlock>>` | ParamservUtils.`assembleTrainingData(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> featuresRDD, org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> labelsRDD)` Assemble the matrix of features and labels according to the rowID
    `static org.apache.spark.api.java.JavaPairRDD<Long,scala.Tuple2<MatrixBlock,MatrixBlock>>` | ParamservUtils.`assembleTrainingData(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> featuresRDD, org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> labelsRDD)` Assemble the matrix of features and labels according to the rowID
    `void` | SparkPSWorker.`call(scala.Tuple2<Integer,scala.Tuple2<MatrixBlock,MatrixBlock>> input)`
    `void` | SparkPSWorker.`call(scala.Tuple2<Integer,scala.Tuple2<MatrixBlock,MatrixBlock>> input)`

  - ### Uses of MatrixBlock in org.apache.sysds.runtime.controlprogram.paramserv.dp

    Methods in org.apache.sysds.runtime.controlprogram.paramserv.dp that return MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `static MatrixBlock` | DRRLocalScheme.`removeEmpty(MatrixBlock mb, int k, int workerId)`

    Methods in org.apache.sysds.runtime.controlprogram.paramserv.dp that return types with arguments of type MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `scala.Tuple2<Integer,scala.Tuple2<MatrixBlock,MatrixBlock>>` | DataPartitionerSparkAggregator.`call(scala.Tuple2<Integer,LinkedList<scala.Tuple2<Long,scala.Tuple2<MatrixBlock,MatrixBlock>>>> input)` Row-wise combine the matrix
    `scala.Tuple2<Integer,scala.Tuple2<MatrixBlock,MatrixBlock>>` | DataPartitionerSparkAggregator.`call(scala.Tuple2<Integer,LinkedList<scala.Tuple2<Long,scala.Tuple2<MatrixBlock,MatrixBlock>>>> input)` Row-wise combine the matrix
    `Iterator<scala.Tuple2<Integer,scala.Tuple2<Long,scala.Tuple2<MatrixBlock,MatrixBlock>>>>` | DataPartitionerSparkMapper.`call(scala.Tuple2<Long,scala.Tuple2<MatrixBlock,MatrixBlock>> input)` Do data partitioning
    `Iterator<scala.Tuple2<Integer,scala.Tuple2<Long,scala.Tuple2<MatrixBlock,MatrixBlock>>>>` | DataPartitionerSparkMapper.`call(scala.Tuple2<Long,scala.Tuple2<MatrixBlock,MatrixBlock>> input)` Do data partitioning
    `static List<MatrixBlock>` | DCLocalScheme.`partition(int k, MatrixBlock mb)`
    `static List<MatrixBlock>` | ORLocalScheme.`partition(int k, MatrixBlock mb, List<MatrixBlock> permutations)`

    Methods in org.apache.sysds.runtime.controlprogram.paramserv.dp with parameters of type MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `org.apache.sysds.runtime.controlprogram.paramserv.dp.DataPartitionSparkScheme.Result` | DRSparkScheme.`doPartitioning(int numWorkers, int rblkID, MatrixBlock features, MatrixBlock labels)`
    `org.apache.sysds.runtime.controlprogram.paramserv.dp.DataPartitionSparkScheme.Result` | ORSparkScheme.`doPartitioning(int numWorkers, int rblkID, MatrixBlock features, MatrixBlock labels)`
    `abstract org.apache.sysds.runtime.controlprogram.paramserv.dp.DataPartitionSparkScheme.Result` | DataPartitionSparkScheme.`doPartitioning(int numWorkers, int rblkID, MatrixBlock features, MatrixBlock labels)`
    `org.apache.sysds.runtime.controlprogram.paramserv.dp.DataPartitionSparkScheme.Result` | DRRSparkScheme.`doPartitioning(int numWorkers, int rblkID, MatrixBlock features, MatrixBlock labels)`
    `org.apache.sysds.runtime.controlprogram.paramserv.dp.DataPartitionSparkScheme.Result` | DCSparkScheme.`doPartitioning(int numWorkers, int rblkID, MatrixBlock features, MatrixBlock labels)`
    `DataPartitionLocalScheme.Result` | ORLocalScheme.`doPartitioning(int workersNum, MatrixBlock features, MatrixBlock labels)`
    `DataPartitionLocalScheme.Result` | DCLocalScheme.`doPartitioning(int workersNum, MatrixBlock features, MatrixBlock labels)`
    `DataPartitionLocalScheme.Result` | LocalDataPartitioner.`doPartitioning(int workersNum, MatrixBlock features, MatrixBlock labels)`
    `DataPartitionLocalScheme.Result` | DRLocalScheme.`doPartitioning(int workersNum, MatrixBlock features, MatrixBlock labels)`
    `DataPartitionLocalScheme.Result` | DRRLocalScheme.`doPartitioning(int workersNum, MatrixBlock features, MatrixBlock labels)`
    `abstract DataPartitionLocalScheme.Result` | DataPartitionLocalScheme.`doPartitioning(int workersNum, MatrixBlock features, MatrixBlock labels)`
    `org.apache.sysds.runtime.controlprogram.paramserv.dp.DataPartitionSparkScheme.Result` | SparkDataPartitioner.`doPartitioning(int numWorkers, MatrixBlock features, MatrixBlock labels, long rowID)`
    `static List<MatrixBlock>` | DCLocalScheme.`partition(int k, MatrixBlock mb)`
    `static List<MatrixBlock>` | ORLocalScheme.`partition(int k, MatrixBlock mb, List<MatrixBlock> permutations)`
    `static MatrixBlock` | DRRLocalScheme.`removeEmpty(MatrixBlock mb, int k, int workerId)`

    Method parameters in org.apache.sysds.runtime.controlprogram.paramserv.dp with type arguments of type MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `scala.Tuple2<Integer,scala.Tuple2<MatrixBlock,MatrixBlock>>` | DataPartitionerSparkAggregator.`call(scala.Tuple2<Integer,LinkedList<scala.Tuple2<Long,scala.Tuple2<MatrixBlock,MatrixBlock>>>> input)` Row-wise combine the matrix
    `scala.Tuple2<Integer,scala.Tuple2<MatrixBlock,MatrixBlock>>` | DataPartitionerSparkAggregator.`call(scala.Tuple2<Integer,LinkedList<scala.Tuple2<Long,scala.Tuple2<MatrixBlock,MatrixBlock>>>> input)` Row-wise combine the matrix
    `Iterator<scala.Tuple2<Integer,scala.Tuple2<Long,scala.Tuple2<MatrixBlock,MatrixBlock>>>>` | DataPartitionerSparkMapper.`call(scala.Tuple2<Long,scala.Tuple2<MatrixBlock,MatrixBlock>> input)` Do data partitioning
    `Iterator<scala.Tuple2<Integer,scala.Tuple2<Long,scala.Tuple2<MatrixBlock,MatrixBlock>>>>` | DataPartitionerSparkMapper.`call(scala.Tuple2<Long,scala.Tuple2<MatrixBlock,MatrixBlock>> input)` Do data partitioning
    `static List<MatrixBlock>` | ORLocalScheme.`partition(int k, MatrixBlock mb, List<MatrixBlock> permutations)`

  - ### Uses of MatrixBlock in org.apache.sysds.runtime.controlprogram.parfor

    Methods in org.apache.sysds.runtime.controlprogram.parfor that return MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `static MatrixBlock` | DataPartitioner.`createReuseMatrixBlock(ParForProgramBlock.PDataPartitionFormat dpf, int rows, int cols)`

    Methods in org.apache.sysds.runtime.controlprogram.parfor that return types with arguments of type MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `scala.Tuple2<MatrixIndexes,MatrixBlock>` | ResultMergeRemoteSparkWCompare.`call(scala.Tuple2<MatrixIndexes,scala.Tuple2<Iterable<MatrixBlock>,MatrixBlock>> arg)`

    Method parameters in org.apache.sysds.runtime.controlprogram.parfor with type arguments of type MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `Iterator<scala.Tuple2<Long,org.apache.hadoop.io.Writable>>` | DataPartitionerRemoteSparkMapper.`call(scala.Tuple2<MatrixIndexes,MatrixBlock> arg0)`
    `scala.Tuple2<MatrixIndexes,MatrixBlock>` | ResultMergeRemoteSparkWCompare.`call(scala.Tuple2<MatrixIndexes,scala.Tuple2<Iterable<MatrixBlock>,MatrixBlock>> arg)`
    `scala.Tuple2<MatrixIndexes,MatrixBlock>` | ResultMergeRemoteSparkWCompare.`call(scala.Tuple2<MatrixIndexes,scala.Tuple2<Iterable<MatrixBlock>,MatrixBlock>> arg)`

  - ### Uses of MatrixBlock in org.apache.sysds.runtime.controlprogram.parfor.util

    Fields in org.apache.sysds.runtime.controlprogram.parfor.util declared as MatrixBlock
    Modifier and Type | Field and Description
    --- | ---
    `MatrixBlock` | PairWritableBlock.`block`

    Methods in org.apache.sysds.runtime.controlprogram.parfor.util that return MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `static MatrixBlock` | StagingFileUtils.`readCellList2BlockFromLocal(String fname, int blen)`
    `static MatrixBlock` | StagingFileUtils.`readCellList2BlockFromLocal(String fname, int blen, boolean sparse)`

    Constructors in org.apache.sysds.runtime.controlprogram.parfor.util with parameters of type MatrixBlock
    Constructor and Description
    `PairWritableBlock(MatrixIndexes ix, MatrixBlock mb)`

  - ### Uses of MatrixBlock in org.apache.sysds.runtime.data

    Methods in org.apache.sysds.runtime.data with parameters of type MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `void` | TensorBlock.`set(MatrixBlock other)`
    `void` | BasicTensorBlock.`set(MatrixBlock other)`

  - ### Uses of MatrixBlock in org.apache.sysds.runtime.functionobjects

    Methods in org.apache.sysds.runtime.functionobjects with parameters of type MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `void` | CTable.`execute(double v1, double v2, double w, boolean ignoreZeros, CTableMap resultMap, MatrixBlock resultBlock)`
    `void` | CTable.`execute(double v1, double v2, double w, boolean ignoreZeros, MatrixBlock ctableResult)`
    `int` | CTable.`execute(int row, double v2, double w, int maxCol, MatrixBlock ctableResult)`

  - ### Uses of MatrixBlock in org.apache.sysds.runtime.instructions.gpu.context

    Methods in org.apache.sysds.runtime.instructions.gpu.context that return MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `MatrixBlock` | GPUObject.`evictFromDeviceToHostMB(String instName, boolean eagerDelete)`

  - ### Uses of MatrixBlock in org.apache.sysds.runtime.instructions.spark

    Methods in org.apache.sysds.runtime.instructions.spark that return MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `MatrixBlock[]` | CtableSPInstruction.MapJoinSignature1.`call(MatrixBlock v1)`
    `MatrixBlock` | BinUaggChainSPInstruction.RDDBinUaggChainFunction.`call(MatrixBlock arg0)`
    `MatrixBlock` | CompressionSPInstruction.CompressionFunction.`call(MatrixBlock arg0)`
    `MatrixBlock` | DeCompressionSPInstruction.DeCompressionFunction.`call(MatrixBlock arg0)`
    `MatrixBlock` | ParameterizedBuiltinSPInstruction.RDDReplaceFunction.`call(MatrixBlock arg0)`
    `MatrixBlock[]` | CtableSPInstruction.MapJoinSignature2.`call(scala.Tuple2<MatrixBlock,MatrixBlock> v1)`
    `MatrixBlock` | ParameterizedBuiltinSPInstruction.RDDMapGroupedAggFunction2.`call(scala.Tuple2<MatrixIndexes,MatrixBlock> arg0)`
    `MatrixBlock` | AggregateUnarySPInstruction.RDDUAggFunction2.`call(scala.Tuple2<MatrixIndexes,MatrixBlock> arg0)`
    `MatrixBlock[]` | CtableSPInstruction.MapJoinSignature3.`call(scala.Tuple2<scala.Tuple2<MatrixBlock,MatrixBlock>,MatrixBlock> v1)`
    `static MatrixBlock` | MatrixIndexingSPInstruction.`inmemoryIndexing(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in1, DataCharacteristics mcIn, DataCharacteristics mcOut, IndexRange ixrange)`

    Methods in org.apache.sysds.runtime.instructions.spark that return types with arguments of type MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `Iterator<scala.Tuple2<MatrixIndexes,MatrixBlock>>` | SpoofSPInstruction.ReplicateRightFactorFunction.`call(scala.Tuple2<MatrixIndexes,MatrixBlock> arg0)`
    `Iterator<scala.Tuple2<MatrixIndexes,MatrixBlock>>` | ParameterizedBuiltinSPInstruction.RDDRemoveEmptyFunctionInMem.`call(scala.Tuple2<MatrixIndexes,MatrixBlock> arg0)`
    `Iterator<scala.Tuple2<MatrixIndexes,MatrixBlock>>` | ParameterizedBuiltinSPInstruction.RDDRExpandFunction.`call(scala.Tuple2<MatrixIndexes,MatrixBlock> arg0)`
    `Iterator<scala.Tuple2<MatrixIndexes,MatrixBlock>>` | ParameterizedBuiltinSPInstruction.RDDMapGroupedAggFunction.`call(scala.Tuple2<MatrixIndexes,MatrixBlock> arg0)`
    `scala.Tuple2<MatrixIndexes,MatrixBlock>` | ParameterizedBuiltinSPInstruction.RDDTransformDecodeExpandFunction.`call(scala.Tuple2<MatrixIndexes,MatrixBlock> in)`
    `scala.Tuple2<MatrixIndexes,MatrixBlock>` | AppendGAlignedSPInstruction.ShiftColumnIndex.`call(scala.Tuple2<MatrixIndexes,MatrixBlock> kv)`
    `Iterator<scala.Tuple2<MatrixIndexes,MatrixBlock>>` | AppendGSPInstruction.ShiftMatrix.`call(scala.Tuple2<MatrixIndexes,MatrixBlock> kv)`
    `scala.Tuple2<MatrixIndexes,MatrixBlock>` | BuiltinNarySPInstruction.PadBlocksFunction.`call(scala.Tuple2<MatrixIndexes,MatrixBlock> arg0)`
    `scala.Tuple2<MatrixIndexes,MatrixBlock>` | AppendGSPInstruction.MergeWithShiftedBlocks.`call(scala.Tuple2<MatrixIndexes,scala.Tuple2<Iterable<MatrixBlock>,Iterable<MatrixBlock>>> kv)`
    `Iterator<scala.Tuple2<MatrixIndexes,MatrixBlock>>` | ParameterizedBuiltinSPInstruction.RDDRemoveEmptyFunction.`call(scala.Tuple2<MatrixIndexes,scala.Tuple2<MatrixBlock,MatrixBlock>> arg0)`

    Methods in org.apache.sysds.runtime.instructions.spark with parameters of type MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `MatrixBlock[]` | CtableSPInstruction.MapJoinSignature1.`call(MatrixBlock v1)`
    `MatrixBlock` | BinUaggChainSPInstruction.RDDBinUaggChainFunction.`call(MatrixBlock arg0)`
    `MatrixBlock` | CompressionSPInstruction.CompressionFunction.`call(MatrixBlock arg0)`
    `MatrixBlock` | DeCompressionSPInstruction.DeCompressionFunction.`call(MatrixBlock arg0)`
    `MatrixBlock` | ParameterizedBuiltinSPInstruction.RDDReplaceFunction.`call(MatrixBlock arg0)`

    Method parameters in org.apache.sysds.runtime.instructions.spark with type arguments of type MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `MatrixBlock[]` | CtableSPInstruction.MapJoinSignature2.`call(scala.Tuple2<MatrixBlock,MatrixBlock> v1)`
    `MatrixBlock[]` | CtableSPInstruction.MapJoinSignature2.`call(scala.Tuple2<MatrixBlock,MatrixBlock> v1)`
    `Iterator<scala.Tuple2<MatrixIndexes,MatrixBlock>>` | SpoofSPInstruction.ReplicateRightFactorFunction.`call(scala.Tuple2<MatrixIndexes,MatrixBlock> arg0)`
    `Iterator<scala.Tuple2<MatrixIndexes,MatrixBlock>>` | ParameterizedBuiltinSPInstruction.RDDRemoveEmptyFunctionInMem.`call(scala.Tuple2<MatrixIndexes,MatrixBlock> arg0)`
    `Iterator<scala.Tuple2<MatrixIndexes,MatrixBlock>>` | ParameterizedBuiltinSPInstruction.RDDRExpandFunction.`call(scala.Tuple2<MatrixIndexes,MatrixBlock> arg0)`
    `Iterator<scala.Tuple2<MatrixIndexes,MatrixBlock>>` | ParameterizedBuiltinSPInstruction.RDDMapGroupedAggFunction.`call(scala.Tuple2<MatrixIndexes,MatrixBlock> arg0)`
    `MatrixBlock` | ParameterizedBuiltinSPInstruction.RDDMapGroupedAggFunction2.`call(scala.Tuple2<MatrixIndexes,MatrixBlock> arg0)`
    `scala.Tuple2<Long,FrameBlock>` | ParameterizedBuiltinSPInstruction.RDDTransformDecodeFunction.`call(scala.Tuple2<MatrixIndexes,MatrixBlock> in)`
    `scala.Tuple2<MatrixIndexes,MatrixBlock>` | ParameterizedBuiltinSPInstruction.RDDTransformDecodeExpandFunction.`call(scala.Tuple2<MatrixIndexes,MatrixBlock> in)`
    `scala.Tuple2<MatrixIndexes,MatrixBlock>` | AppendGAlignedSPInstruction.ShiftColumnIndex.`call(scala.Tuple2<MatrixIndexes,MatrixBlock> kv)`
    `Iterator<scala.Tuple2<MatrixIndexes,MatrixBlock>>` | AppendGSPInstruction.ShiftMatrix.`call(scala.Tuple2<MatrixIndexes,MatrixBlock> kv)`
    `MatrixBlock` | AggregateUnarySPInstruction.RDDUAggFunction2.`call(scala.Tuple2<MatrixIndexes,MatrixBlock> arg0)`
    `scala.Tuple2<MatrixIndexes,MatrixBlock>` | BuiltinNarySPInstruction.PadBlocksFunction.`call(scala.Tuple2<MatrixIndexes,MatrixBlock> arg0)`
    `scala.Tuple2<MatrixIndexes,MatrixBlock>` | AppendGSPInstruction.MergeWithShiftedBlocks.`call(scala.Tuple2<MatrixIndexes,scala.Tuple2<Iterable<MatrixBlock>,Iterable<MatrixBlock>>> kv)`
    `scala.Tuple2<MatrixIndexes,MatrixBlock>` | AppendGSPInstruction.MergeWithShiftedBlocks.`call(scala.Tuple2<MatrixIndexes,scala.Tuple2<Iterable<MatrixBlock>,Iterable<MatrixBlock>>> kv)`
    `Iterator<scala.Tuple2<MatrixIndexes,MatrixBlock>>` | ParameterizedBuiltinSPInstruction.RDDRemoveEmptyFunction.`call(scala.Tuple2<MatrixIndexes,scala.Tuple2<MatrixBlock,MatrixBlock>> arg0)`
    `Iterator<scala.Tuple2<MatrixIndexes,MatrixBlock>>` | ParameterizedBuiltinSPInstruction.RDDRemoveEmptyFunction.`call(scala.Tuple2<MatrixIndexes,scala.Tuple2<MatrixBlock,MatrixBlock>> arg0)`
    `MatrixBlock[]` | CtableSPInstruction.MapJoinSignature3.`call(scala.Tuple2<scala.Tuple2<MatrixBlock,MatrixBlock>,MatrixBlock> v1)`
    `MatrixBlock[]` | CtableSPInstruction.MapJoinSignature3.`call(scala.Tuple2<scala.Tuple2<MatrixBlock,MatrixBlock>,MatrixBlock> v1)`
    `MatrixBlock[]` | CtableSPInstruction.MapJoinSignature3.`call(scala.Tuple2<scala.Tuple2<MatrixBlock,MatrixBlock>,MatrixBlock> v1)`
    `static MatrixBlock` | MatrixIndexingSPInstruction.`inmemoryIndexing(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in1, DataCharacteristics mcIn, DataCharacteristics mcOut, IndexRange ixrange)`

    Constructor parameters in org.apache.sysds.runtime.instructions.spark with type arguments of type MatrixBlock
    Constructor and Description
    `RDDMapGroupedAggFunction(PartitionedBroadcast<MatrixBlock> pbm, Operator op, int ngroups, int blen)`
    `RDDMapGroupedAggFunction2(PartitionedBroadcast<MatrixBlock> pbm, Operator op, int ngroups)`
    `RDDRemoveEmptyFunctionInMem(boolean rmRows, long len, long blen, PartitionedBroadcast<MatrixBlock> off)`

  - ### Uses of MatrixBlock in org.apache.sysds.runtime.instructions.spark.data

    Methods in org.apache.sysds.runtime.instructions.spark.data that return MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `MatrixBlock` | CorrMatrixBlock.`getCorrection()`
    `MatrixBlock` | RowMatrixBlock.`getValue()`
    `MatrixBlock` | CorrMatrixBlock.`getValue()`

    Methods in org.apache.sysds.runtime.instructions.spark.data with parameters of type MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `CorrMatrixBlock` | CorrMatrixBlock.`set(MatrixBlock value, MatrixBlock corr)`

    Constructors in org.apache.sysds.runtime.instructions.spark.data with parameters of type MatrixBlock
    Constructor and Description
    `CorrMatrixBlock(MatrixBlock value)`
    `CorrMatrixBlock(MatrixBlock value, MatrixBlock corr)`
    `RowMatrixBlock(int len, int row, MatrixBlock value)`

  - ### Uses of MatrixBlock in org.apache.sysds.runtime.instructions.spark.functions

    Methods in org.apache.sysds.runtime.instructions.spark.functions that return MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `MatrixBlock[]` | MapInputSignature.`call(MatrixBlock v1)`
    `MatrixBlock` | ComputeBinaryBlockNnzFunction.`call(MatrixBlock arg0)`
    `MatrixBlock` | AggregateDropCorrectionFunction.`call(MatrixBlock arg0)`
    `MatrixBlock` | CreateSparseBlockFunction.`call(MatrixBlock arg0)`
    `MatrixBlock` | CopyMatrixBlockFunction.`call(MatrixBlock arg0)`
    `MatrixBlock` | MatrixScalarUnaryFunction.`call(MatrixBlock arg0)`
    `MatrixBlock[]` | MapJoinSignature.`call(scala.Tuple2<MatrixBlock[],MatrixBlock> v1)`
    `MatrixBlock` | MatrixMatrixBinaryOpFunction.`call(scala.Tuple2<MatrixBlock,MatrixBlock> arg0)`

    Methods in org.apache.sysds.runtime.instructions.spark.functions that return types with arguments of type MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `LazyIterableIterator<scala.Tuple2<MatrixIndexes,MatrixBlock>>` | MatrixVectorBinaryOpPartitionFunction.`call(Iterator<scala.Tuple2<MatrixIndexes,MatrixBlock>> arg0)`
    `LazyIterableIterator<scala.Tuple2<MatrixIndexes,MatrixBlock>>` | CopyMatrixBlockPairFunction.`call(Iterator<scala.Tuple2<MatrixIndexes,MatrixBlock>> arg0)`
    `scala.Tuple2<MatrixIndexes,MatrixBlock>` | GetMIMBFromRow.`call(org.apache.spark.sql.Row row)`
    `Iterator<scala.Tuple2<MatrixIndexes,MatrixBlock>>` | ExtractBlockForBinaryReblock.`call(scala.Tuple2<MatrixIndexes,MatrixBlock> arg0)`
    `Iterator<scala.Tuple2<MatrixIndexes,MatrixBlock>>` | ReplicateBlockFunction.`call(scala.Tuple2<MatrixIndexes,MatrixBlock> arg0)`
    `Iterator<scala.Tuple2<MatrixIndexes,MatrixBlock>>` | ReplicateVectorFunction.`call(scala.Tuple2<MatrixIndexes,MatrixBlock> arg0)`
    `scala.Tuple2<MatrixIndexes,MatrixBlock>` | ReorgMapFunction.`call(scala.Tuple2<MatrixIndexes,MatrixBlock> arg0)`

    Methods in org.apache.sysds.runtime.instructions.spark.functions with parameters of type MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `MatrixBlock[]` | MapInputSignature.`call(MatrixBlock v1)`
    `MatrixBlock` | ComputeBinaryBlockNnzFunction.`call(MatrixBlock arg0)`
    `MatrixBlock` | AggregateDropCorrectionFunction.`call(MatrixBlock arg0)`
    `MatrixBlock` | CreateSparseBlockFunction.`call(MatrixBlock arg0)`
    `MatrixBlock` | CopyMatrixBlockFunction.`call(MatrixBlock arg0)`
    `Boolean` | FilterNonEmptyBlocksFunction2.`call(MatrixBlock arg0)`
    `MatrixBlock` | MatrixScalarUnaryFunction.`call(MatrixBlock arg0)`

    Method parameters in org.apache.sysds.runtime.instructions.spark.functions with type arguments of type MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `Iterator<Long>` | RecomputeNnzFunction.`call(Iterator<MatrixBlock> iter)`
    `LazyIterableIterator<scala.Tuple2<MatrixIndexes,MatrixBlock>>` | MatrixVectorBinaryOpPartitionFunction.`call(Iterator<scala.Tuple2<MatrixIndexes,MatrixBlock>> arg0)`
    `LazyIterableIterator<scala.Tuple2<MatrixIndexes,MatrixBlock>>` | CopyMatrixBlockPairFunction.`call(Iterator<scala.Tuple2<MatrixIndexes,MatrixBlock>> arg0)`
    `MatrixBlock[]` | MapJoinSignature.`call(scala.Tuple2<MatrixBlock[],MatrixBlock> v1)`
    `MatrixBlock` | MatrixMatrixBinaryOpFunction.`call(scala.Tuple2<MatrixBlock,MatrixBlock> arg0)`
    `MatrixBlock` | MatrixMatrixBinaryOpFunction.`call(scala.Tuple2<MatrixBlock,MatrixBlock> arg0)`
    `Boolean` | FilterNonEmptyBlocksFunction.`call(scala.Tuple2<MatrixIndexes,MatrixBlock> arg0)`
    `Iterator<scala.Tuple2<MatrixIndexes,MatrixBlock>>` | ExtractBlockForBinaryReblock.`call(scala.Tuple2<MatrixIndexes,MatrixBlock> arg0)`
    `Iterator<scala.Tuple2<MatrixIndexes,MatrixBlock>>` | ReplicateBlockFunction.`call(scala.Tuple2<MatrixIndexes,MatrixBlock> arg0)`
    `Iterator<scala.Tuple2<MatrixIndexes,WeightedCell>>` | ExtractGroup.ExtractGroupBroadcast.`call(scala.Tuple2<MatrixIndexes,MatrixBlock> arg)`
    `Iterator<scala.Tuple2<MatrixIndexes,MatrixBlock>>` | ReplicateVectorFunction.`call(scala.Tuple2<MatrixIndexes,MatrixBlock> arg0)`
    `Boolean` | FilterDiagMatrixBlocksFunction.`call(scala.Tuple2<MatrixIndexes,MatrixBlock> arg0)`
    `scala.Tuple2<MatrixIndexes,MatrixBlock>` | ReorgMapFunction.`call(scala.Tuple2<MatrixIndexes,MatrixBlock> arg0)`
    `Boolean` | IsBlockInRange.`call(scala.Tuple2<MatrixIndexes,MatrixBlock> kv)`
    `Iterator<String>` | ConvertMatrixBlockToIJVLines.`call(scala.Tuple2<MatrixIndexes,MatrixBlock> kv)`
    `org.apache.sysds.runtime.instructions.spark.functions.OuterVectorBinaryOpFunction.OuterVectorBinaryOpIterator` | OuterVectorBinaryOpFunction.`call(scala.Tuple2<MatrixIndexes,MatrixBlock> arg0)`
    `Boolean` | IsBlockInList.`call(scala.Tuple2<MatrixIndexes,MatrixBlock> kv)`
    `Iterator<scala.Tuple2<MatrixIndexes,WeightedCell>>` | ExtractGroup.ExtractGroupJoin.`call(scala.Tuple2<MatrixIndexes,scala.Tuple2<MatrixBlock,MatrixBlock>> arg)`
    `Iterator<scala.Tuple2<MatrixIndexes,WeightedCell>>` | ExtractGroup.ExtractGroupJoin.`call(scala.Tuple2<MatrixIndexes,scala.Tuple2<MatrixBlock,MatrixBlock>> arg)`
    `Iterator<scala.Tuple2<MatrixIndexes,WeightedCell>>` | ExtractGroupNWeights.`call(scala.Tuple2<MatrixIndexes,scala.Tuple2<scala.Tuple2<MatrixBlock,MatrixBlock>,MatrixBlock>> arg)`
    `Iterator<scala.Tuple2<MatrixIndexes,WeightedCell>>` | ExtractGroupNWeights.`call(scala.Tuple2<MatrixIndexes,scala.Tuple2<scala.Tuple2<MatrixBlock,MatrixBlock>,MatrixBlock>> arg)`
    `Iterator<scala.Tuple2<MatrixIndexes,WeightedCell>>` | ExtractGroupNWeights.`call(scala.Tuple2<MatrixIndexes,scala.Tuple2<scala.Tuple2<MatrixBlock,MatrixBlock>,MatrixBlock>> arg)`

    Constructor parameters in org.apache.sysds.runtime.instructions.spark.functions with type arguments of type MatrixBlock
    Constructor and Description
    `ExtractGroupBroadcast(PartitionedBroadcast<MatrixBlock> pbm, long blen, long ngroups, Operator op)`
    `MatrixVectorBinaryOpPartitionFunction(BinaryOperator op, PartitionedBroadcast<MatrixBlock> binput, BinaryM.VectorType vtype)`
    `OuterVectorBinaryOpFunction(BinaryOperator op, PartitionedBroadcast<MatrixBlock> binput)`

  - ### Uses of MatrixBlock in org.apache.sysds.runtime.instructions.spark.utils

    Methods in org.apache.sysds.runtime.instructions.spark.utils that return MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `static MatrixBlock` | RDDAggregateUtils.`aggStable(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in, AggregateOperator aop)` Single block aggregation over pair rdds with corrections for numerical stability.
    `static MatrixBlock` | RDDAggregateUtils.`aggStable(org.apache.spark.api.java.JavaRDD<MatrixBlock> in, AggregateOperator aop)` Single block aggregation over rdds with corrections for numerical stability.
    `static MatrixBlock` | RDDAggregateUtils.`sumStable(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in)`
    `static MatrixBlock` | RDDAggregateUtils.`sumStable(org.apache.spark.api.java.JavaRDD<MatrixBlock> in)`

    Methods in org.apache.sysds.runtime.instructions.spark.utils that return types with arguments of type MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDAggregateUtils.`aggByKeyStable(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in, AggregateOperator aop)`
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDAggregateUtils.`aggByKeyStable(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in, AggregateOperator aop, boolean deepCopyCombiner)`
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDAggregateUtils.`aggByKeyStable(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in, AggregateOperator aop, int numPartitions, boolean deepCopyCombiner)`
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDConverterUtils.`binaryBlockToBinaryBlock(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in, DataCharacteristics mcIn, DataCharacteristics mcOut)`
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | FrameRDDConverterUtils.`binaryBlockToMatrixBlock(org.apache.spark.api.java.JavaPairRDD<Long,FrameBlock> input, DataCharacteristics mcIn, DataCharacteristics mcOut)`
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDConverterUtils.`binaryCellToBinaryBlock(org.apache.spark.api.java.JavaSparkContext sc, org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixCell> input, DataCharacteristics mcOut, boolean outputEmptyBlocks)`
    `Iterator<scala.Tuple2<MatrixIndexes,MatrixBlock>>` | RDDConverterUtils.BinaryCellToBinaryBlockFunction.`call(Iterator<scala.Tuple2<MatrixIndexes,MatrixCell>> arg0)`
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDConverterUtilsExt.`coordinateMatrixToBinaryBlock(org.apache.spark.api.java.JavaSparkContext sc, org.apache.spark.mllib.linalg.distributed.CoordinateMatrix input, DataCharacteristics mcIn, boolean outputEmptyBlocks)`
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDConverterUtilsExt.`coordinateMatrixToBinaryBlock(org.apache.spark.SparkContext sc, org.apache.spark.mllib.linalg.distributed.CoordinateMatrix input, DataCharacteristics mcIn, boolean outputEmptyBlocks)`
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | SparkUtils.`copyBinaryBlockMatrix(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in)` Creates a partitioning-preserving deep copy of the input matrix RDD, where the indexes and values are copied.
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | SparkUtils.`copyBinaryBlockMatrix(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in, boolean deep)` Creates a partitioning-preserving copy of the input matrix RDD.
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDConverterUtils.`csvToBinaryBlock(org.apache.spark.api.java.JavaSparkContext sc, org.apache.spark.api.java.JavaPairRDD<org.apache.hadoop.io.LongWritable,org.apache.hadoop.io.Text> input, DataCharacteristics mc, boolean hasHeader, String delim, boolean fill, double fillValue, Set<String> naStrings)`
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDConverterUtils.`csvToBinaryBlock(org.apache.spark.api.java.JavaSparkContext sc, org.apache.spark.api.java.JavaRDD<String> input, DataCharacteristics mcOut, boolean hasHeader, String delim, boolean fill, double fillValue, Set<String> naStrings)`
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDConverterUtils.`dataFrameToBinaryBlock(org.apache.spark.api.java.JavaSparkContext sc, org.apache.spark.sql.Dataset<org.apache.spark.sql.Row> df, DataCharacteristics mc, boolean containsID, boolean isVector)`
    `static scala.Tuple2<MatrixIndexes,MatrixBlock>` | SparkUtils.`fromIndexedMatrixBlock(IndexedMatrixValue in)`
    `static List<scala.Tuple2<MatrixIndexes,MatrixBlock>>` | SparkUtils.`fromIndexedMatrixBlock(List<IndexedMatrixValue> in)`
    `static Pair<MatrixIndexes,MatrixBlock>` | SparkUtils.`fromIndexedMatrixBlockToPair(IndexedMatrixValue in)`
    `static List<Pair<MatrixIndexes,MatrixBlock>>` | SparkUtils.`fromIndexedMatrixBlockToPair(List<IndexedMatrixValue> in)`
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | SparkUtils.`getEmptyBlockRDD(org.apache.spark.api.java.JavaSparkContext sc, DataCharacteristics mc)` Creates an RDD of empty blocks according to the given matrix characteristics.
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDConverterUtils.`libsvmToBinaryBlock(org.apache.spark.api.java.JavaSparkContext sc, org.apache.spark.api.java.JavaPairRDD<org.apache.hadoop.io.LongWritable,org.apache.hadoop.io.Text> input, DataCharacteristics mc, String delim, String indexDelim)`
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDAggregateUtils.`mergeByKey(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in)` Merges disjoint data of all blocks per key.
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDAggregateUtils.`mergeByKey(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in, boolean deepCopyCombiner)` Merges disjoint data of all blocks per key.
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDAggregateUtils.`mergeByKey(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in, int numPartitions, boolean deepCopyCombiner)` Merges disjoint data of all blocks per key.
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDAggregateUtils.`mergeRowsByKey(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,RowMatrixBlock> in)` Merges disjoint data of all blocks per key.
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDSortUtils.`sortByVal(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in, org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in2, long rlen, int blen)`
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDSortUtils.`sortByVal(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in, long rlen, int blen)`
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDSortUtils.`sortByVals(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in, long rlen, long clen, int blen)`
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDSortUtils.`sortDataByIx(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> data, org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> ixmap, long rlen, long clen, int blen)`
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDSortUtils.`sortDataByVal(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> val, org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> data, boolean asc, long rlen, long clen, int blen)`
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDSortUtils.`sortDataByValMemSort(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> val, org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> data, boolean asc, long rlen, long clen, int blen, SparkExecutionContext sec, ReorgOperator r_op)` This function collects and sorts value column in memory and then broadcasts it.
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDSortUtils.`sortDataByVals(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> val, org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> data, boolean asc, long rlen, long clen, long clen2, int blen)`
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDSortUtils.`sortIndexesByVal(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> val, boolean asc, long rlen, int blen)`
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDSortUtils.`sortIndexesByVals(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in, boolean asc, long rlen, long clen, int blen)`
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDAggregateUtils.`sumByKeyStable(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in)`
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDAggregateUtils.`sumByKeyStable(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in, boolean deepCopyCombiner)`
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDAggregateUtils.`sumByKeyStable(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in, int numPartitions, boolean deepCopyCombiner)`
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDConverterUtils.`textCellToBinaryBlock(org.apache.spark.api.java.JavaSparkContext sc, org.apache.spark.api.java.JavaPairRDD<org.apache.hadoop.io.LongWritable,org.apache.hadoop.io.Text> input, DataCharacteristics mcOut, boolean outputEmptyBlocks, FileFormatPropertiesMM mmProps)`

    Methods in org.apache.sysds.runtime.instructions.spark.utils with parameters of type MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `static void` | RDDConverterUtilsExt.`copyRowBlocks(MatrixBlock mb, int rowIndex, MatrixBlock ret, int numRowsPerBlock, int rlen, int clen)`
    `static void` | RDDConverterUtilsExt.`copyRowBlocks(MatrixBlock mb, int rowIndex, MatrixBlock ret, long numRowsPerBlock, long rlen, long clen)`
    `static void` | RDDConverterUtilsExt.`copyRowBlocks(MatrixBlock mb, long rowIndex, MatrixBlock ret, int numRowsPerBlock, int rlen, int clen)`
    `static void` | RDDConverterUtilsExt.`copyRowBlocks(MatrixBlock mb, long rowIndex, MatrixBlock ret, long numRowsPerBlock, long rlen, long clen)`
    `static void` | RDDConverterUtilsExt.`postProcessAfterCopying(MatrixBlock ret)`
    `static IndexedMatrixValue` | SparkUtils.`toIndexedMatrixBlock(MatrixIndexes ix, MatrixBlock mb)`

    Method parameters in org.apache.sysds.runtime.instructions.spark.utils with type arguments of type MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDAggregateUtils.`aggByKeyStable(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in, AggregateOperator aop)`
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDAggregateUtils.`aggByKeyStable(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in, AggregateOperator aop, boolean deepCopyCombiner)`
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDAggregateUtils.`aggByKeyStable(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in, AggregateOperator aop, int numPartitions, boolean deepCopyCombiner)`
    `static MatrixBlock` | RDDAggregateUtils.`aggStable(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in, AggregateOperator aop)` Single block aggregation over pair rdds with corrections for numerical stability.
    `static MatrixBlock` | RDDAggregateUtils.`aggStable(org.apache.spark.api.java.JavaRDD<MatrixBlock> in, AggregateOperator aop)` Single block aggregation over rdds with corrections for numerical stability.
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDConverterUtils.`binaryBlockToBinaryBlock(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in, DataCharacteristics mcIn, DataCharacteristics mcOut)`
    `static org.apache.spark.api.java.JavaRDD<String>` | RDDConverterUtils.`binaryBlockToCsv(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in, DataCharacteristics mcIn, FileFormatPropertiesCSV props, boolean strict)`
    `static org.apache.spark.sql.Dataset<org.apache.spark.sql.Row>` | RDDConverterUtils.`binaryBlockToDataFrame(org.apache.spark.sql.SparkSession sparkSession, org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in, DataCharacteristics mc, boolean toVector)`
    `static org.apache.spark.sql.Dataset<org.apache.spark.sql.Row>` | RDDConverterUtils.`binaryBlockToDataFrame(org.apache.spark.sql.SQLContext sqlContext, org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in, DataCharacteristics mc, boolean toVector)` Deprecated.
    `static org.apache.spark.api.java.JavaRDD<org.apache.spark.ml.feature.LabeledPoint>` | RDDConverterUtils.`binaryBlockToLabeledPoints(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in)` Converter from binary block rdd to rdd of labeled points.
    `static org.apache.spark.api.java.JavaRDD<String>` | RDDConverterUtils.`binaryBlockToLibsvm(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in, DataCharacteristics mcIn, FileFormatPropertiesLIBSVM props, boolean strict)`
    `static org.apache.spark.api.java.JavaRDD<String>` | RDDConverterUtils.`binaryBlockToTextCell(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in, DataCharacteristics mc)`
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | SparkUtils.`copyBinaryBlockMatrix(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in)` Creates a partitioning-preserving deep copy of the input matrix RDD, where the indexes and values are copied.
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | SparkUtils.`copyBinaryBlockMatrix(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in, boolean deep)` Creates a partitioning-preserving copy of the input matrix RDD.
    `static long` | SparkUtils.`getNonZeros(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> input)`
    `static org.apache.spark.api.java.JavaPairRDD<org.apache.hadoop.io.LongWritable,FrameBlock>` | FrameRDDConverterUtils.`matrixBlockToBinaryBlock(org.apache.spark.api.java.JavaSparkContext sc, org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> input, DataCharacteristics mcIn)`
    `static org.apache.spark.api.java.JavaPairRDD<Long,FrameBlock>` | FrameRDDConverterUtils.`matrixBlockToBinaryBlockLongIndex(org.apache.spark.api.java.JavaSparkContext sc, org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> input, DataCharacteristics dcIn)`
    `static double` | RDDAggregateUtils.`max(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in)`
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDAggregateUtils.`mergeByKey(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in)` Merges disjoint data of all blocks per key.
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDAggregateUtils.`mergeByKey(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in, boolean deepCopyCombiner)` Merges disjoint data of all blocks per key.
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDAggregateUtils.`mergeByKey(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in, int numPartitions, boolean deepCopyCombiner)` Merges disjoint data of all blocks per key.
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDSortUtils.`sortByVal(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in, org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in2, long rlen, int blen)`
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDSortUtils.`sortByVal(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in, org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in2, long rlen, int blen)`
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDSortUtils.`sortByVal(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in, long rlen, int blen)`
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDSortUtils.`sortByVals(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in, long rlen, long clen, int blen)`
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDSortUtils.`sortDataByIx(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> data, org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> ixmap, long rlen, long clen, int blen)`
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDSortUtils.`sortDataByIx(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> data, org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> ixmap, long rlen, long clen, int blen)`
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDSortUtils.`sortDataByVal(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> val, org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> data, boolean asc, long rlen, long clen, int blen)`
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDSortUtils.`sortDataByVal(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> val, org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> data, boolean asc, long rlen, long clen, int blen)`
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDSortUtils.`sortDataByValMemSort(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> val, org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> data, boolean asc, long rlen, long clen, int blen, SparkExecutionContext sec, ReorgOperator r_op)` This function collects and sorts value column in memory and then broadcasts it.
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDSortUtils.`sortDataByValMemSort(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> val, org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> data, boolean asc, long rlen, long clen, int blen, SparkExecutionContext sec, ReorgOperator r_op)` This function collects and sorts value column in memory and then broadcasts it.
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDSortUtils.`sortDataByVals(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> val, org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> data, boolean asc, long rlen, long clen, long clen2, int blen)`
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDSortUtils.`sortDataByVals(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> val, org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> data, boolean asc, long rlen, long clen, long clen2, int blen)`
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDSortUtils.`sortIndexesByVal(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> val, boolean asc, long rlen, int blen)`
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDSortUtils.`sortIndexesByVals(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in, boolean asc, long rlen, long clen, int blen)`
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDAggregateUtils.`sumByKeyStable(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in)`
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDAggregateUtils.`sumByKeyStable(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in, boolean deepCopyCombiner)`
    `static org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock>` | RDDAggregateUtils.`sumByKeyStable(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in, int numPartitions, boolean deepCopyCombiner)`
    `static MatrixBlock` | RDDAggregateUtils.`sumStable(org.apache.spark.api.java.JavaPairRDD<MatrixIndexes,MatrixBlock> in)`
    `static MatrixBlock` | RDDAggregateUtils.`sumStable(org.apache.spark.api.java.JavaRDD<MatrixBlock> in)`
    `static IndexedMatrixValue` | SparkUtils.`toIndexedMatrixBlock(scala.Tuple2<MatrixIndexes,MatrixBlock> in)`

  - ### Uses of MatrixBlock in org.apache.sysds.runtime.io

    Methods in org.apache.sysds.runtime.io that return MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `static MatrixBlock[]` | MatrixWriter.`createMatrixBlocksForReuse(long rlen, long clen, int blen, boolean sparse, long nonZeros)`
    `MatrixBlock` | BinaryBlockSerialization.MatrixBlockDeserializer.`deserialize(MatrixBlock mb)`
    `static MatrixBlock` | MatrixWriter.`getMatrixBlockForReuse(MatrixBlock[] blocks, int rows, int cols, int blen)`
    `MatrixBlock` | ReaderTextLIBSVMParallel.`readMatrixFromHDFS(String fname, long rlen, long clen, int blen, long estnnz)`
    `MatrixBlock` | ReaderTextCell.`readMatrixFromHDFS(String fname, long rlen, long clen, int blen, long estnnz)`
    `MatrixBlock` | ReaderBinaryBlock.`readMatrixFromHDFS(String fname, long rlen, long clen, int blen, long estnnz)`
    `MatrixBlock` | ReaderTextCSV.`readMatrixFromHDFS(String fname, long rlen, long clen, int blen, long estnnz)`
    `abstract MatrixBlock` | MatrixReader.`readMatrixFromHDFS(String fname, long rlen, long clen, int blen, long estnnz)`
    `MatrixBlock` | ReaderBinaryBlockParallel.`readMatrixFromHDFS(String fname, long rlen, long clen, int blen, long estnnz)`
    `MatrixBlock` | ReaderTextLIBSVM.`readMatrixFromHDFS(String fname, long rlen, long clen, int blen, long estnnz)`
    `MatrixBlock` | ReaderTextCSVParallel.`readMatrixFromHDFS(String fname, long rlen, long clen, int blen, long estnnz)`
    `MatrixBlock` | ReaderTextLIBSVMParallel.`readMatrixFromInputStream(InputStream is, long rlen, long clen, int blen, long estnnz)`
    `MatrixBlock` | ReaderTextCell.`readMatrixFromInputStream(InputStream is, long rlen, long clen, int blen, long estnnz)`
    `MatrixBlock` | ReaderBinaryBlock.`readMatrixFromInputStream(InputStream is, long rlen, long clen, int blen, long estnnz)`
    `MatrixBlock` | ReaderTextCSV.`readMatrixFromInputStream(InputStream is, long rlen, long clen, int blen, long estnnz)`
    `abstract MatrixBlock` | MatrixReader.`readMatrixFromInputStream(InputStream is, long rlen, long clen, int blen, long estnnz)`
    `MatrixBlock` | ReaderTextLIBSVM.`readMatrixFromInputStream(InputStream is, long rlen, long clen, int blen, long estnnz)`
    `MatrixBlock` | ReaderTextCSVParallel.`readMatrixFromInputStream(InputStream is, long rlen, long clen, int blen, long estnnz)`

    Methods in org.apache.sysds.runtime.io that return types with arguments of type MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `org.apache.hadoop.io.serializer.Deserializer<MatrixBlock>` | BinaryBlockSerialization.`getDeserializer(Class arg0)`
    `org.apache.hadoop.io.serializer.Serializer<MatrixBlock>` | BinaryBlockSerialization.`getSerializer(Class arg0)`

    Methods in org.apache.sysds.runtime.io with parameters of type MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `MatrixBlock` | BinaryBlockSerialization.MatrixBlockDeserializer.`deserialize(MatrixBlock mb)`
    `void` | ReaderTextCellParallel.CellBuffer.`flushCellBufferToMatrixBlock(MatrixBlock dest)`
    `static MatrixBlock` | MatrixWriter.`getMatrixBlockForReuse(MatrixBlock[] blocks, int rows, int cols, int blen)`
    `void` | BinaryBlockSerialization.MatrixBlockSerializer.`serialize(MatrixBlock mb)`
    `void` | MatrixWriter.`writeMatrixToHDFS(MatrixBlock src, String fname, long rlen, long clen, int blen, long nnz)`
    `void` | WriterTextCSV.`writeMatrixToHDFS(MatrixBlock src, String fname, long rlen, long clen, int blen, long nnz, boolean diag)`
    `void` | WriterMatrixMarket.`writeMatrixToHDFS(MatrixBlock src, String fname, long rlen, long clen, int blen, long nnz, boolean diag)`
    `void` | WriterBinaryBlock.`writeMatrixToHDFS(MatrixBlock src, String fname, long rlen, long clen, int blen, long nnz, boolean diag)`
    `abstract void` | MatrixWriter.`writeMatrixToHDFS(MatrixBlock src, String fname, long rlen, long clen, int blen, long nnz, boolean diag)`
    `void` | WriterTextLIBSVM.`writeMatrixToHDFS(MatrixBlock src, String fname, long rlen, long clen, int blen, long nnz, boolean diag)`
    `void` | WriterTextCell.`writeMatrixToHDFS(MatrixBlock src, String fname, long rlen, long clen, int blen, long nnz, boolean diag)`

    Constructors in org.apache.sysds.runtime.io with parameters of type MatrixBlock
    Constructor and Description
    `ReadTask(org.apache.hadoop.mapred.InputSplit split, org.apache.hadoop.mapred.TextInputFormat informat, org.apache.hadoop.mapred.JobConf job, MatrixBlock dest, long rlen, long clen, boolean mm, FileFormatPropertiesMM mmProps)`

  - ### Uses of MatrixBlock in org.apache.sysds.runtime.lineage

    Methods in org.apache.sysds.runtime.lineage that return MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `static MatrixBlock` | LineageCache.`getMatrix(LineageItem key)`
    `MatrixBlock` | LineageCacheEntry.`getMBValue()`

    Methods in org.apache.sysds.runtime.lineage with parameters of type MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `void` | LineageCacheEntry.`setValue(MatrixBlock val)`
    `void` | LineageCacheEntry.`setValue(MatrixBlock val, long computetime)`

    Constructors in org.apache.sysds.runtime.lineage with parameters of type MatrixBlock
    Constructor and Description
    `LineageCacheEntry(LineageItem key, Types.DataType dt, MatrixBlock Mval, ScalarObject Sval, long computetime)`

  - ### Uses of MatrixBlock in org.apache.sysds.runtime.matrix.data

    Fields in org.apache.sysds.runtime.matrix.data declared as MatrixBlock
    Modifier and Type | Field and Description
    --- | ---
    `MatrixBlock` | DnnParameters.`bias`
    `MatrixBlock` | DnnParameters.`input1`
    `MatrixBlock` | DnnParameters.`input2`
    `MatrixBlock` | DnnParameters.`output`

    Methods in org.apache.sysds.runtime.matrix.data that return MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `MatrixBlock` | MatrixBlock.`aggregateBinaryOperations(MatrixBlock m1, MatrixBlock m2, MatrixBlock ret, AggregateBinaryOperator op)`
    `MatrixBlock` | MatrixBlock.`aggregateBinaryOperations(MatrixIndexes m1Index, MatrixBlock m1, MatrixIndexes m2Index, MatrixBlock m2, MatrixBlock ret, AggregateBinaryOperator op)`
    `static MatrixBlock` | LibMatrixAgg.`aggregateTernary(MatrixBlock in1, MatrixBlock in2, MatrixBlock in3, MatrixBlock ret, AggregateTernaryOperator op)`
    `static MatrixBlock` | LibMatrixAgg.`aggregateTernary(MatrixBlock in1, MatrixBlock in2, MatrixBlock in3, MatrixBlock ret, AggregateTernaryOperator op, int k)`
    `MatrixBlock` | MatrixBlock.`aggregateTernaryOperations(MatrixBlock m1, MatrixBlock m2, MatrixBlock m3, MatrixBlock ret, AggregateTernaryOperator op, boolean inCP)`
    `MatrixBlock` | MatrixBlock.`aggregateUnaryOperations(AggregateUnaryOperator op, MatrixValue result, int blen, MatrixIndexes indexesIn)`
    `MatrixBlock` | MatrixBlock.`aggregateUnaryOperations(AggregateUnaryOperator op, MatrixValue result, int blen, MatrixIndexes indexesIn, boolean inCP)`
    `MatrixBlock` | MatrixBlock.`allocateBlock()`
    `MatrixBlock` | MatrixBlock.`allocateDenseBlock()`
    `MatrixBlock` | MatrixBlock.`append(MatrixBlock[] that, MatrixBlock ret, boolean cbind)`
    `MatrixBlock` | MatrixBlock.`append(MatrixBlock that, MatrixBlock ret)`
    `MatrixBlock` | MatrixBlock.`append(MatrixBlock that, MatrixBlock ret, boolean cbind)`
    `MatrixBlock` | MatrixBlock.`binaryOperations(BinaryOperator op, MatrixValue thatValue, MatrixValue result)`
    `MatrixBlock` | MatrixBlock.`binaryOperationsInPlace(BinaryOperator op, MatrixValue thatValue)`
    `MatrixBlock` | MatrixBlock.`chainMatrixMultOperations(MatrixBlock v, MatrixBlock w, MatrixBlock out, MapMultChain.ChainType ctype)`
    `MatrixBlock` | MatrixBlock.`chainMatrixMultOperations(MatrixBlock v, MatrixBlock w, MatrixBlock out, MapMultChain.ChainType ctype, int k)`
    `MatrixBlock` | MatrixBlock.`copyShallow(MatrixBlock that)`
    `MatrixBlock` | MatrixBlock.`ctableSeqOperations(MatrixValue thatMatrix, double thatScalar, MatrixBlock resultBlock)` D = ctable(seq,A,w) this <- seq; thatMatrix <- A; thatScalar <- w; result <- D (i1,j1,v1) from input1 (this) (i1,j1,v2) from input2 (that) (w) from scalar_input3 (scalarThat2)
    `MatrixBlock` | MatrixBlock.`ctableSeqOperations(MatrixValue thatMatrix, double thatScalar, MatrixBlock resultBlock, boolean updateClen)`
    `static MatrixBlock` | LibMatrixAgg.`cumaggregateUnaryMatrix(MatrixBlock in, MatrixBlock out, UnaryOperator uop)`
    `static MatrixBlock` | LibMatrixAgg.`cumaggregateUnaryMatrix(MatrixBlock in, MatrixBlock out, UnaryOperator uop, double[] agg)`
    `static MatrixBlock` | LibMatrixAgg.`cumaggregateUnaryMatrix(MatrixBlock in, MatrixBlock out, UnaryOperator uop, int k)`
    `static MatrixBlock` | LibMatrixReorg.`diag(MatrixBlock in, MatrixBlock out)`
    `MatrixBlock` | MatrixBlock.`extractTriangular(MatrixBlock ret, boolean lower, boolean diag, boolean values)`
    `MatrixBlock` | MatrixBlock.`groupedAggOperations(MatrixValue tgt, MatrixValue wghts, MatrixValue ret, int ngroups, Operator op)` Invocation from CP instructions.
    `MatrixBlock` | MatrixBlock.`groupedAggOperations(MatrixValue tgt, MatrixValue wghts, MatrixValue ret, int ngroups, Operator op, int k)`
    `MatrixBlock` | MatrixBlock.`leftIndexingOperations(MatrixBlock rhsMatrix, IndexRange ixrange, MatrixBlock ret, MatrixObject.UpdateType update)`
    `MatrixBlock` | MatrixBlock.`leftIndexingOperations(MatrixBlock rhsMatrix, int rl, int ru, int cl, int cu, MatrixBlock ret, MatrixObject.UpdateType update)`
    `MatrixBlock` | MatrixBlock.`leftIndexingOperations(ScalarObject scalar, int rl, int cl, MatrixBlock ret, MatrixObject.UpdateType update)` Explicitly allow left indexing for scalars.
    `static MatrixBlock` | OperationsOnMatrixValues.`matMult(MatrixBlock value1, MatrixBlock value2, MatrixBlock valueOut, AggregateBinaryOperator op)`
    `static MatrixBlock` | OperationsOnMatrixValues.`matMult(MatrixIndexes indexes1, MatrixBlock value1, MatrixIndexes indexes2, MatrixBlock value2, MatrixIndexes indexesOut, MatrixBlock valueOut, AggregateBinaryOperator op)`
    `static MatrixBlock` | LibCommonsMath.`matrixMatrixOperations(MatrixBlock in1, MatrixBlock in2, String opcode)`
    `static MatrixBlock[]` | LibCommonsMath.`multiReturnOperations(MatrixBlock in, String opcode)`
    `static MatrixBlock` | MatrixBlock.`naryOperations(Operator op, MatrixBlock[] matrices, ScalarObject[] scalars, MatrixBlock ret)`
    `MatrixBlock` | MatrixBlock.`pickValues(MatrixValue quantiles, MatrixValue ret)`
    `MatrixBlock` | MatrixBlock.`prepareAggregateUnaryOutput(AggregateUnaryOperator op, MatrixValue result, int blen)`
    `static MatrixBlock` | LibMatrixMult.`prepMatrixMultTransposeSelfInput(MatrixBlock m1, boolean leftTranspose, boolean par)`
    `MatrixBlock` | MatrixBlock.`quaternaryOperations(QuaternaryOperator qop, MatrixBlock um, MatrixBlock vm, MatrixBlock wm, MatrixBlock out)`
    `MatrixBlock` | MatrixBlock.`quaternaryOperations(QuaternaryOperator qop, MatrixBlock U, MatrixBlock V, MatrixBlock wm, MatrixBlock out, int k)`
    `static MatrixBlock` | MatrixBlock.`randOperations(int rows, int cols, double sparsity, double min, double max, String pdf, long seed)` Function to generate the random matrix with specified dimensions (block sizes are not specified).
    `static MatrixBlock` | MatrixBlock.`randOperations(int rows, int cols, double sparsity, double min, double max, String pdf, long seed, int k)` Function to generate the random matrix with specified dimensions (block sizes are not specified).
    `static MatrixBlock` | MatrixBlock.`randOperations(RandomMatrixGenerator rgen, long seed)` Function to generate the random matrix with specified dimensions and block dimensions.
    `static MatrixBlock` | MatrixBlock.`randOperations(RandomMatrixGenerator rgen, long seed, int k)` Function to generate the random matrix with specified dimensions and block dimensions.
    `MatrixBlock` | MatrixBlock.`randOperationsInPlace(RandomMatrixGenerator rgen, org.apache.commons.math3.random.Well1024a bigrand, long bSeed)` Function to generate a matrix of random numbers.
    `MatrixBlock` | MatrixBlock.`randOperationsInPlace(RandomMatrixGenerator rgen, org.apache.commons.math3.random.Well1024a bigrand, long bSeed, int k)` Function to generate a matrix of random numbers.
    `MatrixBlock` | MatrixBlock.`removeEmptyOperations(MatrixBlock ret, boolean rows, boolean emptyReturn)`
    `MatrixBlock` | MatrixBlock.`removeEmptyOperations(MatrixBlock ret, boolean rows, boolean emptyReturn, MatrixBlock select)`
    `static MatrixBlock` | LibMatrixReorg.`reorg(MatrixBlock in, MatrixBlock out, ReorgOperator op)`
    `static MatrixBlock` | LibMatrixReorg.`reorgInPlace(MatrixBlock in, ReorgOperator op)`
    `MatrixBlock` | MatrixBlock.`reorgOperations(ReorgOperator op, MatrixValue ret, int startRow, int startColumn, int length)`
    `MatrixBlock` | MatrixBlock.`replaceOperations(MatrixValue result, double pattern, double replacement)`
    `static MatrixBlock` | LibMatrixReorg.`reshape(MatrixBlock in, MatrixBlock out, int rows, int cols, boolean rowwise)` CP reshape operation (single input, single output matrix) NOTE: In contrast to R, the rowwise parameter specifies both the read and write order, with row-wise being the default, while R uses always a column-wise read, rowwise specifying the write order and column-wise being the default.
    `static MatrixBlock` | LibMatrixReorg.`rev(MatrixBlock in, MatrixBlock out)`
    `static MatrixBlock` | LibMatrixReorg.`rexpand(MatrixBlock in, MatrixBlock ret, double max, boolean rows, boolean cast, boolean ignore, int k)` CP rexpand operation (single input, single output)
    `MatrixBlock` | MatrixBlock.`rexpandOperations(MatrixBlock ret, double max, boolean rows, boolean cast, boolean ignore, int k)`
    `static MatrixBlock` | LibMatrixReorg.`rmempty(MatrixBlock in, MatrixBlock ret, boolean rows, boolean emptyReturn, MatrixBlock select)` CP rmempty operation (single input, single output matrix)
    `static MatrixBlock` | MatrixBlock.`sampleOperations(long range, int size, boolean replace, long seed)`
    `MatrixBlock` | MatrixBlock.`scalarOperations(ScalarOperator op, MatrixValue result)`
    `static MatrixBlock` | MatrixBlock.`seqOperations(double from, double to, double incr)` Method to generate a sequence according to the given parameters.
    `MatrixBlock` | MatrixBlock.`seqOperationsInPlace(double from, double to, double incr)`
    `MatrixBlock` | MatrixBlock.`slice(IndexRange ixrange, MatrixBlock ret)`
    `MatrixBlock` | MatrixBlock.`slice(int rl, int ru)` Slice out a row block
    `MatrixBlock` | MatrixBlock.`slice(int rl, int ru, boolean deep)`
    `MatrixBlock` | MatrixBlock.`slice(int rl, int ru, int cl, int cu)`
    `MatrixBlock` | MatrixBlock.`slice(int rl, int ru, int cl, int cu, boolean deep)`
    `MatrixBlock` | MatrixBlock.`slice(int rl, int ru, int cl, int cu, boolean deep, CacheBlock ret)` Method to perform rightIndex operation for a given lower and upper bounds in row and column dimensions.
    `MatrixBlock` | MatrixBlock.`slice(int rl, int ru, int cl, int cu, CacheBlock ret)`
    `static MatrixBlock` | LibMatrixReorg.`sort(MatrixBlock in, MatrixBlock out, int[] by, boolean desc, boolean ixret)`
    `static MatrixBlock` | LibMatrixReorg.`sort(MatrixBlock in, MatrixBlock out, int[] by, boolean desc, boolean ixret, int k)`
    `MatrixBlock` | MatrixBlock.`sortOperations(MatrixValue weights, MatrixBlock result)`
    `MatrixBlock` | MatrixBlock.`ternaryOperations(TernaryOperator op, MatrixBlock m2, MatrixBlock m3, MatrixBlock ret)`
    `MatrixBlock` | CTableMap.`toMatrixBlock(int rlen, int clen)`
    `static MatrixBlock` | LibMatrixReorg.`transpose(MatrixBlock in, MatrixBlock out)`
    `static MatrixBlock` | LibMatrixReorg.`transpose(MatrixBlock in, MatrixBlock out, int k)`
    `static MatrixBlock` | LibMatrixReorg.`transposeInPlace(MatrixBlock in, int k)`
    `MatrixBlock` | MatrixBlock.`transposeSelfMatrixMultOperations(MatrixBlock out, MMTSJ.MMTSJType tstype)`
    `MatrixBlock` | MatrixBlock.`transposeSelfMatrixMultOperations(MatrixBlock out, MMTSJ.MMTSJType tstype, int k)`
    `MatrixBlock` | MatrixBlock.`uaggouterchainOperations(MatrixBlock mbLeft, MatrixBlock mbRight, MatrixBlock mbOut, BinaryOperator bOp, AggregateUnaryOperator uaggOp)`
    `static MatrixBlock` | LibCommonsMath.`unaryOperations(MatrixBlock inj, String opcode)`
    `MatrixBlock` | MatrixBlock.`unaryOperations(UnaryOperator op, MatrixValue result)`
    `MatrixBlock` | MatrixBlock.`zeroOutOperations(MatrixValue result, IndexRange range, boolean complementary)`

    Methods in org.apache.sysds.runtime.matrix.data that return types with arguments of type MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `Future<MatrixBlock>` | MatrixBlock.`allocateBlockAsync()`

    Methods in org.apache.sysds.runtime.matrix.data with parameters of type MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `static void` | LibMatrixAgg.`aggregateBinaryMatrix(MatrixBlock in, MatrixBlock aggVal, AggregateOperator aop)` Core incremental matrix aggregate (ak+) as used for uack+ and acrk+.
    `static void` | LibMatrixAgg.`aggregateBinaryMatrix(MatrixBlock in, MatrixBlock aggVal, MatrixBlock aggCorr, boolean deep)` Core incremental matrix aggregate (ak+) as used in mapmult, tsmm, cpmm, etc.
    `MatrixBlock` | MatrixBlock.`aggregateBinaryOperations(MatrixBlock m1, MatrixBlock m2, MatrixBlock ret, AggregateBinaryOperator op)`
    `MatrixBlock` | MatrixBlock.`aggregateBinaryOperations(MatrixIndexes m1Index, MatrixBlock m1, MatrixIndexes m2Index, MatrixBlock m2, MatrixBlock ret, AggregateBinaryOperator op)`
    `static void` | LibMatrixOuterAgg.`aggregateMatrix(MatrixBlock in1Val, MatrixBlock outVal, double[] bv, int[] bvi, BinaryOperator bOp, AggregateUnaryOperator uaggOp)`
    `static MatrixBlock` | LibMatrixAgg.`aggregateTernary(MatrixBlock in1, MatrixBlock in2, MatrixBlock in3, MatrixBlock ret, AggregateTernaryOperator op)`
    `static MatrixBlock` | LibMatrixAgg.`aggregateTernary(MatrixBlock in1, MatrixBlock in2, MatrixBlock in3, MatrixBlock ret, AggregateTernaryOperator op, int k)`
    `MatrixBlock` | MatrixBlock.`aggregateTernaryOperations(MatrixBlock m1, MatrixBlock m2, MatrixBlock m3, MatrixBlock ret, AggregateTernaryOperator op, boolean inCP)`
    `static void` | LibMatrixAgg.`aggregateUnaryMatrix(MatrixBlock in, MatrixBlock out, AggregateUnaryOperator uaop)`
    `static void` | LibMatrixAgg.`aggregateUnaryMatrix(MatrixBlock in, MatrixBlock out, AggregateUnaryOperator uaop, int k)`
    `MatrixBlock` | MatrixBlock.`append(MatrixBlock[] that, MatrixBlock ret, boolean cbind)`
    `MatrixBlock` | MatrixBlock.`append(MatrixBlock[] that, MatrixBlock ret, boolean cbind)`
    `MatrixBlock` | MatrixBlock.`append(MatrixBlock that, MatrixBlock ret)`
    `MatrixBlock` | MatrixBlock.`append(MatrixBlock that, MatrixBlock ret, boolean cbind)`
    `void` | MatrixBlock.`appendRowToSparse(SparseBlock dest, MatrixBlock src, int i, int rowoffset, int coloffset, boolean deep)`
    `void` | MatrixBlock.`appendToSparse(MatrixBlock that, int rowoffset, int coloffset)`
    `void` | MatrixBlock.`appendToSparse(MatrixBlock that, int rowoffset, int coloffset, boolean deep)`
    `static void` | LibMatrixDNN.`batchNorm2D(MatrixBlock image, MatrixBlock scale, MatrixBlock bias, MatrixBlock runningMean, MatrixBlock runningVar, String phase, double epsilon, double mu, MatrixBlock ret, MatrixBlock retRunningMean, MatrixBlock retRunningVar, MatrixBlock resultSaveMean, MatrixBlock resultSaveInvVariance)`
    `static void` | LibMatrixDNN.`batchNorm2DBackward(MatrixBlock image, MatrixBlock dout, MatrixBlock scale, double epsilon, MatrixBlock resultSaveMean, MatrixBlock resultSaveInvVariance, MatrixBlock dX, MatrixBlock dScale, MatrixBlock dBias)`
    `static void` | LibMatrixDNN.`biasAdd(MatrixBlock input, MatrixBlock bias, MatrixBlock outputBlock, int numThreads)` Performs the operation corresponding to the DML script: ones = matrix(1, rows=1, cols=Hout*Wout) output = input + matrix(bias %*% ones, rows=1, cols=F*Hout*Wout) This operation is often followed by conv2d and hence we have introduced bias_add(input, bias) built-in function
    `static void` | LibMatrixDNN.`biasMultiply(MatrixBlock input, MatrixBlock bias, MatrixBlock outputBlock, int numThreads)` Performs the operation corresponding to the DML script: ones = matrix(1, rows=1, cols=Hout*Wout) output = input * matrix(bias %*% ones, rows=1, cols=F*Hout*Wout) This operation is often followed by conv2d and hence we have introduced bias_multiply(input, bias) built-in function
    `static void` | LibMatrixBincell.`bincellOp(MatrixBlock m1, MatrixBlock m2, MatrixBlock ret, BinaryOperator op)` matrix-matrix binary operations, MM, MV
    `static void` | LibMatrixBincell.`bincellOp(MatrixBlock m1, MatrixBlock m2, MatrixBlock ret, BinaryOperator op, int k)`
    `static void` | LibMatrixBincell.`bincellOp(MatrixBlock m1, MatrixBlock ret, ScalarOperator op)` matrix-scalar, scalar-matrix binary operations.
    `static void` | LibMatrixBincell.`bincellOp(MatrixBlock m1, MatrixBlock ret, ScalarOperator op, int k)`
    `static void` | LibMatrixBincell.`bincellOpInPlace(MatrixBlock m1ret, MatrixBlock m2, BinaryOperator op)` NOTE: operations in place always require m1 and m2 to be of equal dimensions
    `MatrixBlock` | MatrixBlock.`chainMatrixMultOperations(MatrixBlock v, MatrixBlock w, MatrixBlock out, MapMultChain.ChainType ctype)`
    `MatrixBlock` | MatrixBlock.`chainMatrixMultOperations(MatrixBlock v, MatrixBlock w, MatrixBlock out, MapMultChain.ChainType ctype, int k)`
    `static void` | LibMatrixDNN.`channelSums(MatrixBlock input, MatrixBlock outputBlock, int C, int HW)` Perform channel sum operation
    `CM_COV_Object` | MatrixBlock.`cmOperations(CMOperator op, MatrixBlock weights)`
    `static void` | LibMatrixDNNIm2Col.`col2imOverSingleImage(int outputN, MatrixBlock input, DnnParameters params)`
    `static void` | LibMatrixDNN.`conv2d(MatrixBlock input, MatrixBlock filter, MatrixBlock outputBlock, DnnParameters params)` This method performs convolution (i.e.
    `static void` | LibMatrixNative.`conv2d(MatrixBlock input, MatrixBlock filter, MatrixBlock outputBlock, DnnParameters params)` This method performs convolution (i.e.
    `static void` | LibMatrixDNN.`conv2dBackwardData(MatrixBlock filter, MatrixBlock dout, MatrixBlock outputBlock, DnnParameters params)` This method computes the backpropogation errors for previous layer of convolution operation
    `static void` | LibMatrixNative.`conv2dBackwardData(MatrixBlock filter, MatrixBlock dout, MatrixBlock outputBlock, DnnParameters params)` This method computes the backpropagation errors for previous layer of convolution operation
    `static void` | LibMatrixDNN.`conv2dBackwardFilter(MatrixBlock input, MatrixBlock dout, MatrixBlock outputBlock, DnnParameters params)` This method computes the backpropogation errors for filter of convolution operation
    `static void` | LibMatrixNative.`conv2dBackwardFilter(MatrixBlock input, MatrixBlock dout, MatrixBlock outputBlock, DnnParameters params)` This method computes the backpropogation errors for filter of convolution operation
    `void` | BinaryBlockToTextCellConverter.`convert(MatrixIndexes k1, MatrixBlock v1)` Before calling convert, please make sure to setBlockSize(blen, blen);
    `void` | MatrixBlock.`copy(int rl, int ru, int cl, int cu, MatrixBlock src, boolean awareDestNZ)` In-place copy of matrix src into the index range of the existing current matrix.
    `MatrixBlock` | MatrixBlock.`copyShallow(MatrixBlock that)`
    `static long` | LibMatrixMult.`copyUpperToLowerTriangle(MatrixBlock ret)` Used for all version of TSMM where the result is known to be symmetric.
    `CM_COV_Object` | MatrixBlock.`covOperations(COVOperator op, MatrixBlock that)`
    `CM_COV_Object` | MatrixBlock.`covOperations(COVOperator op, MatrixBlock that, MatrixBlock weights)`
    `abstract void` | MatrixValue.`ctableOperations(Operator op, double scalar_that, double scalar_that2, CTableMap resultMap, MatrixBlock resultBlock)`
    `void` | MatrixCell.`ctableOperations(Operator op, double scalarThat, double scalarThat2, CTableMap resultMap, MatrixBlock resultBlock)`
    `void` | MatrixBlock.`ctableOperations(Operator op, double scalarThat, double scalarThat2, CTableMap resultMap, MatrixBlock resultBlock)` D = ctable(A,v2,w) this <- A; scalar_that <- v2; scalar_that2 <- w; result <- D (i1,j1,v1) from input1 (this) (v2) from sclar_input2 (scalarThat) (w) from scalar_input3 (scalarThat2)
    `void` | CM_N_COVCell.`ctableOperations(Operator op, double scalarThat, double scalarThat2, CTableMap resultMap, MatrixBlock resultBlock)`
    `abstract void` | MatrixValue.`ctableOperations(Operator op, double scalarThat, MatrixValue that2, CTableMap ctableResult, MatrixBlock ctableResultBlock)`
    `void` | MatrixCell.`ctableOperations(Operator op, double scalarThat, MatrixValue that2, CTableMap resultMap, MatrixBlock resultBlock)`
    `void` | MatrixBlock.`ctableOperations(Operator op, double scalarThat, MatrixValue that2Val, CTableMap resultMap, MatrixBlock resultBlock)` D = ctable(A,v2,W) this <- A; scalarThat <- v2; that2 <- W; result <- D (i1,j1,v1) from input1 (this) (v2) from sclar_input2 (scalarThat) (i3,j3,w) from input3 (that2)
    `void` | CM_N_COVCell.`ctableOperations(Operator op, double scalarThat, MatrixValue that2, CTableMap resultMap, MatrixBlock resultBlock)`
    `abstract void` | MatrixValue.`ctableOperations(Operator op, MatrixIndexes ix1, double scalar_that, boolean left, int blen, CTableMap resultMap, MatrixBlock resultBlock)`
    `void` | MatrixCell.`ctableOperations(Operator op, MatrixIndexes ix1, double scalarThat, boolean left, int blen, CTableMap resultMap, MatrixBlock resultBlock)`
    `void` | MatrixBlock.`ctableOperations(Operator op, MatrixIndexes ix1, double scalarThat, boolean left, int blen, CTableMap resultMap, MatrixBlock resultBlock)` Specific ctable case of ctable(seq(...),X), where X is the only matrix input.
    `void` | CM_N_COVCell.`ctableOperations(Operator op, MatrixIndexes ix1, double scalarThat, boolean left, int blen, CTableMap resultMap, MatrixBlock resultBlock)`
    `abstract void` | MatrixValue.`ctableOperations(Operator op, MatrixValue that, double scalar_that2, boolean ignoreZeros, CTableMap resultMap, MatrixBlock resultBlock)`
    `void` | MatrixCell.`ctableOperations(Operator op, MatrixValue that, double scalarThat2, boolean ignoreZeros, CTableMap ctableResult, MatrixBlock ctableResultBlock)`
    `void` | MatrixBlock.`ctableOperations(Operator op, MatrixValue thatVal, double scalarThat2, boolean ignoreZeros, CTableMap resultMap, MatrixBlock resultBlock)` D = ctable(A,B,w) this <- A; that <- B; scalar_that2 <- w; result <- D (i1,j1,v1) from input1 (this) (i1,j1,v2) from input2 (that) (w) from scalar_input3 (scalarThat2) NOTE: This method supports both vectors and matrices.
    `void` | CM_N_COVCell.`ctableOperations(Operator op, MatrixValue that, double scalarThat2, boolean ignoreZeros, CTableMap resultMap, MatrixBlock resultBlock)`
    `abstract void` | MatrixValue.`ctableOperations(Operator op, MatrixValue that, MatrixValue that2, CTableMap resultMap, MatrixBlock resultBlock)`
    `void` | MatrixCell.`ctableOperations(Operator op, MatrixValue that, MatrixValue that2, CTableMap resultMap, MatrixBlock resultBlock)`
    `void` | MatrixBlock.`ctableOperations(Operator op, MatrixValue thatVal, MatrixValue that2Val, CTableMap resultMap, MatrixBlock resultBlock)`
    `void` | CM_N_COVCell.`ctableOperations(Operator op, MatrixValue that, MatrixValue that2, CTableMap resultMap, MatrixBlock resultBlock)`
    `MatrixBlock` | MatrixBlock.`ctableSeqOperations(MatrixValue thatMatrix, double thatScalar, MatrixBlock resultBlock)` D = ctable(seq,A,w) this <- seq; thatMatrix <- A; thatScalar <- w; result <- D (i1,j1,v1) from input1 (this) (i1,j1,v2) from input2 (that) (w) from scalar_input3 (scalarThat2)
    `MatrixBlock` | MatrixBlock.`ctableSeqOperations(MatrixValue thatMatrix, double thatScalar, MatrixBlock resultBlock, boolean updateClen)`
    `static MatrixBlock` | LibMatrixAgg.`cumaggregateUnaryMatrix(MatrixBlock in, MatrixBlock out, UnaryOperator uop)`
    `static MatrixBlock` | LibMatrixAgg.`cumaggregateUnaryMatrix(MatrixBlock in, MatrixBlock out, UnaryOperator uop, double[] agg)`
    `static MatrixBlock` | LibMatrixAgg.`cumaggregateUnaryMatrix(MatrixBlock in, MatrixBlock out, UnaryOperator uop, int k)`
    `static MatrixBlock` | LibMatrixReorg.`diag(MatrixBlock in, MatrixBlock out)`
    `static int` | LibMatrixCountDistinct.`estimateDistinctValues(MatrixBlock in, CountDistinctOperator op)` Public method to count the number of distinct values inside a matrix.
    `static MatrixBlock.SparsityEstimate` | MatrixBlock.`estimateSparsityOnAggBinary(MatrixBlock m1, MatrixBlock m2, AggregateBinaryOperator op)`
    `MatrixBlock` | MatrixBlock.`extractTriangular(MatrixBlock ret, boolean lower, boolean diag, boolean values)`
    `static void` | LibMatrixDatagen.`generateRandomMatrix(MatrixBlock out, RandomMatrixGenerator rgen, org.apache.commons.math3.random.Well1024a bigrand, long bSeed)` Function to generate a matrix of random numbers.
    `static void` | LibMatrixDatagen.`generateRandomMatrix(MatrixBlock out, RandomMatrixGenerator rgen, org.apache.commons.math3.random.Well1024a bigrand, long bSeed, int k)` Function to generate a matrix of random numbers.
    `static void` | LibMatrixDatagen.`generateSample(MatrixBlock out, long range, int size, boolean replace, long seed)` Generates a sample of size `size` from a range of values [1,range].
    `static void` | LibMatrixDatagen.`generateSequence(MatrixBlock out, double from, double to, double incr)` Method to generate a sequence according to the given parameters.
    `static LibMatrixBincell.BinaryAccessType` | LibMatrixBincell.`getBinaryAccessType(MatrixBlock m1, MatrixBlock m2)`
    `static LibMatrixDNNRotate180.Rotate180Worker` | LibMatrixDNNRotate180.Rotate180Worker.`getWorker(MatrixBlock in, MatrixBlock out, DnnParameters params, boolean zeroOutSparseOutput, boolean trans)`
    `static void` | LibMatrixAgg.`groupedAggregate(MatrixBlock groups, MatrixBlock target, MatrixBlock weights, MatrixBlock result, int numGroups, Operator op)`
    `static void` | LibMatrixAgg.`groupedAggregate(MatrixBlock groups, MatrixBlock target, MatrixBlock weights, MatrixBlock result, int numGroups, Operator op, int k)`
    `static void` | LibMatrixDNNIm2Col.`im2col(MatrixBlock in, MatrixBlock out, int r, DnnParameters params, boolean trans)`
    `static void` | LibMatrixDNNIm2Col.`im2col(MatrixBlock in, MatrixBlock out, int r, int C, int R, int S, int H, int W, int P, int Q, int stride_h, int stride_w, int pad_h, int pad_w, boolean trans)`
    `static void` | LibMatrixDNNIm2Col.`im2colSparse(MatrixBlock in, MatrixBlock out, int r, int C, int R, int S, int H, int W, int P, int Q, int stride_h, int stride_w, int pad_h, int pad_w, boolean trans)`
    `FrameBlock` | FrameBlock.`invalidByLength(MatrixBlock feaLen)` This method validates the frame data against an attribute length constrain if data value in any cell is greater than the specified threshold of that attribute the output frame will store a null on that cell position, thus removing the length-violating values.
    `static boolean` | LibMatrixBincell.`isAllDense(MatrixBlock... mb)`
    `static boolean` | LibMatrixMult.`isSparseOutputMatrixMult(MatrixBlock m1, MatrixBlock m2)`
    `static boolean` | LibMatrixBincell.`isSparseSafeDivide(BinaryOperator op, MatrixBlock rhs)`
    `static boolean` | LibMatrixMult.`isUltraSparseMatrixMult(MatrixBlock m1, MatrixBlock m2, boolean m1Perm)`
    `static void` | LibMatrixBincell.`isValidDimensionsBinary(MatrixBlock m1, MatrixBlock m2)`
    `MatrixBlock` | MatrixBlock.`leftIndexingOperations(MatrixBlock rhsMatrix, IndexRange ixrange, MatrixBlock ret, MatrixObject.UpdateType update)`
    `MatrixBlock` | MatrixBlock.`leftIndexingOperations(MatrixBlock rhsMatrix, int rl, int ru, int cl, int cu, MatrixBlock ret, MatrixObject.UpdateType update)`
    `MatrixBlock` | MatrixBlock.`leftIndexingOperations(ScalarObject scalar, int rl, int cl, MatrixBlock ret, MatrixObject.UpdateType update)` Explicitly allow left indexing for scalars.
    `static MatrixBlock` | OperationsOnMatrixValues.`matMult(MatrixBlock value1, MatrixBlock value2, MatrixBlock valueOut, AggregateBinaryOperator op)`
    `static MatrixBlock` | OperationsOnMatrixValues.`matMult(MatrixIndexes indexes1, MatrixBlock value1, MatrixIndexes indexes2, MatrixBlock value2, MatrixIndexes indexesOut, MatrixBlock valueOut, AggregateBinaryOperator op)`
    `static MatrixBlock` | LibCommonsMath.`matrixMatrixOperations(MatrixBlock in1, MatrixBlock in2, String opcode)`
    `static void` | LibMatrixMult.`matrixMult(MatrixBlock m1, MatrixBlock m2, MatrixBlock ret)` Performs a matrix multiplication and stores the result in the output matrix.
    `static void` | LibMatrixMult.`matrixMult(MatrixBlock m1, MatrixBlock m2, MatrixBlock ret, boolean fixedRet)` This method allows one to disabling exam sparsity.
    `static void` | LibMatrixMult.`matrixMult(MatrixBlock m1, MatrixBlock m2, MatrixBlock ret, int k)` Performs a multi-threaded matrix multiplication and stores the result in the output matrix.
    `static void` | LibMatrixNative.`matrixMult(MatrixBlock m1, MatrixBlock m2, MatrixBlock ret, int k)` Performs matrix multiplication using native library if BLAS is available or else falls back to Java BLAS.
    `static void` | LibMatrixNative.`matrixMult(MatrixBlock m1, MatrixBlock m2, MatrixBlock ret, int k, boolean examSparsity)`
    `static void` | LibMatrixMult.`matrixMult(MatrixBlock m1, MatrixBlock m2, MatrixBlock ret, int rl, int ru)`
    `static void` | LibMatrixMult.`matrixMult(MatrixBlock m1, MatrixBlock m2, MatrixBlock ret, int rl, int ru, boolean fixedRet)`
    `static void` | LibMatrixMult.`matrixMultChain(MatrixBlock mX, MatrixBlock mV, MatrixBlock mW, MatrixBlock ret, MapMultChain.ChainType ct)` Performs a matrix multiplication chain operation of type t(X)%*%(X%*%v) or t(X)%*%(w*(X%*%v)).
    `static void` | LibMatrixMult.`matrixMultChain(MatrixBlock mX, MatrixBlock mV, MatrixBlock mW, MatrixBlock ret, MapMultChain.ChainType ct, int k)` Performs a parallel matrix multiplication chain operation of type t(X)%*%(X%*%v) or t(X)%*%(w*(X%*%v)).
    `static void` | LibMatrixMult.`matrixMultPermute(MatrixBlock pm1, MatrixBlock m2, MatrixBlock ret1, MatrixBlock ret2)`
    `static void` | LibMatrixMult.`matrixMultPermute(MatrixBlock pm1, MatrixBlock m2, MatrixBlock ret1, MatrixBlock ret2, int k)`
    `static void` | LibMatrixMult.`matrixMultTransposeSelf(MatrixBlock m1, MatrixBlock ret, boolean leftTranspose)`
    `static void` | LibMatrixMult.`matrixMultTransposeSelf(MatrixBlock m1, MatrixBlock ret, boolean leftTranspose, boolean copyToLowerTriangle)`
    `static void` | LibMatrixMult.`matrixMultTransposeSelf(MatrixBlock m1, MatrixBlock ret, boolean leftTranspose, int k)`
    `static void` | LibMatrixMult.`matrixMultWCeMM(MatrixBlock mW, MatrixBlock mU, MatrixBlock mV, double eps, MatrixBlock ret, WeightedCrossEntropy.WCeMMType wt)`
    `static void` | LibMatrixMult.`matrixMultWCeMM(MatrixBlock mW, MatrixBlock mU, MatrixBlock mV, double eps, MatrixBlock ret, WeightedCrossEntropy.WCeMMType wt, int k)`
    `static void` | LibMatrixMult.`matrixMultWDivMM(MatrixBlock mW, MatrixBlock mU, MatrixBlock mV, MatrixBlock mX, MatrixBlock ret, WeightedDivMM.WDivMMType wt)` NOTE: This operation has limited NaN support, which is acceptable because all our sparse-safe operations have only limited NaN support.
    `static void` | LibMatrixMult.`matrixMultWDivMM(MatrixBlock mW, MatrixBlock mU, MatrixBlock mV, MatrixBlock mX, MatrixBlock ret, WeightedDivMM.WDivMMType wt, int k)` NOTE: This operation has limited NaN support, which is acceptable because all our sparse-safe operations have only limited NaN support.
    `static void` | LibMatrixMult.`matrixMultWSigmoid(MatrixBlock mW, MatrixBlock mU, MatrixBlock mV, MatrixBlock ret, WeightedSigmoid.WSigmoidType wt)`
    `static void` | LibMatrixMult.`matrixMultWSigmoid(MatrixBlock mW, MatrixBlock mU, MatrixBlock mV, MatrixBlock ret, WeightedSigmoid.WSigmoidType wt, int k)`
    `static void` | LibMatrixMult.`matrixMultWSLoss(MatrixBlock mX, MatrixBlock mU, MatrixBlock mV, MatrixBlock mW, MatrixBlock ret, WeightedSquaredLoss.WeightsType wt)`
    `static void` | LibMatrixMult.`matrixMultWSLoss(MatrixBlock mX, MatrixBlock mU, MatrixBlock mV, MatrixBlock mW, MatrixBlock ret, WeightedSquaredLoss.WeightsType wt, int k)`
    `static void` | LibMatrixMult.`matrixMultWuMM(MatrixBlock mW, MatrixBlock mU, MatrixBlock mV, MatrixBlock ret, WeightedUnaryMM.WUMMType wt, ValueFunction fn)`
    `static void` | LibMatrixMult.`matrixMultWuMM(MatrixBlock mW, MatrixBlock mU, MatrixBlock mV, MatrixBlock ret, WeightedUnaryMM.WUMMType wt, ValueFunction fn, int k)`
    `void` | MatrixBlock.`merge(MatrixBlock that, boolean appendOnly)` Merge disjoint: merges all non-zero values of the given input into the current matrix block.
    `void` | MatrixBlock.`merge(MatrixBlock that, boolean appendOnly, boolean par)`
    `void` | MatrixBlock.`merge(MatrixBlock that, boolean appendOnly, boolean par, boolean deep)`
    `static MatrixBlock[]` | LibCommonsMath.`multiReturnOperations(MatrixBlock in, String opcode)`
    `static MatrixBlock` | MatrixBlock.`naryOperations(Operator op, MatrixBlock[] matrices, ScalarObject[] scalars, MatrixBlock ret)`
    `static MatrixBlock` | MatrixBlock.`naryOperations(Operator op, MatrixBlock[] matrices, ScalarObject[] scalars, MatrixBlock ret)`
    `static void` | OperationsOnMatrixValues.`performCtable(MatrixIndexes indexesIn1, MatrixValue valueIn1, double scalarIn2, boolean left, int blen, CTableMap resultMap, MatrixBlock resultBlock, Operator op)`
    `static void` | OperationsOnMatrixValues.`performCtable(MatrixIndexes indexesIn1, MatrixValue valueIn1, double scalarIn2, double scalarIn3, CTableMap resultMap, MatrixBlock resultBlock, Operator op)`
    `static void` | OperationsOnMatrixValues.`performCtable(MatrixIndexes indexesIn1, MatrixValue valueIn1, double scalarIn2, MatrixIndexes indexesIn3, MatrixValue valueIn3, CTableMap resultMap, MatrixBlock resultBlock, Operator op)`
    `static void` | OperationsOnMatrixValues.`performCtable(MatrixIndexes indexesIn1, MatrixValue valueIn1, MatrixIndexes indexesIn2, MatrixValue valueIn2, double scalarIn3, CTableMap resultMap, MatrixBlock resultBlock, Operator op)`
    `static void` | OperationsOnMatrixValues.`performCtable(MatrixIndexes indexesIn1, MatrixValue valueIn1, MatrixIndexes indexesIn2, MatrixValue valueIn2, MatrixIndexes indexesIn3, MatrixValue valueIn3, CTableMap resultMap, MatrixBlock resultBlock, Operator op)`
    `static void` | OperationsOnMatrixValues.`performMapGroupedAggregate(Operator op, IndexedMatrixValue inTarget, MatrixBlock groups, int ngroups, int blen, ArrayList<IndexedMatrixValue> outlist)`
    `static List` | OperationsOnMatrixValues.`performSlice(IndexRange ixrange, int blen, int iix, int jix, MatrixBlock in)`
    `static void` | LibMatrixDNN.`pooling(MatrixBlock input, MatrixBlock output, DnnParameters params, LibMatrixDNN.PoolingType poolType)`
    `static void` | LibMatrixDNN.`poolingBackward(MatrixBlock input, MatrixBlock dout, MatrixBlock outputBlock, DnnParameters params, boolean performReluBackward, LibMatrixDNN.PoolingType poolType)` This method computes the backpropogation errors for previous layer of pooling operation
    `static void` | LibMatrixDNNIm2Col.`preallocateSparseOutput(MatrixBlock in, MatrixBlock out)`
    `static MatrixBlock` | LibMatrixMult.`prepMatrixMultTransposeSelfInput(MatrixBlock m1, boolean leftTranspose, boolean par)`
    `MatrixBlock` | MatrixBlock.`quaternaryOperations(QuaternaryOperator qop, MatrixBlock um, MatrixBlock vm, MatrixBlock wm, MatrixBlock out)`
    `MatrixBlock` | MatrixBlock.`quaternaryOperations(QuaternaryOperator qop, MatrixBlock U, MatrixBlock V, MatrixBlock wm, MatrixBlock out, int k)`
    `static void` | LibMatrixAgg.`recomputeIndexes(MatrixBlock out, AggregateUnaryOperator op, int blen, MatrixIndexes ix)` Recompute outputs (e.g., maxindex or minindex) according to block indexes from MR.
    `static void` | LibMatrixDNN.`reluBackward(MatrixBlock input, MatrixBlock dout, MatrixBlock outputBlock, int numThreads)` This method computes the backpropagation errors for previous layer of relu operation
    `MatrixBlock` | MatrixBlock.`removeEmptyOperations(MatrixBlock ret, boolean rows, boolean emptyReturn)`
    `MatrixBlock` | MatrixBlock.`removeEmptyOperations(MatrixBlock ret, boolean rows, boolean emptyReturn, MatrixBlock select)`
    `static MatrixBlock` | LibMatrixReorg.`reorg(MatrixBlock in, MatrixBlock out, ReorgOperator op)`
    `static MatrixBlock` | LibMatrixReorg.`reorgInPlace(MatrixBlock in, ReorgOperator op)`
    `static void` | LibMatrixOuterAgg.`resetOutputMatrix(MatrixIndexes in1Ix, MatrixBlock in1Val, MatrixIndexes outIx, MatrixBlock outVal, AggregateUnaryOperator uaggOp)` ReSet output matrix
    `static MatrixBlock` | LibMatrixReorg.`reshape(MatrixBlock in, MatrixBlock out, int rows, int cols, boolean rowwise)` CP reshape operation (single input, single output matrix) NOTE: In contrast to R, the rowwise parameter specifies both the read and write order, with row-wise being the default, while R uses always a column-wise read, rowwise specifying the write order and column-wise being the default.
    `static MatrixBlock` | LibMatrixReorg.`rev(MatrixBlock in, MatrixBlock out)`
    `static MatrixBlock` | LibMatrixReorg.`rexpand(MatrixBlock in, MatrixBlock ret, double max, boolean rows, boolean cast, boolean ignore, int k)` CP rexpand operation (single input, single output)
    `MatrixBlock` | MatrixBlock.`rexpandOperations(MatrixBlock ret, double max, boolean rows, boolean cast, boolean ignore, int k)`
    `static MatrixBlock` | LibMatrixReorg.`rmempty(MatrixBlock in, MatrixBlock ret, boolean rows, boolean emptyReturn, MatrixBlock select)` CP rmempty operation (single input, single output matrix)
    `static boolean` | LibMatrixMult.`satisfiesMultiThreadingConstraints(MatrixBlock m1, boolean checkMem, boolean checkFLOPs, long FPfactor, int k)`
    `static boolean` | LibMatrixMult.`satisfiesMultiThreadingConstraints(MatrixBlock m1, int k)`
    `static boolean` | LibMatrixAgg.`satisfiesMultiThreadingConstraints(MatrixBlock in, MatrixBlock out, AggregateUnaryOperator uaop, int k)`
    `static boolean` | LibMatrixMult.`satisfiesMultiThreadingConstraints(MatrixBlock m1, MatrixBlock m2, boolean checkMem, boolean checkFLOPs, long FPfactor, int k)`
    `MatrixBlock` | MatrixBlock.`slice(IndexRange ixrange, MatrixBlock ret)`
    `static MatrixBlock` | LibMatrixReorg.`sort(MatrixBlock in, MatrixBlock out, int[] by, boolean desc, boolean ixret)`
    `static MatrixBlock` | LibMatrixReorg.`sort(MatrixBlock in, MatrixBlock out, int[] by, boolean desc, boolean ixret, int k)`
    `MatrixBlock` | MatrixBlock.`sortOperations(MatrixValue weights, MatrixBlock result)`
    `static void` | LibMatrixTercell.`tercellOp(MatrixBlock m1, MatrixBlock m2, MatrixBlock m3, MatrixBlock ret, TernaryOperator op)`
    `MatrixBlock` | MatrixBlock.`ternaryOperations(TernaryOperator op, MatrixBlock m2, MatrixBlock m3, MatrixBlock ret)`
    `static MatrixBlock` | LibMatrixReorg.`transpose(MatrixBlock in, MatrixBlock out)`
    `static MatrixBlock` | LibMatrixReorg.`transpose(MatrixBlock in, MatrixBlock out, int k)`
    `static MatrixBlock` | LibMatrixReorg.`transposeInPlace(MatrixBlock in, int k)`
    `MatrixBlock` | MatrixBlock.`transposeSelfMatrixMultOperations(MatrixBlock out, MMTSJ.MMTSJType tstype)`
    `MatrixBlock` | MatrixBlock.`transposeSelfMatrixMultOperations(MatrixBlock out, MMTSJ.MMTSJType tstype, int k)`
    `static void` | LibMatrixNative.`tsmm(MatrixBlock m1, MatrixBlock ret, boolean leftTrans, int k)`
    `MatrixBlock` | MatrixBlock.`uaggouterchainOperations(MatrixBlock mbLeft, MatrixBlock mbRight, MatrixBlock mbOut, BinaryOperator bOp, AggregateUnaryOperator uaggOp)`
    `static MatrixBlock` | LibCommonsMath.`unaryOperations(MatrixBlock inj, String opcode)`

    Constructors in org.apache.sysds.runtime.matrix.data with parameters of type MatrixBlock
    Constructor and Description
    `MatrixBlock(MatrixBlock that)`
    `MatrixBlock(MatrixBlock that, SparseBlock.Type stype, boolean deep)`

  - ### Uses of MatrixBlock in org.apache.sysds.runtime.privacy.propagation

    Methods in org.apache.sysds.runtime.privacy.propagation with parameters of type MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `void` | AppendPropagator.`setFields(MatrixBlock input1, PrivacyConstraint privacyConstraint1, MatrixBlock input2, PrivacyConstraint privacyConstraint2)`
    `void` | MatrixMultiplicationPropagator.`setFields(MatrixBlock input1, PrivacyConstraint privacyConstraint1, MatrixBlock input2, PrivacyConstraint privacyConstraint2)` Sets all fields of propagator.

    Constructors in org.apache.sysds.runtime.privacy.propagation with parameters of type MatrixBlock
    Constructor and Description
    `AppendPropagator(MatrixBlock input1, PrivacyConstraint privacyConstraint1, MatrixBlock input2, PrivacyConstraint privacyConstraint2)`
    `CBindPropagator(MatrixBlock input1, PrivacyConstraint privacyConstraint1, MatrixBlock input2, PrivacyConstraint privacyConstraint2)`
    `MatrixMultiplicationPropagator(MatrixBlock input1, PrivacyConstraint privacyConstraint1, MatrixBlock input2, PrivacyConstraint privacyConstraint2)` Constructs the propagator and initializes the fields used for propagation.
    `MatrixMultiplicationPropagatorNaive(MatrixBlock input1, PrivacyConstraint privacyConstraint1, MatrixBlock input2, PrivacyConstraint privacyConstraint2)`
    `MatrixMultiplicationPropagatorPrivateFirst(MatrixBlock input1, PrivacyConstraint privacyConstraint1, MatrixBlock input2, PrivacyConstraint privacyConstraint2)`
    `RBindPropagator(MatrixBlock input1, PrivacyConstraint privacyConstraint1, MatrixBlock input2, PrivacyConstraint privacyConstraint2)`

  - ### Uses of MatrixBlock in org.apache.sysds.runtime.transform.decode

    Methods in org.apache.sysds.runtime.transform.decode with parameters of type MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `abstract FrameBlock` | Decoder.`decode(MatrixBlock in, FrameBlock out)` Block decode API converting a matrix block into a frame block.
    `FrameBlock` | DecoderComposite.`decode(MatrixBlock in, FrameBlock out)`
    `FrameBlock` | DecoderPassThrough.`decode(MatrixBlock in, FrameBlock out)`
    `FrameBlock` | DecoderDummycode.`decode(MatrixBlock in, FrameBlock out)`
    `FrameBlock` | DecoderRecode.`decode(MatrixBlock in, FrameBlock out)`

  - ### Uses of MatrixBlock in org.apache.sysds.runtime.transform.encode

    Methods in org.apache.sysds.runtime.transform.encode that return MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `MatrixBlock` | MultiColumnEncoder.`apply(FrameBlock in)`
    `MatrixBlock` | MultiColumnEncoder.`apply(FrameBlock in, int k)`
    `abstract MatrixBlock` | LegacyEncoder.`apply(FrameBlock in, MatrixBlock out)` Encode input data blockwise according to existing transform meta data (transform apply).
    `MatrixBlock` | EncoderMVImpute.`apply(FrameBlock in, MatrixBlock out)`
    `MatrixBlock` | EncoderOmit.`apply(FrameBlock in, MatrixBlock out)`
    `MatrixBlock` | ColumnEncoderPassThrough.`apply(FrameBlock in, MatrixBlock out, int outputCol)`
    `MatrixBlock` | ColumnEncoderComposite.`apply(FrameBlock in, MatrixBlock out, int outputCol)`
    `MatrixBlock` | ColumnEncoderDummycode.`apply(FrameBlock in, MatrixBlock out, int outputCol)`
    `MatrixBlock` | Encoder.`apply(FrameBlock in, MatrixBlock out, int outputCol)` Apply the generated metadata to the FrameBlock and saved the result in out.
    `MatrixBlock` | MultiColumnEncoder.`apply(FrameBlock in, MatrixBlock out, int outputCol)`
    `MatrixBlock` | ColumnEncoderRecode.`apply(FrameBlock in, MatrixBlock out, int outputCol)`
    `MatrixBlock` | ColumnEncoderFeatureHash.`apply(FrameBlock in, MatrixBlock out, int outputCol)`
    `MatrixBlock` | ColumnEncoderBin.`apply(FrameBlock in, MatrixBlock out, int outputCol)`
    `MatrixBlock` | MultiColumnEncoder.`apply(FrameBlock in, MatrixBlock out, int outputCol, int k)`
    `MatrixBlock` | ColumnEncoderPassThrough.`apply(FrameBlock in, MatrixBlock out, int outputCol, int rowStart, int blk)`
    `MatrixBlock` | ColumnEncoderComposite.`apply(FrameBlock in, MatrixBlock out, int outputCol, int rowStart, int blk)`
    `MatrixBlock` | ColumnEncoderDummycode.`apply(FrameBlock in, MatrixBlock out, int outputCol, int rowStart, int blk)`
    `MatrixBlock` | ColumnEncoderRecode.`apply(FrameBlock in, MatrixBlock out, int outputCol, int rowStart, int blk)`
    `MatrixBlock` | ColumnEncoderFeatureHash.`apply(FrameBlock in, MatrixBlock out, int outputCol, int rowStart, int blk)`
    `MatrixBlock` | ColumnEncoderBin.`apply(FrameBlock in, MatrixBlock out, int outputCol, int rowStart, int blk)`
    `abstract MatrixBlock` | ColumnEncoder.`apply(FrameBlock in, MatrixBlock out, int outputCol, int rowStart, int blk)`
    `MatrixBlock` | ColumnEncoderPassThrough.`apply(MatrixBlock in, MatrixBlock out, int outputCol)`
    `MatrixBlock` | ColumnEncoderComposite.`apply(MatrixBlock in, MatrixBlock out, int outputCol)`
    `MatrixBlock` | ColumnEncoderDummycode.`apply(MatrixBlock in, MatrixBlock out, int outputCol)`
    `MatrixBlock` | ColumnEncoderRecode.`apply(MatrixBlock in, MatrixBlock out, int outputCol)`
    `MatrixBlock` | ColumnEncoderFeatureHash.`apply(MatrixBlock in, MatrixBlock out, int outputCol)`
    `MatrixBlock` | ColumnEncoderBin.`apply(MatrixBlock in, MatrixBlock out, int outputCol)`
    `abstract MatrixBlock` | ColumnEncoder.`apply(MatrixBlock in, MatrixBlock out, int outputCol)`
    `MatrixBlock` | ColumnEncoderPassThrough.`apply(MatrixBlock in, MatrixBlock out, int outputCol, int rowStart, int blk)`
    `MatrixBlock` | ColumnEncoderComposite.`apply(MatrixBlock in, MatrixBlock out, int outputCol, int rowStart, int blk)`
    `MatrixBlock` | ColumnEncoderDummycode.`apply(MatrixBlock in, MatrixBlock out, int outputCol, int rowStart, int blk)`
    `MatrixBlock` | ColumnEncoderRecode.`apply(MatrixBlock in, MatrixBlock out, int outputCol, int rowStart, int blk)`
    `MatrixBlock` | ColumnEncoderFeatureHash.`apply(MatrixBlock in, MatrixBlock out, int outputCol, int rowStart, int blk)`
    `MatrixBlock` | ColumnEncoderBin.`apply(MatrixBlock in, MatrixBlock out, int outputCol, int rowStart, int blk)`
    `abstract MatrixBlock` | ColumnEncoder.`apply(MatrixBlock in, MatrixBlock out, int outputCol, int rowStart, int blk)`
    `MatrixBlock` | MultiColumnEncoder.`encode(FrameBlock in)`
    `MatrixBlock` | MultiColumnEncoder.`encode(FrameBlock in, int k)`
    `abstract MatrixBlock` | LegacyEncoder.`encode(FrameBlock in, MatrixBlock out)` Block encode: build and apply (transform encode).
    `MatrixBlock` | EncoderMVImpute.`encode(FrameBlock in, MatrixBlock out)`
    `MatrixBlock` | EncoderOmit.`encode(FrameBlock in, MatrixBlock out)`
    `MatrixBlock` | MultiColumnEncoder.`getColMapping(FrameBlock meta)` Obtain the column mapping of encoded frames based on the passed meta data frame.
    `MatrixBlock` | ColumnEncoder.`getColMapping(FrameBlock meta)` Obtain the column mapping of encoded frames based on the passed meta data frame.
    `MatrixBlock` | LegacyEncoder.`getColMapping(FrameBlock meta, MatrixBlock out)` Obtain the column mapping of encoded frames based on the passed meta data frame.

    Methods in org.apache.sysds.runtime.transform.encode with parameters of type MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `abstract MatrixBlock` | LegacyEncoder.`apply(FrameBlock in, MatrixBlock out)` Encode input data blockwise according to existing transform meta data (transform apply).
    `MatrixBlock` | EncoderMVImpute.`apply(FrameBlock in, MatrixBlock out)`
    `MatrixBlock` | EncoderOmit.`apply(FrameBlock in, MatrixBlock out)`
    `MatrixBlock` | ColumnEncoderPassThrough.`apply(FrameBlock in, MatrixBlock out, int outputCol)`
    `MatrixBlock` | ColumnEncoderComposite.`apply(FrameBlock in, MatrixBlock out, int outputCol)`
    `MatrixBlock` | ColumnEncoderDummycode.`apply(FrameBlock in, MatrixBlock out, int outputCol)`
    `MatrixBlock` | Encoder.`apply(FrameBlock in, MatrixBlock out, int outputCol)` Apply the generated metadata to the FrameBlock and saved the result in out.
    `MatrixBlock` | MultiColumnEncoder.`apply(FrameBlock in, MatrixBlock out, int outputCol)`
    `MatrixBlock` | ColumnEncoderRecode.`apply(FrameBlock in, MatrixBlock out, int outputCol)`
    `MatrixBlock` | ColumnEncoderFeatureHash.`apply(FrameBlock in, MatrixBlock out, int outputCol)`
    `MatrixBlock` | ColumnEncoderBin.`apply(FrameBlock in, MatrixBlock out, int outputCol)`
    `MatrixBlock` | MultiColumnEncoder.`apply(FrameBlock in, MatrixBlock out, int outputCol, int k)`
    `MatrixBlock` | ColumnEncoderPassThrough.`apply(FrameBlock in, MatrixBlock out, int outputCol, int rowStart, int blk)`
    `MatrixBlock` | ColumnEncoderComposite.`apply(FrameBlock in, MatrixBlock out, int outputCol, int rowStart, int blk)`
    `MatrixBlock` | ColumnEncoderDummycode.`apply(FrameBlock in, MatrixBlock out, int outputCol, int rowStart, int blk)`
    `MatrixBlock` | ColumnEncoderRecode.`apply(FrameBlock in, MatrixBlock out, int outputCol, int rowStart, int blk)`
    `MatrixBlock` | ColumnEncoderFeatureHash.`apply(FrameBlock in, MatrixBlock out, int outputCol, int rowStart, int blk)`
    `MatrixBlock` | ColumnEncoderBin.`apply(FrameBlock in, MatrixBlock out, int outputCol, int rowStart, int blk)`
    `abstract MatrixBlock` | ColumnEncoder.`apply(FrameBlock in, MatrixBlock out, int outputCol, int rowStart, int blk)`
    `MatrixBlock` | ColumnEncoderPassThrough.`apply(MatrixBlock in, MatrixBlock out, int outputCol)`
    `MatrixBlock` | ColumnEncoderComposite.`apply(MatrixBlock in, MatrixBlock out, int outputCol)`
    `MatrixBlock` | ColumnEncoderDummycode.`apply(MatrixBlock in, MatrixBlock out, int outputCol)`
    `MatrixBlock` | ColumnEncoderRecode.`apply(MatrixBlock in, MatrixBlock out, int outputCol)`
    `MatrixBlock` | ColumnEncoderFeatureHash.`apply(MatrixBlock in, MatrixBlock out, int outputCol)`
    `MatrixBlock` | ColumnEncoderBin.`apply(MatrixBlock in, MatrixBlock out, int outputCol)`
    `abstract MatrixBlock` | ColumnEncoder.`apply(MatrixBlock in, MatrixBlock out, int outputCol)`
    `MatrixBlock` | ColumnEncoderPassThrough.`apply(MatrixBlock in, MatrixBlock out, int outputCol, int rowStart, int blk)`
    `MatrixBlock` | ColumnEncoderComposite.`apply(MatrixBlock in, MatrixBlock out, int outputCol, int rowStart, int blk)`
    `MatrixBlock` | ColumnEncoderDummycode.`apply(MatrixBlock in, MatrixBlock out, int outputCol, int rowStart, int blk)`
    `MatrixBlock` | ColumnEncoderRecode.`apply(MatrixBlock in, MatrixBlock out, int outputCol, int rowStart, int blk)`
    `MatrixBlock` | ColumnEncoderFeatureHash.`apply(MatrixBlock in, MatrixBlock out, int outputCol, int rowStart, int blk)`
    `MatrixBlock` | ColumnEncoderBin.`apply(MatrixBlock in, MatrixBlock out, int outputCol, int rowStart, int blk)`
    `abstract MatrixBlock` | ColumnEncoder.`apply(MatrixBlock in, MatrixBlock out, int outputCol, int rowStart, int blk)`
    `abstract MatrixBlock` | LegacyEncoder.`encode(FrameBlock in, MatrixBlock out)` Block encode: build and apply (transform encode).
    `MatrixBlock` | EncoderMVImpute.`encode(FrameBlock in, MatrixBlock out)`
    `MatrixBlock` | EncoderOmit.`encode(FrameBlock in, MatrixBlock out)`
    `MatrixBlock` | LegacyEncoder.`getColMapping(FrameBlock meta, MatrixBlock out)` Obtain the column mapping of encoded frames based on the passed meta data frame.

  - ### Uses of MatrixBlock in org.apache.sysds.runtime.util

    Methods in org.apache.sysds.runtime.util that return MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `static MatrixBlock` | Py4jConverterUtils.`allocateDenseOrSparse(int rlen, int clen, boolean isSparse)`
    `static MatrixBlock` | Py4jConverterUtils.`allocateDenseOrSparse(long rlen, long clen, boolean isSparse)`
    `static MatrixBlock` | Py4jConverterUtils.`convertPy4JArrayToMB(byte[] data, int rlen, int clen)`
    `static MatrixBlock` | Py4jConverterUtils.`convertPy4JArrayToMB(byte[] data, int rlen, int clen, boolean isSparse, Types.ValueType valueType)`
    `static MatrixBlock` | Py4jConverterUtils.`convertPy4JArrayToMB(byte[] data, int rlen, int clen, Types.ValueType valueType)`
    `static MatrixBlock` | Py4jConverterUtils.`convertSciPyCOOToMB(byte[] data, byte[] row, byte[] col, int rlen, int clen, int nnz)`
    `static MatrixBlock` | DataConverter.`convertToMatrixBlock(CTableMap map)`
    `static MatrixBlock` | DataConverter.`convertToMatrixBlock(CTableMap map, int rlen, int clen)` NOTE: this method also ensures the specified matrix dimensions
    `static MatrixBlock` | DataConverter.`convertToMatrixBlock(double[][] data)` Creates a dense Matrix Block and copies the given double matrix into it.
    `static MatrixBlock` | DataConverter.`convertToMatrixBlock(double[] data, boolean columnVector)` Creates a dense Matrix Block and copies the given double vector into it.
    `static MatrixBlock` | DataConverter.`convertToMatrixBlock(FrameBlock frame)` Converts a frame block with arbitrary schema into a matrix block.
    `static MatrixBlock` | DataConverter.`convertToMatrixBlock(HashMap<MatrixIndexes,Double> map)`
    `static MatrixBlock` | DataConverter.`convertToMatrixBlock(HashMap<MatrixIndexes,Double> map, int rlen, int clen)` NOTE: this method also ensures the specified matrix dimensions
    `static MatrixBlock` | DataConverter.`convertToMatrixBlock(int[][] data)` Converts an Integer matrix to an MatrixBlock
    `static MatrixBlock` | DataConverter.`convertToMatrixBlock(org.apache.commons.math3.linear.RealMatrix rm)`
    `static MatrixBlock[]` | DataConverter.`convertToMatrixBlockPartitions(MatrixBlock mb, boolean colwise)`
    `static MatrixBlock` | LocalFileUtils.`readMatrixBlockFromLocal(String fname)` Reads a matrix block from local file system.
    `static MatrixBlock` | LocalFileUtils.`readMatrixBlockFromLocal(String fname, MatrixBlock reuse)` Reads a matrix block from local file system.
    `static MatrixBlock` | LocalFileUtils.`readMatrixBlockFromStream(InputStream is)` Reads a matrix block from an input stream, using a fused buffered reader with special support for matrix blocks.
    `static MatrixBlock` | DataConverter.`readMatrixFromHDFS(ReadProperties prop)` Core method for reading matrices in format textcell, matrixmarket, binarycell, or binaryblock from HDFS into main memory.
    `static MatrixBlock` | DataConverter.`readMatrixFromHDFS(String dir, Types.FileFormat fmt, long rlen, long clen, int blen)`
    `static MatrixBlock` | DataConverter.`readMatrixFromHDFS(String dir, Types.FileFormat fmt, long rlen, long clen, int blen, boolean localFS)`
    `static MatrixBlock` | DataConverter.`readMatrixFromHDFS(String dir, Types.FileFormat fmt, long rlen, long clen, int blen, long expectedNnz)`
    `static MatrixBlock` | DataConverter.`readMatrixFromHDFS(String dir, Types.FileFormat fmt, long rlen, long clen, int blen, long expectedNnz, boolean localFS)`
    `static MatrixBlock` | DataConverter.`readMatrixFromHDFS(String dir, Types.FileFormat fmt, long rlen, long clen, int blen, long expectedNnz, FileFormatProperties formatProperties)`

    Methods in org.apache.sysds.runtime.util that return types with arguments of type MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `org.apache.hadoop.mapred.RecordReader<MatrixIndexes,MatrixBlock>` | BinaryBlockInputFormat.`getRecordReader(org.apache.hadoop.mapred.InputSplit split, org.apache.hadoop.mapred.JobConf job, org.apache.hadoop.mapred.Reporter reporter)`

    Methods in org.apache.sysds.runtime.util with parameters of type MatrixBlock
    Modifier and Type | Method and Description
    --- | ---
    `static byte[]` | Py4jConverterUtils.`convertMBtoPy4JDenseArr(MatrixBlock mb)`
    `static org.apache.commons.math3.linear.Array2DRowRealMatrix` | DataConverter.`convertToArray2DRowRealMatrix(MatrixBlock mb)` Helper method that converts SystemDS matrix variable (`varname`) into a Array2DRowRealMatrix format, which is useful in invoking Apache CommonsMath.
    `static org.apache.commons.math3.linear.BlockRealMatrix` | DataConverter.`convertToBlockRealMatrix(MatrixBlock mb)`
    `static boolean[]` | DataConverter.`convertToBooleanVector(MatrixBlock mb)`
    `static DenseBlock` | DataConverter.`convertToDenseBlock(MatrixBlock mb)`
    `static DenseBlock` | DataConverter.`convertToDenseBlock(MatrixBlock mb, boolean deep)`
    `static List<Double>` | DataConverter.`convertToDoubleList(MatrixBlock mb)`
    `static double[][]` | DataConverter.`convertToDoubleMatrix(MatrixBlock mb)` Creates a two-dimensional double matrix of the input matrix block.
    `static double[]` | DataConverter.`convertToDoubleVector(MatrixBlock mb)`
    `static double[]` | DataConverter.`convertToDoubleVector(MatrixBlock mb, boolean deep)`
    `static double[]` | DataConverter.`convertToDoubleVector(MatrixBlock mb, boolean deep, boolean allowNull)`
    `static FrameBlock` | DataConverter.`convertToFrameBlock(MatrixBlock mb)` Converts a matrix block into a frame block of value type double.
    `static FrameBlock` | DataConverter.`convertToFrameBlock(MatrixBlock mb, Types.ValueType vt)` Converts a matrix block into a frame block of a given value type.
    `static FrameBlock` | DataConverter.`convertToFrameBlock(MatrixBlock mb, Types.ValueType[] schema)`
    `static int[]` | DataConverter.`convertToIntVector(MatrixBlock mb)`
    `static long[]` | DataConverter.`convertToLongVector(MatrixBlock mb)`
    `static MatrixBlock[]` | DataConverter.`convertToMatrixBlockPartitions(MatrixBlock mb, boolean colwise)`
    `static TensorBlock` | DataConverter.`convertToTensorBlock(MatrixBlock mb, Types.ValueType vt, boolean toBasicTensor)`
    `static void` | DataConverter.`copyToDoubleVector(MatrixBlock mb, double[] dest, int destPos)`
    `static void` | DnnUtils.`fillBias(MatrixBlock bias, double[] outputArray, int src_rl, int src_ru, int N, int K, int PQ)`
    `static boolean` | SortUtils.`isSorted(MatrixBlock in)`
    `boolean` | BinaryBlockRecordReader.`next(MatrixIndexes key, MatrixBlock value)`
    `static MatrixBlock` | LocalFileUtils.`readMatrixBlockFromLocal(String fname, MatrixBlock reuse)` Reads a matrix block from local file system.
    `static String` | DataConverter.`toString(MatrixBlock mb)`
    `static String` | DataConverter.`toString(MatrixBlock mb, boolean sparse, String separator, String lineseparator, int rowsToPrint, int colsToPrint, int decimal)` Returns a string representation of a matrix
    `static void` | LocalFileUtils.`writeMatrixBlockToLocal(String fname, MatrixBlock mb)` Writes a matrix block to local file system.
    `static void` | DataConverter.`writeMatrixToHDFS(MatrixBlock mat, String dir, Types.FileFormat fmt, DataCharacteristics dc)`
    `static void` | DataConverter.`writeMatrixToHDFS(MatrixBlock mat, String dir, Types.FileFormat fmt, DataCharacteristics dc, int replication, FileFormatProperties formatProperties)`
    `static void` | DataConverter.`writeMatrixToHDFS(MatrixBlock mat, String dir, Types.FileFormat fmt, DataCharacteristics dc, int replication, FileFormatProperties formatProperties, boolean diag)`

Copyright © 2021 The Apache Software Foundation. All rights reserved.