mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: john stultz <johnstul@us.ibm.com>
To: Roman Zippel <zippel@linux-m68k.org>
Cc: lkml <linux-kernel@vger.kernel.org>,
	Andrew Morton <akpm@osdl.org>,
	George Anzinger <george@mvista.com>,
	Ulrich Windl <ulrich.windl@rz.uni-regensburg.de>
Subject: Re: [PATCH 1/6] new timeofday core subsystem for -mm (v.B3)
Date: Mon, 20 Jun 2005 10:09:14 -0700	[thread overview]
Message-ID: <1119287354.9947.22.camel@cog.beaverton.ibm.com> (raw)
In-Reply-To: <Pine.LNX.4.61.0506181344000.3743@scrub.home>

On Sat, 2005-06-18 at 14:02 +0200, Roman Zippel wrote:
> On Fri, 17 Jun 2005, john stultz wrote:
> 
> > o Uses nanoseconds as the kernel's base time unit
> 
> Maybe I missed it, but was there ever a conclusive discussion about the 
> perfomance impact this has?
> I see lots of new u64 variables. I'm especially interested how this code 
> scales down to small and slow machines, where such a precision is absolute 
> overkill. How do these patches change current and possibly common time 
> operations?


Hey Roman, 
	That's a good issue to bring up. With regards to the timeofday
infrastructure, there are two performance concerns (though let me know
if I'm forgetting something):
	1. timer interrupt processing overhead
	2. gettimeofday() syscall performance

On smaller systems, timer interrupt processing is a concern, with the
shift to HZ=1000, we got a number of complaints from folks w/ old 486s
where time would drift due lost ticks. This would happen when something
(usually IDE in PIO mode) would disable interrupts and they would miss a
ton of timer interrupts. Also the impact of running the timekeeping code
10x more frequently was seen in a number of cases.

With the new infrastructure, timekeeping is all done via a soft-timer
outside of interrupt context. In fact, the timekeeping soft-timer is
setup to run every 50ms instead of every ms. This should help overall
performance on slower systems using high HZ values.

As for gettimefoday() syscall performance, I one had some numbers, but I
would need to re-create them. I'll see if I can grab a slower box and
give you some hard numbers. The gettimeofday() path is fairly
streamlined and should be pretty straight forward in the patch (see
kernel/timeofday.c), so let me know if you have specific concerns. 

There will probably be a bit of a drop, but I have some ideas for
cacheing a precomputed timeval in the timekeeping soft-timer if its a
serious issue.

thanks
-john


  parent reply	other threads:[~2005-06-20 17:09 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-06-18  2:56 john stultz
2005-06-18  2:58 ` [PATCH 2/6] new timeofday i386 arch specific changes, part 1 " john stultz
2005-06-18  2:59   ` [PATCH 3/6] new timeofday i386 arch specific changes, part 2 " john stultz
2005-06-18  3:01     ` [PATCH 4/6] new timeofday i386 arch specific changes, part 3 " john stultz
2005-06-18  3:02       ` [PATCH 5/6] new timeofday i386 arch specific changes, part 4 " john stultz
2005-06-18  3:04         ` [PATCH 6/6] new timeofday i386 specific timesources " john stultz
2005-06-18 12:02 ` [PATCH 1/6] new timeofday core subsystem " Roman Zippel
2005-06-20  7:01   ` Ulrich Windl
2005-06-20 10:22     ` Roman Zippel
2005-06-20 10:31       ` Ulrich Windl
2005-06-20 10:54         ` Roman Zippel
2005-06-20 11:04         ` Christoph Hellwig
2005-06-20 17:09   ` john stultz [this message]
2005-06-20 18:10     ` Lee Revell
2005-06-20 21:53       ` john stultz
2005-06-20 23:44         ` Lee Revell
2005-06-21 14:55           ` Chris Friesen
2005-06-21 17:20             ` john stultz
2005-06-21  6:26       ` Ulrich Windl
2005-06-20 22:05     ` Roman Zippel
2005-06-20 23:40       ` Lee Revell
2005-06-20 23:55       ` john stultz
2005-06-21 15:08         ` Roman Zippel
2005-06-22  0:57           ` john stultz
2005-06-22  2:39             ` john stultz
2005-06-22 19:45             ` Roman Zippel
2005-06-23  0:29               ` john stultz
2005-06-23 21:59                 ` Roman Zippel
2005-06-24  0:33                   ` john stultz
2005-06-24 10:58                     ` Roman Zippel
2005-06-21  6:42       ` Ulrich Windl
2005-06-21 15:13         ` Roman Zippel

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=1119287354.9947.22.camel@cog.beaverton.ibm.com \
    --to=johnstul@us.ibm.com \
    --cc=akpm@osdl.org \
    --cc=george@mvista.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=ulrich.windl@rz.uni-regensburg.de \
    --cc=zippel@linux-m68k.org \
    /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

all inboxes | Powered by JetHome®