All of lore.kernel.org
 help / color / mirror / Atom feed
From: Christoph Lameter <cl@linux.com>
To: "Wangnan (F)" <wangnan0@huawei.com>
Cc: Peter Zijlstra <peterz@infradead.org>,
	Arnaldo Carvalho de Melo <acme@kernel.org>,
	Alexei Starovoitov <ast@kernel.org>,
	ksummit-discuss@lists.linuxfoundation.org,
	Ingo Molnar <mingo@kernel.org>
Subject: Re: [Ksummit-discuss] [TECH TOPIC] Kernel tracing and end-to-end performance breakdown
Date: Wed, 20 Jul 2016 22:41:51 -0500 (CDT)	[thread overview]
Message-ID: <alpine.DEB.2.20.1607202231150.26638@east.gentwo.org> (raw)
In-Reply-To: <578F36B9.802@huawei.com>

On Wed, 20 Jul 2016, Wangnan (F) wrote:

> I suggest to discuss following topics in this year's kernel summit:
>
>  1. Is end-to-end performance breakdown really matter?
>
>  2. Should we design a framework to help kernel developers to express and
> expose
>     performance model to help people do the end-to-end performance breakdown?
>
>  3. What external tools we need to do the end-to-end performance breakdown?
>

Hmmm... The basic problem in my industry often ends up in accounting for
latency of software and hardware as well as event correlation between
applications, network and multiple hosts. In those scenarios time
measurement itself becomes a difficult thing because the host times is
slightly offset from the GPS clock on the network. Even in one host
there may be multiple clocks at drift to one another (f.e. clocks on the
NICs used for timestamping). In a very low latency environment the
inaccuracy of the clocks and the latency of the network links and various
forms of processing impacts accuracy so much that it is often difficult to
even come up with measurements that one is willing to trust.

So a key basic for tracing and relating events are clocks and knowlege
about how much of variance (how much inaccuracy) a certain clock
contributed.

I think in an ideal world where we could have accurate timestamps the
performance breakdown for us would be simply an instrumentation of the
hardware and software with timestamps. The data can then be correlated
later. This works well if one either  looks at larger time scales (like
milliseconds) or if only a single time source is in use.

If we go down to microseconds this becomes difficult. For nanoseconds fine
grained analysis one is basically always at odds with the reliability of
the clock sources unless one can just use a single one (like TSC).

  reply	other threads:[~2016-07-21  3:50 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-07-20  8:30 [Ksummit-discuss] [TECH TOPIC] Kernel tracing and end-to-end performance breakdown Wangnan (F)
2016-07-21  3:41 ` Christoph Lameter [this message]
2016-07-21 10:00 ` Jan Kara
2016-07-21 13:54   ` Chris Mason
2016-07-21 15:45     ` Jan Kara
2016-07-21 16:03       ` Chris Mason
2016-07-22  3:35   ` Wangnan (F)
2016-07-23 17:59     ` Alexei Starovoitov
2016-07-23 18:15       ` [Ksummit-discuss] Fwd: " Alexei Starovoitov

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=alpine.DEB.2.20.1607202231150.26638@east.gentwo.org \
    --to=cl@linux.com \
    --cc=acme@kernel.org \
    --cc=ast@kernel.org \
    --cc=ksummit-discuss@lists.linuxfoundation.org \
    --cc=mingo@kernel.org \
    --cc=peterz@infradead.org \
    --cc=wangnan0@huawei.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.