From: Arun R Bharadwaj <arun@linux.vnet.ibm.com>
To: Andi Kleen <andi@firstfloor.org>
Cc: Anton Blanchard <anton@samba.org>,
tglx@linutronix.de, davem@davemloft.net,
linux-kernel@vger.kernel.org, arjan@infradead.org,
venkatesh.pallipadi@intel.com,
Arun Bharadwaj <arun@linux.vnet.ibm.com>
Subject: Re: NO_HZ migration of TCP ack timers
Date: Thu, 18 Feb 2010 16:03:01 +0530 [thread overview]
Message-ID: <20100218103301.GB26101@linux.vnet.ibm.com> (raw)
In-Reply-To: <87mxz755ks.fsf@basil.nowhere.org>
* Andi Kleen <andi@firstfloor.org> [2010-02-18 09:08:35]:
> Anton Blanchard <anton@samba.org> writes:
>
> > echo 0 > /proc/sys/kernel/timer_migration
> >
> > makes the problem go away.
> >
> > I think the problem is the CPU is most likely to be idle when an rx networking
> > interrupt comes in. It seems the wrong thing to do to migrate any ack timers
> > off the current cpu taking the interrupt, and with enough networks we train
> > wreck transferring everyones ack timers to the nohz load balancer cpu.
>
> If the nohz balancer CPU is otherwise idle, shouldn't it have enough
> cycles to handle acks for everyone? Is the problem the cache line
> transfer time?
>
> But yes if it's non idle the migration might need to spread out
> to more CPUs.
>
> >
> > What should we do? Should we use mod_timer_pinned here? Or is this an issue
>
> Sounds like something that should be controlled by the cpufreq governour's
> idle predictor? Only migrate if predicted idle time is long enough.
> It's essentially the same problem as deciding how deeply idle to put
> a CPU. Heavy measures only pay off if the expected time is long enough.
>
cpuidle infrastructure hs statistics about the idle times for
all the cpus. Maybe we can look to use this infrastructure to decide
whether to migrate timers or not?
arun
> > other areas might see (eg the block layer) and we should instead avoid
> > migrating timers created out of interrupts.
>
> -Andi
>
> --
> ak@linux.intel.com -- Speaking for myself only.
next prev parent reply other threads:[~2010-02-18 10:33 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-02-18 5:28 NO_HZ migration of TCP ack timers Anton Blanchard
2010-02-18 8:08 ` Andi Kleen
2010-02-18 9:55 ` Anton Blanchard
2010-02-18 10:08 ` Andi Kleen
2010-02-18 10:33 ` Arun R Bharadwaj [this message]
2010-02-18 16:03 ` Andi Kleen
2010-02-26 12:26 ` David Miller
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20100218103301.GB26101@linux.vnet.ibm.com \
--to=arun@linux.vnet.ibm.com \
--cc=andi@firstfloor.org \
--cc=anton@samba.org \
--cc=arjan@infradead.org \
--cc=davem@davemloft.net \
--cc=linux-kernel@vger.kernel.org \
--cc=tglx@linutronix.de \
--cc=venkatesh.pallipadi@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox