Whamcloud - gitweb
LU-4865 zfs: grow block size by write pattern 41/18441/11
authorJinshan Xiong <jinshan.xiong@intel.com>
Fri, 12 Aug 2016 04:20:44 +0000 (21:20 -0700)
committerOleg Drokin <oleg.drokin@intel.com>
Mon, 29 Aug 2016 04:24:43 +0000 (04:24 +0000)
commitb738c4850935f3a9c483b3141cb37d6539557615
treef8ba951c17f24f233fcb1142a905abca9e9e237e
parentaa14b0b9a1521b3deb26a07eb8f7bb28ce793001
LU-4865 zfs: grow block size by write pattern

This patch grows the block size by write RPC. The osd-zfs blocksize
used to be fixed at 128KB, which is too big for random write and
too small for seqential write.

This patch decides the block size by the first few RPCs. If the first
few RPCs are sequential, mostly it will pick maximum block size for
the object; otherwise, a feasible block size will be picked by the
RPC size.

Signed-off-by: Jinshan Xiong <jinshan.xiong@intel.com>
Change-Id: I66f7cbdc2b5e0365058b152b4865b00cdabb0cf3
Reviewed-on: http://review.whamcloud.com/18441
Tested-by: Jenkins
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Don Brady <don.brady@intel.com>
lustre/osd-zfs/osd_handler.c
lustre/osd-zfs/osd_internal.h
lustre/osd-zfs/osd_io.c
lustre/osd-zfs/osd_object.c
lustre/tests/sanity.sh