org.apache.sysds.runtime.matrix.data

## Interface MatrixBlockDataOutput

- All Known Implementing Classes:
    CacheDataOutput, FastBufferedDataOutputStream

      public interface MatrixBlockDataOutput

  Any data output that is intended to support fast serialization / write of entire blocks should implement this interface. On write of a matrix block we check if the output stream is an implementation of this interface, if yes we directly pass the entire block instead of value-by-value. Known implementation classes: - CacheDataOutput (cache serialization into in-memory write buffer) - FastBufferedDataOutputStream (cache eviction to local file system)

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `writeDoubleArray(int len, double[] varr)` Writes the double array of a dense block to the data output.
    `void` | `writeSparseRows(int rlen, SparseBlock rows)` Writes the sparse rows array of a sparse block to the data output.

- - ### Method Detail

    - #### writeDoubleArray

          void writeDoubleArray(int len,
                                double[] varr)
                         throws IOException

      Writes the double array of a dense block to the data output.
      Parameters:
        `len` - ?
        `varr` - ?
      Throws:
        `IOException` - if IOException occurs

    - #### writeSparseRows

          void writeSparseRows(int rlen,
                               SparseBlock rows)
                        throws IOException

      Writes the sparse rows array of a sparse block to the data output.
      Parameters:
        `rlen` - ?
        `rows` - sparse block
      Throws:
        `IOException` - if IOException occurs

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