Mirror of the lttng-dev mailing list
 help / color / mirror / Atom feed
From: fche@redhat.com (Frank Ch. Eigler)
Subject: [ltt-dev] [RFC] Common Trace Format Requirements (v1.3)
Date: Tue, 31 Aug 2010 13:04:53 -0400	[thread overview]
Message-ID: <20100831170453.GA5762@redhat.com> (raw)
In-Reply-To: <20100831163722.GA27279@Krystal>

Hi -

On Tue, Aug 31, 2010 at 12:37:22PM -0400, Mathieu Desnoyers wrote:

> [...]  Yep. But I'm trying to state the requirements as clearly as
> possible so I can leave the justification out of the trace format
> proposal per se.

Doing it this way is somewhat risky, since people who agree in general
with the abstract requirements may change their minds once a specific
design is presented.  So, expect the rationale to be a part of the
debate once the proposed format is shown.


> I'm also only planning to do a proposal for a Linux-specific trace
> format, which can be seen as a single instance of the trace format
> model.

(How different do you expect a non-linux-specific "standard" trace
format to be?)


> > If the metadata is not given in a standard form, then how do envision
> > general trace analysis tools (those not hard-coded for some particular
> > trace source) working?

> We can have a metadata format selector at the beginning of the
> metadata section, with reserved IDs for metadata formats. We can
> think of a format generated natively by TRACE_EVENT(), a format
> generated in some sort of XML. The trace analyzer would need the
> metadata format parser in order to be able to read the trace.

If one hopes that such tools should be able to consume data with
drifting versions of TRACE_EVENT() or XML or whatnot, they themselves
had better be fixed/standardized.  Otherwise, the data will not be
self-describing, and all the tools will have to chase
kernel/etc. versions.


> > > * Requirements on the Tracers
> > 
> > > Higher-level tracer requirements that seem appropriate to support
> > > some of the trace format requirements stated above.  [...]
> > 
> > The list that follows here appear to be wish-list performance
> > characteristics of the tracing infrastructure ("make it go fast" and
> > "use good transports").  How does it benefit the tracing *format*
> > specification to enumerate such particulars here?

> Requirements like tracer speed influences the format in many ways, e.g.:

> - requirement for compactness leads to schemes where all information
> repetition should be eliminated. Thus the need for optional
> per-section context information.

> - requirement for speed and streaming leads to zero-copy
> implementations, which imply that the trace format should be written
> natively by the tracer.

Not exactly: the requirements of high speed influence the trace format
to the extent that it must be *possible* to write it at a high speed.
The format cannot mandate that it *necessarily* be written in a
zero-copy way, or without intermediate transformations.


- FChE
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
URL: <http://lists.casi.polymtl.ca/pipermail/lttng-dev/attachments/20100831/f6165975/attachment-0002.pgp>


WARNING: multiple messages have this Message-ID
From: fche@redhat.com (Frank Ch. Eigler)
Subject: [ltt-dev] [RFC] Common Trace Format Requirements (v1.3)
Date: Tue, 31 Aug 2010 13:04:53 -0400	[thread overview]
Message-ID: <20100831170453.GA5762@redhat.com> (raw)
Message-ID: <20100831170453.FLE8DwjhXzL8YBhih2YNgnMm5k3lwCVqjszZYNSBy4U@z> (raw)
In-Reply-To: <20100831163722.GA27279@Krystal>

Hi -

On Tue, Aug 31, 2010 at 12:37:22PM -0400, Mathieu Desnoyers wrote:

> [...]  Yep. But I'm trying to state the requirements as clearly as
> possible so I can leave the justification out of the trace format
> proposal per se.

Doing it this way is somewhat risky, since people who agree in general
with the abstract requirements may change their minds once a specific
design is presented.  So, expect the rationale to be a part of the
debate once the proposed format is shown.


> I'm also only planning to do a proposal for a Linux-specific trace
> format, which can be seen as a single instance of the trace format
> model.

(How different do you expect a non-linux-specific "standard" trace
format to be?)


> > If the metadata is not given in a standard form, then how do envision
> > general trace analysis tools (those not hard-coded for some particular
> > trace source) working?

> We can have a metadata format selector at the beginning of the
> metadata section, with reserved IDs for metadata formats. We can
> think of a format generated natively by TRACE_EVENT(), a format
> generated in some sort of XML. The trace analyzer would need the
> metadata format parser in order to be able to read the trace.

If one hopes that such tools should be able to consume data with
drifting versions of TRACE_EVENT() or XML or whatnot, they themselves
had better be fixed/standardized.  Otherwise, the data will not be
self-describing, and all the tools will have to chase
kernel/etc. versions.


> > > * Requirements on the Tracers
> > 
> > > Higher-level tracer requirements that seem appropriate to support
> > > some of the trace format requirements stated above.  [...]
> > 
> > The list that follows here appear to be wish-list performance
> > characteristics of the tracing infrastructure ("make it go fast" and
> > "use good transports").  How does it benefit the tracing *format*
> > specification to enumerate such particulars here?

