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


Groups > linux.kernel > #1317126

Re: fast path cycle muncher (vmstat: make vmstat_updater deferrable again and shut down on idle)

From Michal Hocko <mhocko@kernel.org>
Newsgroups linux.kernel
Subject Re: fast path cycle muncher (vmstat: make vmstat_updater deferrable again and shut down on idle)
Date 2016-01-25 18:50 +0100
Message-ID <qUTr3-7vm-11@gated-at.bofh.it> (permalink)
References (5 earlier) <qTKzw-560-15@gated-at.bofh.it> <qTMrE-6nu-5@gated-at.bofh.it> <qTMBk-6ri-29@gated-at.bofh.it> <qTN4n-6Dx-31@gated-at.bofh.it> <qU9ey-5ik-15@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On Sat 23-01-16 17:21:55, Mike Galbraith wrote:
> Hi Christoph,
> 
> While you're fixing that commit up, can you perhaps find a better home
> for quiet_vmstat()?  It not only munches cycles when switching cross
> -core mightily, for -rt it injects a sleeping lock into the idle task.
> 
>     12.89%  [kernel]       [k] refresh_cpu_vm_stats.isra.12
>      4.75%  [kernel]       [k] __schedule                  
>      4.70%  [kernel]       [k] mutex_unlock                
>      3.14%  [kernel]       [k] __switch_to                 

Hmm, I wouldn't have expected that refresh_cpu_vm_stats could have
such a large footprint. I guess this would be just an expensive noop
because we have to check all the zones*counters and do an expensive
this_cpu_xchg. Is the whole deferred thing worth this overhead?

