/** * Inplace compression of INDArray * * @param array */ @Override public void compressi(INDArray array) { // TODO: lift this restriction if (array.isView()) throw new UnsupportedOperationException("Impossible to apply inplace compression on View"); array.setData(compress(array.data())); array.markAsCompressed(true); }
@Override public void decompressi(INDArray array) { if (!array.isCompressed()) return; array.markAsCompressed(false); array.setData(decompress(array.data())); }
@Override public INDArray compress(INDArray array) { INDArray dup = array.dup(array.ordering()); Nd4j.getExecutioner().commit(); dup.setData(compress(dup.data())); dup.markAsCompressed(true); return dup; }
ret.setData(dup(order).data()); } else ret.assign(this);
/** * Inplace compression of INDArray * * @param array */ @Override public void compressi(INDArray array) { // TODO: lift this restriction if (array.isView()) throw new UnsupportedOperationException("Impossible to apply inplace compression on View"); array.setData(compress(array.data())); array.markAsCompressed(true); }
@Override public void decompressi(INDArray array) { if (!array.isCompressed()) return; array.markAsCompressed(false); array.setData(decompress(array.data())); }
/** * This method converts Single/Double precision databuffer to Half-precision databuffer * * @param typeSrc * @param source * @param typeDst @return */ @Override public INDArray convertDataEx(DataBuffer.TypeEx typeSrc, INDArray source, DataBuffer.TypeEx typeDst) { if (source.isView()) throw new UnsupportedOperationException("Impossible to compress View. Consider using dup() before. "); DataBuffer buffer = convertDataEx(typeSrc, source.data(), typeDst); source.setData(buffer); if (buffer instanceof CompressedDataBuffer) source.markAsCompressed(true); else source.markAsCompressed(false); return source; }
/** * This method converts Single/Double precision databuffer to Half-precision databuffer * * @param typeSrc * @param source * @param typeDst @return */ @Override public INDArray convertDataEx(DataBuffer.TypeEx typeSrc, INDArray source, DataBuffer.TypeEx typeDst) { if (source.isView()) throw new UnsupportedOperationException("Impossible to compress View. Consider using dup() before. "); DataBuffer buffer = convertDataEx(typeSrc, source.data(), typeDst); source.setData(buffer); if (buffer instanceof CompressedDataBuffer) source.markAsCompressed(true); else source.markAsCompressed(false); return source; }
/** * Reads an HDF5 file into an NDArray. * * @param inputFilePath Path of the HDF5 file * @return NDArray with data and a correct shape */ public INDArray readFromPath(Path inputFilePath) { try (hdf5.H5File h5File = new hdf5.H5File()) { h5File.openFile(inputFilePath.toString(), H5F_ACC_RDONLY); hdf5.DataSet dataSet = h5File.asCommonFG().openDataSet("data"); int[] shape = extractShape(dataSet); long totalSize = ArrayUtil.prodLong(shape); DataBuffer dataBuffer = readFromDataSet(dataSet, (int) totalSize); INDArray input = Nd4j.create(shape); input.setData(dataBuffer); return input; } }
@Override public INDArray compress(INDArray array) { INDArray dup = array.dup(array.ordering()); Nd4j.getExecutioner().commit(); dup.setData(compress(dup.data())); dup.markAsCompressed(true); return dup; }
ret.setData(dup(order).data()); } else ret.assign(this);