> Requirements like tracer speed influences the format in many ways, e.g.:

> - requirement for compactness leads to schemes where all information
> repetition should be eliminated. Thus the need for optional
> per-section context information.

> - requirement for speed and streaming leads to zero-copy
> implementations, which imply that the trace format should be written
> natively by the tracer.

Not exactly: the requirements of high speed influence the trace format
to the extent that it must be *possible* to write it at a high speed.
The format cannot mandate that it *necessarily* be written in a
zero-copy way, or without intermediate transformations.


- FChE
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
URL: <http://lists.casi.polymtl.ca/pipermail/ltt-dev/attachments/20100831/f6165975/attachment.pgp>


WARNING: multiple messages have this Message-ID
From: fche@redhat.com (Frank Ch. Eigler)
Subject: [ltt-dev] [RFC] Common Trace Format Requirements (v1.3)
Date: Tue, 31 Aug 2010 13:04:53 -0400	[thread overview]
Message-ID: <20100831170453.GA5762@redhat.com> (raw)
Message-ID: <20100831170453.dRa3mclRImclM8VQOE9XV6H-rmM-gEszUn6ff_B0JBg@z> (raw)
In-Reply-To: <20100831163722.GA27279@Krystal>

Hi -

On Tue, Aug 31, 2010 at 12:37:22PM -0400, Mathieu Desnoyers wrote:

> [...]  Yep. But I'm trying to state the requirements as clearly as
> possible so I can leave the justification out of the trace format
> proposal per se.

Doing it this way is somewhat risky, since people who agree in general
with the abstract requirements may change their minds once a specific
design is presented.  So, expect the rationale to be a part of the
debate once the proposed format is shown.


> I'm also only planning to do a proposal for a Linux-specific trace
> format, which can be seen as a single instance of the trace format
> model.

(How different do you expect a non-linux-specific "standard" trace
format to be?)


> > If the metadata is not given in a standard form, then how do envision
> > general trace analysis tools (those not hard-coded for some particular
> > trace source) working?

> We can have a metadata format selector at the beginning of the
> metadata section, with reserved IDs for metadata formats. We can
> think of a format generated natively by TRACE_EVENT(), a format
> generated in some sort of XML. The trace analyzer would need the
> metadata format parser in order to be able to read the trace.

If one hopes that such tools should be able to consume data with
drifting versions of TRACE_EVENT() or XML or whatnot, they themselves
had better be fixed/standardized.  Otherwise, the data will not be
self-describing, and all the tools will have to chase
kernel/etc. versions.


> > > * Requirements on the Tracers
> > 
> > > Higher-level tracer requirements that seem appropriate to support
> > > some of the trace format requirements stated above.  [...]
> > 
> > The list that follows here appear to be wish-list performance
> > characteristics of the tracing infrastructure ("make it go fast" and
> > "use good transports").  How does it benefit the tracing *format*
> > specification to enumerate such particulars here?

> Requirements like tracer speed influences the format in many ways, e.g.:

> - requirement for compactness leads to schemes where all information
> repetition should be eliminated. Thus the need for optional
> per-section context information.

> - requirement for speed and streaming leads to zero-copy
> implementations, which imply that the trace format should be written
> natively by the tracer.

Not exactly: the requirements of high speed influence the trace format
to the extent that it must be *possible* to write it at a high speed.
The format cannot mandate that it *necessarily* be written in a
zero-copy way, or without intermediate transformations.


- FChE
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
URL: <http://lists.casi.polymtl.ca/pipermail/lttng-dev/attachments/20100831/f6165975/attachment-0003.pgp>


  parent reply	other threads:[~2010-08-31 17:04 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-08-31 14:50 Mathieu Desnoyers
2010-08-31 15:36 ` Frank Ch. Eigler
2010-08-31 15:36   ` Frank Ch. Eigler
2010-08-31 15:36   ` Frank Ch. Eigler
2010-08-31 16:37   ` Mathieu Desnoyers
2010-08-31 16:37     ` Mathieu Desnoyers
2010-08-31 16:37     ` Mathieu Desnoyers
2010-08-31 17:04     ` Frank Ch. Eigler [this message]
2010-08-31 17:04       ` Frank Ch. Eigler
2010-08-31 17:04       ` Frank Ch. Eigler
2010-08-31 17:30       ` Mathieu Desnoyers
2010-08-31 17:30         ` Mathieu Desnoyers
2010-08-31 17:30         ` Mathieu Desnoyers
2010-08-31 18:35         ` Spear, Aaron
2010-09-01 14:54           ` Michel Dagenais
2010-09-01 22:17           ` Mathieu Desnoyers
2010-09-01  8:02 ` Stefan Hajnoczi
2010-09-01 22:32   ` Mathieu Desnoyers
2010-09-01 11:29 Mathieu Desnoyers

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=20100831170453.GA5762@redhat.com \
    --to=fche@redhat.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox