Re: [RFC PATCH 1/3] Unified trace buffer

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Linus Torvalds
Date: Wednesday, September 24, 2008 - 1:39 pm

On Wed, 24 Sep 2008, Martin Bligh wrote:

You'd have them ONCE IN A BLUE MOON.

If there is nothing going on, you don't need the timestamps at all.

Yes, some people will _want_ a heartbeat, of course, and there might be 
serialization points where we want to serialize some external clock to the 
TSC, but that's a separate issue from generating a full TSC value. We may 
well decide that once a second we want a whole packet with TSC _and_ 
HR-timer sync information, for example. But that's a separate issue.

And if there is a lot of things going on (eg you're tracing things like a 
block device performance issue), you have events _much_ closer to each 
other than 1/30th of a second, and you again _never_ need a full 59-bit 
timestamp. Because the delta would be cumulative, and as long as you are 
generating events, you're also updating the base TSC.

The only case you'll see lots of those timestamps (where "lots" is 
guaranteed to be less than 30 in one second) would be if you're tracing 
something that literally does a couple of events per second. But then you 
sure as hell don't need to worry about performance _or_ memory use. If you 
have some trace that gives you five hits per second (and spread out, to 
boot!), you'll generate twice the number of trace entries because each 
entry would always be preceded by an extended thing, but hey, do we really 
worry about five trace events per second?

And quite frankly, most of the tracing I've ever done really does fall 
into the "either nothing" or "a flood of events" thing. The "5-25 events 
per second at regular intervals" case really doesn't sound very common at 
all - not that I would worry about it if it was since it's going to be a 
really simple case..

And btw, this would be an issue only on really fast CPU's anyway. If 
you're in the mobile space, your TSC will be clocking at less than that, 
so the slower the machine, the less the overhead. Again, that's exactly 
what you want - the overhead is not some fixed thing that is detemined by 
the fastest possible TSC and hurts slower machines too, it's relative to 
the speed of the machine itself.

(Of course, with cpufreq and fixed TSC's, a 2GHz CPU will have a 2GHz TSC 
even when it's running at just 1GHz, but the worry is more about trying to 
trace on an embedded board with some pitiful 500MHz thing that is pretty 
overworked anyway).

			Linus
