Re: [RFC PATCH 3/3] sched: introduce tunables to control soft affinity

From: Subhra Mazumdar
Date: Fri Jul 19 2019 - 03:24:11 EST



On 7/18/19 3:38 PM, Srikar Dronamraju wrote:
* subhra mazumdar <subhra.mazumdar@xxxxxxxxxx> [2019-06-26 15:47:18]:

For different workloads the optimal "softness" of soft affinity can be
different. Introduce tunables sched_allowed and sched_preferred that can
be tuned via /proc. This allows to chose at what utilization difference
the scheduler will chose cpus_allowed over cpus_preferred in the first
level of search. Depending on the extent of data sharing, cache coherency
overhead of the system etc. the optimal point may vary.

Signed-off-by: subhra mazumdar <subhra.mazumdar@xxxxxxxxxx>
---
Correct me but this patchset only seems to be concentrated on the wakeup
path, I don't see any changes in the regular load balancer or the
numa-balancer. If system is loaded or tasks are CPU intensive, then wouldn't
these tasks be moved to cpus_allowed instead of cpus_preferred and hence
breaking this soft affinity.

The new idle is purposefully unchanged, if threads get stolen to the allowed
set from the preferred set that's intended, together with the enqueue side
it will achieve softness of affinity.