0eb77e988032 ("vmstat: make vmstat_updater deferrable again and
shut down on idle") doesn't talk about any numbers and neither does
39bf6270f524 ("VM statistics: Make timer deferrable").

But even when refresh_cpu_vm_stats is made more effective there would
still be the problem for RT and the work canceling, though. We would
need much more changes to make this RT ready (both timer and WQ code
would need some changes AFAIU).

Unless there is a clear and huge win from doing the vmstat update
deferrable then I think a revert is more appropriate IMHO.
-- 
Michal Hocko
SUSE Labs 

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


Thread

Re: mm, vmstat: kernel BUG at mm/vmstat.c:1408! Michal Hocko <mhocko@kernel.org> - 2016-01-20 15:40 +0100
  Re: mm, vmstat: kernel BUG at mm/vmstat.c:1408! Sasha Levin <sasha.levin@oracle.com> - 2016-01-20 16:00 +0100
    Re: mm, vmstat: kernel BUG at mm/vmstat.c:1408! Michal Hocko <mhocko@kernel.org> - 2016-01-20 16:20 +0100
      Re: mm, vmstat: kernel BUG at mm/vmstat.c:1408! Christoph Lameter <cl@linux.com> - 2016-01-20 16:30 +0100
        Re: mm, vmstat: kernel BUG at mm/vmstat.c:1408! Sasha Levin <sasha.levin@oracle.com> - 2016-01-20 17:00 +0100
          Re: mm, vmstat: kernel BUG at mm/vmstat.c:1408! Christoph Lameter <cl@linux.com> - 2016-01-20 17:00 +0100
            Re: mm, vmstat: kernel BUG at mm/vmstat.c:1408! Michal Hocko <mhocko@kernel.org> - 2016-01-20 22:30 +0100
              Re: mm, vmstat: kernel BUG at mm/vmstat.c:1408! Christoph Lameter <cl@linux.com> - 2016-01-20 23:00 +0100
                Re: mm, vmstat: kernel BUG at mm/vmstat.c:1408! Michal Hocko <mhocko@kernel.org> - 2016-01-21 09:30 +0100
                Re: mm, vmstat: kernel BUG at mm/vmstat.c:1408! Christoph Lameter <cl@linux.com> - 2016-01-21 16:50 +0100
                Re: mm, vmstat: kernel BUG at mm/vmstat.c:1408! Michal Hocko <mhocko@kernel.org> - 2016-01-21 18:00 +0100
                Re: mm, vmstat: kernel BUG at mm/vmstat.c:1408! Christoph Lameter <cl@linux.com> - 2016-01-21 18:40 +0100
                Re: mm, vmstat: kernel BUG at mm/vmstat.c:1408! Shiraz Hashim <shiraz.linux.kernel@gmail.com> - 2016-01-22 12:10 +0100
                Re: mm, vmstat: kernel BUG at mm/vmstat.c:1408! Michal Hocko <mhocko@kernel.org> - 2016-01-22 15:10 +0100
                Re: mm, vmstat: kernel BUG at mm/vmstat.c:1408! Christoph Lameter <cl@linux.com> - 2016-01-22 17:10 +0100
                Re: mm, vmstat: kernel BUG at mm/vmstat.c:1408! Michal Hocko <mhocko@kernel.org> - 2016-01-22 17:20 +0100
                Re: mm, vmstat: kernel BUG at mm/vmstat.c:1408! Christoph Lameter <cl@linux.com> - 2016-01-22 17:50 +0100
                Re: mm, vmstat: kernel BUG at mm/vmstat.c:1408! Michal Hocko <mhocko@kernel.org> - 2016-01-22 18:20 +0100
                fast path cycle muncher (vmstat: make vmstat_updater deferrable  again and shut down on idle) Mike Galbraith <umgwanakikbuti@gmail.com> - 2016-01-23 17:30 +0100
                Re: fast path cycle muncher (vmstat: make vmstat_updater deferrable  again and shut down on idle) Christoph Lameter <cl@linux.com> - 2016-01-24 01:40 +0100
                Re: fast path cycle muncher (vmstat: make vmstat_updater deferrable  again and shut down on idle) Mike Galbraith <umgwanakikbuti@gmail.com> - 2016-01-24 03:50 +0100
                Re: fast path cycle muncher (vmstat: make vmstat_updater deferrable  again and shut down on idle) Christoph Lameter <cl@linux.com> - 2016-01-24 04:50 +0100
                Re: fast path cycle muncher (vmstat: make vmstat_updater deferrable  again and shut down on idle) Mike Galbraith <umgwanakikbuti@gmail.com> - 2016-01-24 06:40 +0100
                Re: fast path cycle muncher (vmstat: make vmstat_updater deferrable  again and shut down on idle) Michal Hocko <mhocko@kernel.org> - 2016-01-25 18:50 +0100
                Re: fast path cycle muncher (vmstat: make vmstat_updater deferrable  again and shut down on idle) Christoph Lameter <cl@linux.com> - 2016-01-25 19:10 +0100
                Re: fast path cycle muncher (vmstat: make vmstat_updater deferrable  again and shut down on idle) Michal Hocko <mhocko@kernel.org> - 2016-01-25 21:20 +0100
                Re: fast path cycle muncher (vmstat: make vmstat_updater deferrable  again and shut down on idle) Christoph Lameter <cl@linux.com> - 2016-01-26 17:30 +0100
                Re: fast path cycle muncher (vmstat: make vmstat_updater deferrable  again and shut down on idle) Christoph Lameter <cl@linux.com> - 2016-01-26 19:40 +0100
                Re: fast path cycle muncher (vmstat: make vmstat_updater deferrable  again and shut down on idle) Mike Galbraith <umgwanakikbuti@gmail.com> - 2016-01-26 19:50 +0100
                Re: fast path cycle muncher (vmstat: make vmstat_updater deferrable  again and shut down on idle) Christoph Lameter <cl@linux.com> - 2016-01-26 20:30 +0100
                Re: fast path cycle muncher (vmstat: make vmstat_updater deferrable  again and shut down on idle) Mike Galbraith <umgwanakikbuti@gmail.com> - 2016-01-27 04:20 +0100
                Re: fast path cycle muncher (vmstat: make vmstat_updater deferrable  again and shut down on idle) Mike Galbraith <umgwanakikbuti@gmail.com> - 2016-01-27 05:20 +0100
                Re: fast path cycle muncher (vmstat: make vmstat_updater deferrable  again and shut down on idle) Christoph Lameter <cl@linux.com> - 2016-01-27 17:30 +0100
                Re: fast path cycle muncher (vmstat: make vmstat_updater deferrable  again and shut down on idle) Mike Galbraith <umgwanakikbuti@gmail.com> - 2016-01-26 19:40 +0100
                Re: fast path cycle muncher (vmstat: make vmstat_updater deferrable  again and shut down on idle) Mike Galbraith <umgwanakikbuti@gmail.com> - 2016-01-26 03:20 +0100
                Re: fast path cycle muncher (vmstat: make vmstat_updater deferrable  again and shut down on idle) Mike Galbraith <umgwanakikbuti@gmail.com> - 2016-01-26 03:30 +0100
                Re: fast path cycle muncher (vmstat: make vmstat_updater deferrable  again and shut down on idle) Christoph Lameter <cl@linux.com> - 2016-01-26 17:30 +0100
                Re: fast path cycle muncher (vmstat: make vmstat_updater deferrable  again and shut down on idle) Mike Galbraith <umgwanakikbuti@gmail.com> - 2016-01-26 18:40 +0100
                Re: fast path cycle muncher (vmstat: make vmstat_updater deferrable  again and shut down on idle) Christoph Lameter <cl@linux.com> - 2016-01-26 19:20 +0100
                Re: fast path cycle muncher (vmstat: make vmstat_updater deferrable  again and shut down on idle) Christoph Lameter <cl@linux.com> - 2016-01-26 17:30 +0100
                Re: fast path cycle muncher (vmstat: make vmstat_updater deferrable  again and shut down on idle) Mike Galbraith <umgwanakikbuti@gmail.com> - 2016-01-26 18:10 +0100
                Re: fast path cycle muncher (vmstat: make vmstat_updater deferrable  again and shut down on idle) Christoph Lameter <cl@linux.com> - 2016-01-26 19:30 +0100
                Re: fast path cycle muncher (vmstat: make vmstat_updater deferrable  again and shut down on idle) Mike Galbraith <umgwanakikbuti@gmail.com> - 2016-01-26 20:10 +0100
                Re: fast path cycle muncher (vmstat: make vmstat_updater deferrable  again and shut down on idle) Christoph Lameter <cl@linux.com> - 2016-01-26 20:30 +0100
                [PATCH] mm, vmstat: make quiet_vmstat lighter (was: Re: fast path  cycle muncher (vmstat: make vmstat_updater deferrable) again and shut down  on idle) Michal Hocko <mhocko@kernel.org> - 2016-01-27 17:50 +0100
                Re: [PATCH] mm, vmstat: make quiet_vmstat lighter (was: Re: fast  path cycle muncher (vmstat: make vmstat_updater deferrable) again and shut  down on idle) Mike Galbraith <umgwanakikbuti@gmail.com> - 2016-01-27 18:10 +0100
                Re: [PATCH] mm, vmstat: make quiet_vmstat lighter (was: Re: fast  path cycle muncher (vmstat: make vmstat_updater deferrable) again and shut  down on idle) Christoph Lameter <cl@linux.com> - 2016-01-27 19:30 +0100
                Re: mm, vmstat: kernel BUG at mm/vmstat.c:1408! Linus Torvalds <torvalds@linux-foundation.org> - 2016-01-24 18:00 +0100
  Re: mm, vmstat: kernel BUG at mm/vmstat.c:1408! Christoph Lameter <cl@linux.com> - 2016-01-20 16:20 +0100
    Re: mm, vmstat: kernel BUG at mm/vmstat.c:1408! Michal Hocko <mhocko@kernel.org> - 2016-01-20 16:30 +0100

csiph-web