nd4j-serde/nd4j-arrow/src/main/java/org/nd4j/arrow/ArrowSerde.java
public static int addDataForArr(FlatBufferBuilder bufferBuilder, INDArray arr) {
        int offset = DataBufferStruct.createDataBufferStruct(bufferBuilder,arr.data());
        int ret = Buffer.createBuffer(bufferBuilder,offset,arr.data().length() * arr.data().getElementSize());
        return ret;

    }
public static int addDataForArr(FlatBufferBuilder bufferBuilder, INDArray arr) {
        int offset = DataBufferStruct.createDataBufferStruct(bufferBuilder,arr.data());
        int ret = Buffer.createBuffer(bufferBuilder,offset,arr.data().length() * arr.data().getElementSize());
        return ret;

    }
Create a {@link Buffer}
representing the location metadata of the actual data
contents for the ndarrays' {@link DataBuffer}
@param bufferBuilder the buffer builder in use
@param arr the array to add the underlying data for
@return the offset added