Package org.apache.sysds.runtime.matrix.data

## Class LibMatrixCuDNNInputRowFetcher

- java.lang.Object
- - org.apache.sysds.runtime.matrix.data.LibMatrixCUDA
  - - org.apache.sysds.runtime.matrix.data.LibMatrixCuDNNInputRowFetcher

- All Implemented Interfaces:
    `AutoCloseable`

      public class LibMatrixCuDNNInputRowFetcher
      extends LibMatrixCUDA
      implements AutoCloseable

  Performs a slice operation: out = in[(n+1):(n+1), 1:numColumns]

- - ### Field Summary

    - ### Fields inherited from class org.apache.sysds.runtime.matrix.data.LibMatrixCUDA

      `cudaSupportFunctions, customKernelSuffix, sizeOfDataType`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `LibMatrixCuDNNInputRowFetcher​(GPUContext gCtx, String instName, MatrixObject image)` | Initialize the input fetcher

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `close()` | Deallocates temporary pointer
    `jcuda.Pointer` | `getNthRow​(int n)` | Copy the nth row and return the dense pointer

    - ### Methods inherited from class org.apache.sysds.runtime.matrix.data.LibMatrixCUDA

      `abs, acos, asin, atan, axpy, biasAdd, biasMultiply, cbind, ceil, channelSums, computeNNZ, cos, cosh, cumulativeScan, cumulativeSumProduct, denseTranspose, deviceCopy, double2float, exp, float2double, floor, getCudaKernels, getDenseMatrixOutputForGPUInstruction, getDenseMatrixOutputForGPUInstruction, getDensePointer, getNnz, isInSparseFormat, log, matmultTSMM, matrixMatrixArithmetic, matrixMatrixRelational, matrixScalarArithmetic, matrixScalarOp, matrixScalarRelational, one, rbind, reluBackward, resetFloatingPointPrecision, round, sigmoid, sign, sin, sinh, sliceOperations, solve, sqrt, tan, tanh, toInt, transpose, unaryAggregate, zero`

    - ### Methods inherited from class java.lang.Object

      `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### LibMatrixCuDNNInputRowFetcher

          public LibMatrixCuDNNInputRowFetcher​(GPUContext gCtx,
                                               String instName,
                                               MatrixObject image)

      Initialize the input fetcher
      Parameters:
        `gCtx` - current gpu context
        `instName` - name of the instruction
        `image` - input matrix object.

  - ### Method Detail

    - #### getNthRow

          public jcuda.Pointer getNthRow​(int n)

      Copy the nth row and return the dense pointer
      Parameters:
        `n` - zero-based row index
      Returns:
        dense pointer containing the nth row. This row is reused in the next iteration

    - #### close

          public void close()

      Deallocates temporary pointer
      Specified by:
        `close` in interface `AutoCloseable`