Whamcloud - gitweb
LU-398 ptlrpc: Add the NRS ORR and TRR policies
authorNikitas Angelinas <nikitas_angelinas@xyratex.com>
Wed, 9 Jan 2013 02:40:21 +0000 (02:40 +0000)
committerOleg Drokin <oleg.drokin@intel.com>
Wed, 24 Apr 2013 21:19:19 +0000 (17:19 -0400)
commitc85f006d40cc5c9504ea873fc815ce2eaa1ee062
tree284849599fccc325c7dfe8fc8084a7ef80295495
parenta585b03a36e61b9039f87135e1542094ae0d6e28
LU-398 ptlrpc: Add the NRS ORR and TRR policies

The ORR (Object-based Round Robin) policy schedules brw RPCs in
per-backend-filesystem-object groupings; RPCs in each group are
sorted according to their logical file or physical disk offsets.

The TRR (Target-based Round Robin) policy performs the same
function as ORR, but instead schedules brw RPCs in per-OST
groupings.

Both these policies aim to provide for increased read throughput
in certain use cases, either by minimizing costly disk seek
operations (by ordering OST_READ, and perhaps also OST_WRITE
RPCs), but may also allow for improved performance through better
resource utilization and by taking advantage of locality of
reference characteristics of the I/O load.

Signed-off-by: Nikitas Angelinas <nikitas_angelinas@xyratex.com>
Co-authored-by: Liang Zhen <liang@whamcloud.com>
Change-Id: I1f5a367f2f4a1cf296a3b38f3e395ab28a10668e
Oracle-bug-id: b=13634
Xyratex-bug-id: MRP-73
Reviewed-on: http://review.whamcloud.com/4938
Tested-by: Hudson
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Lai Siyao <lai.siyao@intel.com>
lustre/include/lustre_net.h
lustre/include/obd_support.h
lustre/ptlrpc/Makefile.in
lustre/ptlrpc/autoMakefile.am
lustre/ptlrpc/nrs.c
lustre/ptlrpc/nrs_orr.c [new file with mode: 0644]
lustre/ptlrpc/ptlrpc_internal.h
lustre/ptlrpc/service.c