--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[RFC PATCH 1/3] Unified trace buffer, Steven Rostedt, (Tue Sep 23, 10:10 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Peter Zijlstra, (Wed Sep 24, 8:03 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Steven Rostedt, (Wed Sep 24, 8:44 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Martin Bligh, (Wed Sep 24, 8:47 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Peter Zijlstra, (Wed Sep 24, 9:11 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Mathieu Desnoyers, (Wed Sep 24, 9:13 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Linus Torvalds, (Wed Sep 24, 9:24 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Steven Rostedt, (Wed Sep 24, 9:26 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Steven Rostedt, (Wed Sep 24, 9:31 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Steven Rostedt, (Wed Sep 24, 9:37 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Peter Zijlstra, (Wed Sep 24, 9:39 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Martin Bligh, (Wed Sep 24, 9:49 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Mathieu Desnoyers, (Wed Sep 24, 9:51 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Martin Bligh, (Wed Sep 24, 9:56 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Linus Torvalds, (Wed Sep 24, 10:25 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Linus Torvalds, (Wed Sep 24, 10:36 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Steven Rostedt, (Wed Sep 24, 10:49 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Martin Bligh, (Wed Sep 24, 10:54 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Mathieu Desnoyers, (Wed Sep 24, 11:01 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Martin Bligh, (Wed Sep 24, 11:04 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Linus Torvalds, (Wed Sep 24, 1:23 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Linus Torvalds, (Wed Sep 24, 1:30 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, David Miller, (Wed Sep 24, 1:37 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Linus Torvalds, (Wed Sep 24, 1:39 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Steven Rostedt, (Wed Sep 24, 1:47 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Steven Rostedt, (Wed Sep 24, 1:48 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Linus Torvalds, (Wed Sep 24, 1:49 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Martin Bligh, (Wed Sep 24, 1:51 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Mathieu Desnoyers, (Wed Sep 24, 1:53 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Martin Bligh, (Wed Sep 24, 1:56 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Martin Bligh, (Wed Sep 24, 2:03 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Steven Rostedt, (Wed Sep 24, 2:08 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Steven Rostedt, (Wed Sep 24, 2:17 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Frank Ch. Eigler, (Wed Sep 24, 2:24 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Steven Rostedt, (Wed Sep 24, 2:33 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Steven Rostedt, (Wed Sep 24, 2:51 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Linus Torvalds, (Wed Sep 24, 3:28 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Linus Torvalds, (Wed Sep 24, 3:41 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Ingo Molnar, (Thu Sep 25, 3:38 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Peter Zijlstra, (Thu Sep 25, 3:41 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Martin Bligh, (Thu Sep 25, 7:33 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Peter Zijlstra, (Thu Sep 25, 7:53 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Linus Torvalds, (Thu Sep 25, 8:05 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Steven Rostedt, (Thu Sep 25, 8:20 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Martin Bligh, (Thu Sep 25, 8:25 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Steven Rostedt, (Thu Sep 25, 8:26 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Ingo Molnar, (Thu Sep 25, 8:36 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Mathieu Desnoyers, (Thu Sep 25, 9:23 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Steven Rostedt, (Thu Sep 25, 9:32 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Mathieu Desnoyers, (Thu Sep 25, 9:37 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Linus Torvalds, (Thu Sep 25, 9:40 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Linus Torvalds, (Thu Sep 25, 9:49 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Steven Rostedt, (Thu Sep 25, 9:53 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Steven Rostedt, (Thu Sep 25, 10:02 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Linus Torvalds, (Thu Sep 25, 10:07 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Mathieu Desnoyers, (Thu Sep 25, 10:15 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Mathieu Desnoyers, (Thu Sep 25, 10:20 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Linus Torvalds, (Thu Sep 25, 10:22 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Linus Torvalds, (Thu Sep 25, 10:29 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Steven Rostedt, (Thu Sep 25, 10:32 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Steven Rostedt, (Thu Sep 25, 10:39 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Mathieu Desnoyers, (Thu Sep 25, 10:42 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Linus Torvalds, (Thu Sep 25, 11:14 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Ingo Molnar, (Thu Sep 25, 12:55 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Ingo Molnar, (Thu Sep 25, 1:12 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Ingo Molnar, (Thu Sep 25, 1:20 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Linus Torvalds, (Thu Sep 25, 1:24 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Linus Torvalds, (Thu Sep 25, 1:29 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Mathieu Desnoyers, (Thu Sep 25, 1:29 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Steven Rostedt, (Thu Sep 25, 1:47 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Ingo Molnar, (Thu Sep 25, 1:52 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Steven Rostedt, (Thu Sep 25, 2:01 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Jeremy Fitzhardinge, (Thu Sep 25, 2:02 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Ingo Molnar, (Thu Sep 25, 2:10 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Jeremy Fitzhardinge, (Thu Sep 25, 2:14 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Martin Bligh, (Thu Sep 25, 2:15 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Ingo Molnar, (Thu Sep 25, 2:16 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Ingo Molnar, (Thu Sep 25, 2:41 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Linus Torvalds, (Thu Sep 25, 2:55 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Ingo Molnar, (Thu Sep 25, 2:56 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Linus Torvalds, (Thu Sep 25, 2:58 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Ingo Molnar, (Thu Sep 25, 3:14 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Ingo Molnar, (Thu Sep 25, 3:25 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Jeremy Fitzhardinge, (Thu Sep 25, 3:39 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Steven Rostedt, (Thu Sep 25, 3:45 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Ingo Molnar, (Thu Sep 25, 3:55 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Steven Rostedt, (Thu Sep 25, 3:59 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Jeremy Fitzhardinge, (Thu Sep 25, 4:04 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Ingo Molnar, (Thu Sep 25, 4:25 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Linus Torvalds, (Thu Sep 25, 4:33 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Jeremy Fitzhardinge, (Thu Sep 25, 6:17 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Jeremy Fitzhardinge, (Thu Sep 25, 6:27 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Steven Rostedt, (Thu Sep 25, 6:27 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Steven Rostedt, (Thu Sep 25, 6:35 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Jeremy Fitzhardinge, (Thu Sep 25, 6:49 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Jeremy Fitzhardinge, (Thu Sep 25, 7:07 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Steven Rostedt, (Thu Sep 25, 7:25 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Jeremy Fitzhardinge, (Thu Sep 25, 10:31 pm)
Re: [RFC PATCH 1/3] Unified trace buffer, Steven Rostedt, (Fri Sep 26, 3:41 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Thomas Gleixner, (Fri Sep 26, 7:04 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Ingo Molnar, (Sat Sep 27, 10:16 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Ingo Molnar, (Sat Sep 27, 10:36 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Steven Rostedt, (Sat Sep 27, 10:38 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Peter Zijlstra, (Sat Sep 27, 10:50 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Steven Rostedt, (Sat Sep 27, 11:18 am)
Re: [RFC PATCH 1/3] Unified trace buffer, Ingo Molnar, (Sat Sep 27, 11:42 am)