This is the mail archive of the
systemtap@sources.redhat.com
mailing list for the systemtap project.
RE: Sequence ordering and timestamps in systemtap...
- From: Martin Hunt <hunt at redhat dot com>
- To: "Spirakis, Charles" <charles dot spirakis at intel dot com>
- Cc: "systemtap at sources dot redhat dot com" <systemtap at sources dot redhat dot com>, William Cohen <wcohen at redhat dot com>
- Date: Wed, 15 Jun 2005 21:24:39 -0700
- Subject: RE: Sequence ordering and timestamps in systemtap...
- Organization: Red Hat Inc.
- References: <2CB9B46A0690824693581340E23B4E1004567D6B@scsmsx401.amr.corp.intel.com>
On Wed, 2005-06-15 at 19:05 -0700, Spirakis, Charles wrote:
> For handling sequence numbers (or timestamps), how important is it to
> have a unique value for each output vs. a unique value for each probe
> execution? Specifically, if we are worried about the overhead, is it
> reasonable to get that value once during each probe execution (on probe
> entry if you want ordering based on probe execution or first use of
> stp_xxx() if you want to only get the ordering for actual output) and
> use that value for all stp_xxx()'s within the probe?
So if a probe outputs something, automatically timestamp (or sequence
number) the first thing it outputs and any additional output is assumed
to happen at the same time.
Of course we can always have a command to insert additional timestamps.
Sounds reasonable. I would have to make some simple changes to the
runtime.
> Are you willing to still conceptually separate out sequence numbering
> from timestamp? If we truly can get the timestamp down to "nanoseconds
> since 1970" and that value has reasonable resolution, then it may not be
> as important, but there are times in the profiling world where you want
> to get a trace history and having the elements ordered (or mostly
> ordered) is very desirable.
I think that in a multiprocessor system there isn't always an absolute
order to when things happen because things are always happening in parallel.
And if timestamps can be done for less than or equal to the cost of a
sequence number, then we should use them because they are more informative.
On the other hand, most applications won't need timestamps so we don't
want to pay for them if they are much more expensive than a simple
sequence number.
Martin