Re: [RFC PATCH 0/5] enable runnable load avg in load balance

2012-11-26 Thread Benjamin Segall
So, I've been trying out using the runnable averages for load balance in a few ways, but haven't actually gotten any improvement on the benchmarks I've run. I'll post my patches once I have the numbers down, but it's generally been about half a percent to 1% worse on the tests I've tried. The basi

Re: [RFC PATCH 0/5] enable runnable load avg in load balance

2012-11-26 Thread Benjamin Segall
I ran it on tip/sched/core. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

Re: [patch 06/16] sched: account for blocked load waking back up

2012-09-04 Thread Benjamin Segall
Preeti Murthy writes: > Hi Paul, > > @@ -1170,20 +1178,42 @@ static inline void enqueue_entity_load_avg(struct > cfs_rq *cfs_rq, >                                                   struct sched_entity *se, >                                                   int wakeup) >  { >

Re: [tip:sched/core] sched: Track the runnable average on a per-task entity basis

2012-10-25 Thread Benjamin Segall
li guang writes: > 在 2012-10-24三的 02:43 -0700,tip-bot for Paul Turner写道: >> +do { >> +if (runnable) >> +sa->runnable_avg_sum += delta_w; >> +sa->runnable_avg_period += delta_w; >> + >> +/* >> +

Re: [patch 00/16] sched: per-entity load-tracking

2012-09-24 Thread Benjamin Segall
"Jan H. Schönherr" writes: > Hi Paul. > > Am 23.08.2012 16:14, schrieb p...@google.com: >> Please find attached the latest version for CFS load-tracking. > > Originally, I thought, this series also takes care of > the leaf-cfs-runqueue ordering issue described here: > > http://lkml.org/lkml/2011/

Re: [patch 11/16] sched: replace update_shares weight distribution with per-entity computation

2012-09-24 Thread Benjamin Segall
blocked_load_avg ~= \sum_child child.runnable_avg_sum/child.runnable_avg_period * child.weight The thought was: So if all the children have hit zero runnable_avg_sum (or in the case of a child task, will when they wake up), then blocked_avg sum should also hit zero at the same and we're in theory

Re: [patch 02/16] sched: maintain per-rq runnable averages

2012-10-29 Thread Benjamin Segall
Preeti Murthy writes: > Hi Paul, Ben, > > A few queries regarding this patch: > > 1.What exactly is the significance of introducing sched_avg structure > for a runqueue? If I have >understood correctly, sched_avg keeps track of how long a task has > been active, >how long has it been serv

Re: [PATCH 14/16] sched: make __update_entity_runnable_avg() fast

2012-07-09 Thread Benjamin Segall
Correct, the sum is 1..n. The maximum was chosen as 516/46742 because that is the point when the approximation of loop + fixed point math being used reaches a maximum, even if the ideal y^n series would cap out slightly differently. -- To unsubscribe from this list: send the line "unsubscribe linux

Re: [PATCH 0/4] sched/fair: Burstable CFS bandwidth controller

2020-12-17 Thread Benjamin Segall
The code for this looks fine, and the feature is something people do seem to ask for occasionally. I agree with peterz that using this generally means you lose any guarantees (which are already imperfect given CFS), but I suspect that cfsb is being used in overload anyways. The docs could use a gr

Re: [PATCH] sched/fair: remove the spin_lock operations

2020-10-30 Thread Benjamin Segall
Hui Su writes: > Since 'ab93a4bc955b ("sched/fair: Remove > distribute_running fromCFS bandwidth")',there is > nothing to protect between raw_spin_lock_irqsave/store() > in do_sched_cfs_slack_timer(). > > So remove it. Reviewed-by: Ben Segall (I might nitpick the subject to be clear that it sh

Re: [PATCH] sched/fair: Reorder throttle_cfs_rq() path

2020-11-11 Thread Benjamin Segall
Peng Wang writes: > As commit 39f23ce07b93 ("sched/fair: Fix unthrottle_cfs_rq() for > leaf_cfs_rq list") does in unthrottle_cfs_rq(), throttle_cfs_rq() > can also use the same pattern as dequeue_task_fair(). > > There is no functional changes. It's generally a bit more hassle and less clear, bu