From: "Albert D. Cahalan" <acahalan@cs.uml.edu>
To: george@mvista.com (george anzinger)
Cc: mbs@mc.com (Mark Salisbury),
lk@tantalophile.demon.co.uk (Jamie Lokier),
greearb@candelatech.com (Ben Greear),
vonbrand@sleipnir.valparaiso.cl (Horst von Brand),
linux-kernel@vger.kernel.org,
high-res-timers-discourse@lists.sourceforge.net
Subject: Re: No 100 HZ timer!
Date: Mon, 16 Apr 2001 16:45:39 -0400 (EDT) [thread overview]
Message-ID: <200104162045.f3GKjd4522374@saturn.cs.uml.edu> (raw)
In-Reply-To: <3ADB45C0.E3F32257@mvista.com> from "george anzinger" at Apr 16, 2001 12:19:28 PM
> CLOCK_10MS a wall clock supporting timers with 10 ms resolution (same as
> linux today).
Except on the Alpha, and on some ARM systems, etc.
The HZ constant varies from 10 to 1200.
> At the same time we will NOT support the following clocks:
>
> CLOCK_VIRTUAL a clock measuring the elapsed execution time (real or
> wall) of a given task.
...
> For tick less systems we will need to provide code to collect execution
> times. For the ticked system the current method of collection these
> times will be used. This project will NOT attempt to improve the
> resolution of these timers, however, the high speed, high resolution
> access to the current time will allow others to augment the system in
> this area.
...
> This project will NOT provide higher resolution accounting (i.e. user
> and system execution times).
It is nice to have accurate per-process user/system accounting.
Since you'd be touching the code anyway...
> The POSIX interface provides for "absolute" timers relative to a given
> clock. When these timers are related to a "wall" clock they will need
> adjusting when the wall clock time is adjusted. These adjustments are
> done for "leap seconds" and the date command.
This is a BIG can of worms. You have UTC, TAI, GMT, and a loosely
defined POSIX time that is none of the above. This is a horrid mess,
even ignoring gravity and speed. :-)
Can a second be 2 billion nanoseconds?
Can a nanosecond be twice as long as normal?
Can a second appear twice, with the nanoseconds getting reset?
Can a second never appear at all?
Can you compute times more than 6 months into the future?
How far does time deviate from solar time? Is this constrained?
If you deal with leap seconds, you have to have a table of them.
This table grows with time, with adjustments being made with only
about 6 months notice. So the user upgrades after a year or two,
and the installer discovers that the user has been running a
system that is unaware of the most recent leap second. Arrrgh.
Sure you want to touch this? The Austin group argued over it for
a very long time and never did find a really good solution.
Maybe you should just keep the code simple and fast, without any
concern for clock adjustments.
> In either a ticked or tick less system, it is expected that resolutions
> higher than 1/HZ will come with some additional overhead. For this
> reason, the CLOCK resolution will be used to round up times for each
> timer. When the CLOCK provides 1/HZ (or coarser) resolution, the
> project will attempt to meet or exceed the current systems timer
> performance.
Within the kernel at least, it would be good to let drivers specify
desired resolution. Then a near-by value could be selected, perhaps
with some consideration for event type. (for cache reasons)
next prev parent reply other threads:[~2001-04-16 20:48 UTC|newest]
Thread overview: 118+ messages / expand[flat|nested] mbox.gz Atom feed top
2001-04-11 17:56 No 100 HZ timer! Bret Indrelee
2001-04-12 17:39 ` george anzinger
2001-04-12 21:19 ` Bret Indrelee
2001-04-12 22:20 ` george anzinger
2001-04-13 4:00 ` Bret Indrelee
2001-04-13 6:32 ` Ben Greear
2001-04-13 8:42 ` george anzinger
2001-04-13 10:36 ` Jamie Lokier
2001-04-13 16:07 ` george anzinger
2001-04-13 23:00 ` Jamie Lokier
2001-04-13 12:05 ` Horst von Brand
2001-04-13 21:53 ` george anzinger
2001-04-13 23:10 ` Jamie Lokier
2001-04-16 3:02 ` Ben Greear
2001-04-16 2:46 ` Jamie Lokier
2001-04-16 12:36 ` Mark Salisbury
2001-04-16 19:19 ` george anzinger
2001-04-16 20:45 ` Albert D. Cahalan [this message]
2001-04-16 21:29 ` Chris Wedgwood
2001-04-16 22:25 ` george anzinger
2001-04-16 23:57 ` Mark Salisbury
2001-04-17 0:45 ` george anzinger
2001-04-17 12:12 ` Mark Salisbury
2001-04-17 12:51 ` Mark Salisbury
2001-04-17 18:53 ` george anzinger
2001-04-17 19:41 ` Jamie Lokier
2001-04-23 8:05 ` Ulrich Windl
2001-04-23 13:22 ` Mark Salisbury
2001-04-16 2:41 ` Ben Greear
-- strict thread matches above, loose matches on Subject: below --
2001-08-01 17:22 No 100 HZ timer ! george anzinger
2001-08-01 19:34 ` Chris Friesen
2001-08-01 19:49 ` Richard B. Johnson
2001-08-01 20:08 ` Mark Salisbury
2001-08-01 20:33 ` george anzinger
2001-08-01 21:20 ` george anzinger
2001-08-02 4:28 ` Rik van Riel
2001-08-02 6:03 ` george anzinger
2001-08-02 14:39 ` Oliver Xymoron
2001-08-02 16:36 ` george anzinger
2001-08-02 17:05 ` Oliver Xymoron
2001-08-02 17:46 ` george anzinger
2001-08-02 18:41 ` Oliver Xymoron
2001-08-02 21:18 ` george anzinger
2001-08-02 22:09 ` Oliver Xymoron
2001-08-02 17:26 ` John Alvord
2001-04-12 13:14 No 100 HZ timer! Bret Indrelee
2001-04-12 12:58 No 100 HZ timer ! Mark Salisbury
2001-04-11 9:06 schwidefsky
2001-04-10 14:42 schwidefsky
2001-04-10 12:54 schwidefsky
2001-04-10 11:38 schwidefsky
2001-04-10 11:54 ` Alan Cox
2001-04-10 7:29 schwidefsky
2001-04-10 7:27 schwidefsky
2001-04-09 15:54 schwidefsky
2001-04-09 18:30 ` Jeff Dike
2001-04-09 18:19 ` Mark Salisbury
2001-04-09 20:12 ` Alan Cox
2001-04-09 20:32 ` Mark Salisbury
2001-04-09 22:31 ` Mikulas Patocka
2001-04-09 22:35 ` Alan Cox
2001-04-10 11:43 ` David Schleef
2001-04-10 12:04 ` Mikulas Patocka
2001-04-10 12:31 ` David Schleef
2001-04-10 12:34 ` Mark Salisbury
2001-04-10 14:10 ` Mikulas Patocka
2001-04-10 13:35 ` root
2001-04-10 14:22 ` Andi Kleen
2001-04-10 15:43 ` Alan Cox
2001-04-12 5:25 ` watermodem
2001-04-12 8:45 ` Jamie Lokier
2001-04-10 17:15 ` Jamie Lokier
2001-04-10 17:27 ` Alan Cox
2001-04-10 17:35 ` Jamie Lokier
2001-04-10 18:17 ` Alan Cox
2001-04-10 18:24 ` Jamie Lokier
2001-04-10 19:28 ` george anzinger
2001-04-10 20:02 ` mark salisbury
2001-04-10 22:08 ` george anzinger
2001-04-11 0:48 ` Mark Salisbury
2001-04-11 2:35 ` george anzinger
2001-04-12 0:24 ` Mark Salisbury
2001-04-11 16:11 ` Jamie Lokier
2001-04-11 16:59 ` george anzinger
2001-04-11 18:57 ` Jamie Lokier
2001-04-11 19:21 ` John Alvord
2001-04-12 8:41 ` Jamie Lokier
2001-08-01 1:08 ` george anzinger
2001-08-11 11:57 ` Pavel Machek
2001-08-14 15:59 ` Jamie Lokier
2001-08-14 16:57 ` george anzinger
2001-04-10 19:50 ` Zdenek Kabelac
2001-04-11 11:42 ` Maciej W. Rozycki
2001-04-11 16:13 ` Jamie Lokier
2001-04-12 9:51 ` Maciej W. Rozycki
2001-04-10 19:42 ` Zdenek Kabelac
2001-04-10 12:19 ` Mark Salisbury
2001-04-10 17:51 ` yodaiken
2001-04-11 18:43 ` Oliver Xymoron
2001-04-10 12:11 ` Mark Salisbury
2001-04-10 5:51 ` Andi Kleen
2001-04-10 9:33 ` Martin Mares
2001-04-10 10:00 ` Albert D. Cahalan
2001-04-10 12:14 ` Mark Salisbury
2001-04-11 5:55 ` Karim Yaghmour
2001-04-10 11:18 ` Alan Cox
2001-04-10 12:02 ` Andi Kleen
2001-04-10 12:12 ` Alan Cox
2001-04-10 12:27 ` Mark Salisbury
2001-04-10 12:32 ` Andi Kleen
2001-04-10 12:36 ` Alan Cox
2001-04-10 12:37 ` Andi Kleen
2001-04-10 18:45 ` Stephen D. Williams
2001-04-10 19:59 ` Andi Kleen
2001-04-10 12:07 ` Mark Salisbury
2001-04-10 12:45 ` Andi Kleen
2001-04-10 12:42 ` Mark Salisbury
2001-04-10 12:54 ` Andi Kleen
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=200104162045.f3GKjd4522374@saturn.cs.uml.edu \
--to=acahalan@cs.uml.edu \
--cc=george@mvista.com \
--cc=greearb@candelatech.com \
--cc=high-res-timers-discourse@lists.sourceforge.net \
--cc=linux-kernel@vger.kernel.org \
--cc=lk@tantalophile.demon.co.uk \
--cc=mbs@mc.com \
--cc=vonbrand@sleipnir.valparaiso.cl \
/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;
as well as URLs for NNTP newsgroup(s).