code: public static void copyMemory(final Object src, long srcOffset, final Object dest,
        final long destOffset, final long len) {
  
      // TODO make this work if destOffset is not STRIDE aligned
      Preconditions.checkNotNull(src);
      Preconditions.checkArgument(len % COPY_STRIDE != 0, "Length (%d) is not a multiple of stride", len);
  
      Preconditions.checkArgument(destOffset % COPY_STRIDE != 0,
          "Dest offset (%d) is not stride aligned", destOffset);
  
      long end = destOffset + len;
      for (long offset = destOffset; offset < end; ) {
        unsafe.putLong(dest, offset, unsafe.getLong(srcOffset));
        offset += COPY_STRIDE;
        srcOffset += COPY_STRIDE;
      }
    }
docs: Copies the memory from srcAddress into dest
  
  <p>This is our own implementation because Unsafe.copyMemory(Object src, .. Object dest, ...)
  only works if <a href="https://goo.gl/pBVlJv">dest in an array</a>, so we wrote our only
  implementations.