534d9c2002
This mimics the per-lcore cache that the DPDK rte_mempool implements. But DPDK rte_mempool relies on the DPDK lcore_ids which are not set for non-DPDK threads (such as the fio bdev plugin). So implement our own per-thread bdev_io cache instead. This is quite simple since we already have a per-thread bdev channel called spdk_bdev_mgmt_channel. Previously, we passed 64 to spdk_mempool for the per-core cache size. This patch effectively changes it to 256 and moves it from the spdk_mempool (which we now specify with a per-core cache size of 0) to this internal bdev cache. We allocate 64K of these bdev_io, so putting a few more in each thread's cache will not hurt anything. Signed-off-by: Jim Harris <james.r.harris@intel.com> Change-Id: I5e715f8c69b99130c7b80347b47a881595d184ae Reviewed-on: https://review.gerrithub.io/392531 Reviewed-by: Seth Howell <seth.howell5141@gmail.com> Reviewed-by: Ben Walker <benjamin.walker@intel.com> Reviewed-by: Daniel Verkamp <daniel.verkamp@intel.com> Tested-by: SPDK Automated Test System <sys_sgsw@intel.com> |
||
---|---|---|
.. | ||
bdev | ||
blob | ||
blobfs | ||
conf | ||
copy | ||
cunit | ||
env_dpdk | ||
event | ||
ioat | ||
iscsi | ||
json | ||
jsonrpc | ||
log | ||
lvol | ||
nbd | ||
net | ||
nvme | ||
nvmf | ||
rocksdb | ||
rpc | ||
scsi | ||
trace | ||
ut_mock | ||
util | ||
vhost | ||
Makefile |