6629202cbd
By now (5.1 is released), the Linux kernel initiator supports the success optimization and further, the version that doesn't support it (5.0) was EOL-ed. As such, lets open it up @ spdk by default. Doing so provides a notable performance improvement: running perf with iodepth of 64, randread, two threads and block size of 512 bytes for 60s ("-q 64 -w randread -o 512 -c 0x5000 -t 60") over the VMA socket acceleration library and null backing store, we got 730K IOPS with the success optimization vs 550K without it. IOPS MiB/s Average min max 549274.10 268.20 232.99 93.23 3256354.96 728117.57 355.53 175.76 85.93 14632.16 To allow for interop with older kernel initiators, we added a config knob under which the success optimization can be enabled or disabled. Change-Id: Ia4c79f607f82c3563523ae3e07a67eac95b56dbb Signed-off-by: Or Gerlitz <ogerlitz@mellanox.com> Reviewed-on: https://review.gerrithub.io/c/spdk/spdk/+/457644 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Ben Walker <benjamin.walker@intel.com> Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com> Reviewed-by: Ziye Yang <ziye.yang@intel.com> Reviewed-by: Darek Stojaczyk <dariusz.stojaczyk@intel.com> |
||
---|---|---|
.. | ||
ctrlr_bdev.c | ||
ctrlr_discovery.c | ||
ctrlr.c | ||
Makefile | ||
nvmf_fc.h | ||
nvmf_internal.h | ||
nvmf.c | ||
rdma.c | ||
subsystem.c | ||
tcp.c | ||
transport.c | ||
transport.h |