Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1378140

Re: [PATCH 1/2] sched/fair: move cpufreq hook to update_cfs_rq_load_avg()

From Steve Muckle <steve.muckle@linaro.org>
Newsgroups linux.kernel
Subject Re: [PATCH 1/2] sched/fair: move cpufreq hook to update_cfs_rq_load_avg()
Date 2016-04-13 20:00 +0200
Message-ID <rnxf4-4Yd-5@gated-at.bofh.it> (permalink)
References (7 earlier) <rmPH4-2Bx-13@gated-at.bofh.it> <rmRzc-3YH-5@gated-at.bofh.it> <rn7DY-p6-37@gated-at.bofh.it> <rnckh-4di-1@gated-at.bofh.it> <rnuhc-2Hz-17@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On 04/13/2016 07:45 AM, Rafael J. Wysocki wrote:
>> I'm concerned generally with the latency to react to changes in
>> > required capacity due to remote wakeups, which are quite common on SMP
>> > platforms with shared cache. Unless the hook is called it could take
>> > up to a tick to react AFAICS if the target CPU is running some other
>> > task that does not get preempted by the wakeup.
>
> So the scenario seems to be that CPU A is running task X and CPU B
> wakes up task Y on it remotely, but that task has to wait for CPU A to
> get to it, so you want to increase the frequency of CPU A at the
> wakeup time so as to reduce the time the woken up task has to wait.
> 
> In that case task X would not be giving the CPU away (ie. no
> invocations of schedule()) for the whole tick, so it would be
> CPU/memory bound.  In that case I would expect CPU A to be running at
> full capacity already unless this is the first tick period in which
> task X behaves this way which looks like a corner case to me.

This situation is fairly common in bursty workloads (such as UI driven
ones).

> Moreover, sending an IPI to CPU A in that case looks like the right
> thing to do to me anyway.

Sorry I didn't follow - sending an IPI to do what exactly? Perform the
wakeup operation on the target CPU?

thanks,
Steve

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

Re: [PATCH 1/2] sched/fair: move cpufreq hook to  update_cfs_rq_load_avg() Steve Muckle <steve.muckle@linaro.org> - 2016-04-11 21:30 +0200
  Re: [PATCH 1/2] sched/fair: move cpufreq hook to update_cfs_rq_load_avg() "Rafael J. Wysocki" <rafael@kernel.org> - 2016-04-11 23:30 +0200
    Re: [PATCH 1/2] sched/fair: move cpufreq hook to update_cfs_rq_load_avg() "Rafael J. Wysocki" <rafael@kernel.org> - 2016-04-12 16:40 +0200
      Re: [PATCH 1/2] sched/fair: move cpufreq hook to  update_cfs_rq_load_avg() Steve Muckle <steve.muckle@linaro.org> - 2016-04-12 21:40 +0200
        Re: [PATCH 1/2] sched/fair: move cpufreq hook to update_cfs_rq_load_avg() "Rafael J. Wysocki" <rafael@kernel.org> - 2016-04-13 16:50 +0200
          Re: [PATCH 1/2] sched/fair: move cpufreq hook to  update_cfs_rq_load_avg() Steve Muckle <steve.muckle@linaro.org> - 2016-04-13 20:00 +0200
            Re: [PATCH 1/2] sched/fair: move cpufreq hook to update_cfs_rq_load_avg() "Rafael J. Wysocki" <rafael@kernel.org> - 2016-04-13 21:40 +0200
      Re: [PATCH 1/2] sched/fair: move cpufreq hook to  update_cfs_rq_load_avg() Steve Muckle <steve.muckle@linaro.org> - 2016-04-13 02:10 +0200
        Re: [PATCH 1/2] sched/fair: move cpufreq hook to update_cfs_rq_load_avg() "Rafael J. Wysocki" <rafael@kernel.org> - 2016-04-13 06:50 +0200
          Re: [PATCH 1/2] sched/fair: move cpufreq hook to update_cfs_rq_load_avg() "Rafael J. Wysocki" <rafael@kernel.org> - 2016-04-13 18:10 +0200
            Re: [PATCH 1/2] sched/fair: move cpufreq hook to  update_cfs_rq_load_avg() Steve Muckle <steve.muckle@linaro.org> - 2016-04-13 20:10 +0200
              Re: [PATCH 1/2] sched/fair: move cpufreq hook to update_cfs_rq_load_avg() "Rafael J. Wysocki" <rafael@kernel.org> - 2016-04-13 22:00 +0200
          Re: [PATCH 1/2] sched/fair: move cpufreq hook to update_cfs_rq_load_avg() "Rafael J. Wysocki" <rafael@kernel.org> - 2016-04-13 18:10 +0200

csiph-web