+53
−2
Loading
Under newer kernels the way how cpu affinity is applied to poll threads changed, such that they are not bound to all online cpus but rather the cpus of the job threads. When using cpus_allowed, this means all the poll threads are bound to that particular mask, unless dedicated cpu is selected via sqthread_poll_cpu. This behavior shows significant performance drop since the cpu time is now shared across all these threads. To mitigate, and to make sure results, more or less, much the ones from older kernels, define the dedicated cpu for each poll thread created per job. Change-Id: I7e085729883ade099c5832e766f27cff22b18757 Signed-off-by:Michal Berger <michal.berger@intel.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/23090 Tested-by:
SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by:
Jim Harris <jim.harris@samsung.com> Reviewed-by:
Konrad Sztyber <konrad.sztyber@intel.com>