All of lore.kernel.org
 help / color / mirror / Atom feed
From: Eric Dumazet <dada1@cosmosbay.com>
To: parag.warudkar@gmail.com
Cc: linux-kernel@vger.kernel.org, David Miller <davem@davemloft.net>,
	"netdev@vger.kernel.org" <netdev@vger.kernel.org>
Subject: Re: init_timer_deferrable conversion
Date: Mon, 17 Dec 2007 09:55:04 +0100	[thread overview]
Message-ID: <20071217095504.b02241ee.dada1@cosmosbay.com> (raw)
In-Reply-To: <Pine.LNX.4.64.0712162149220.4622@mini.warudkars.net>

On Sun, 16 Dec 2007 22:00:23 -0500 (EST)
Parag Warudkar <parag.warudkar@gmail.com> wrote:

> In my quest to get the wake-ups from idle per second down to bare minimum, 
> I noticed 3 places in the kernel that could benefit from 
> using init_timer_deferrable() instead of init_timer() -
> 
> a) drivers/net/sky2.c - watchdog_timer. This was showing up high on 
> Powertop's list of things that cause routine wakeups from idle. After 
> converting to init_timer_deferrable() the wakeups went down and this one 
> no longer shows up in powertop's list. 25% reduction.
> 
> b) kernel/time/clocksource.c - watchdog_timer - same story as sky2.c
> 
> c) net/core/neighbour.c - gc_timer - Most benefit from deferrable timer.

neigh_periodic_timer() is actually doing almost nothing per round, since it
looks only one slot of hash table. We could probably convert it to a
workqueue and scan whole table at once.

> 
> I am running a kernel with above changes and haven't noticed any immediate 
> problems and the wakeups-from-idle have gone down from 5-7 to mere 1-2 per 
> second.
> 
> Is there any reason not to make the above timers deferrable - corner 
> cases, other side effects? If not then I will submit a patch.
> 
> Thanks
> 
> Parag
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/
> 

  reply	other threads:[~2007-12-17  9:58 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-12-17  3:00 init_timer_deferrable conversion Parag Warudkar
2007-12-17  8:55 ` Eric Dumazet [this message]
2007-12-17 14:29   ` Eric Dumazet
2007-12-17 17:00     ` Stephen Hemminger
2007-12-17 17:47       ` Parag Warudkar
2007-12-17 18:13         ` Stephen Hemminger
2007-12-17 18:37           ` Parag Warudkar
2007-12-18  6:09     ` Parag Warudkar

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=20071217095504.b02241ee.dada1@cosmosbay.com \
    --to=dada1@cosmosbay.com \
    --cc=davem@davemloft.net \
    --cc=linux-kernel@vger.kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=parag.warudkar@gmail.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.