Mirror of the lttng-dev mailing list
 help / color / mirror / Atom feed
From: Jonathan.rajotte-julien@efficios.com (Jonathan Rajotte Julien)
Subject: [lttng-dev] Babeltrace performance issue in live-reading mode
Date: Wed, 20 Sep 2017 10:58:17 -0400	[thread overview]
Message-ID: <cdf53e97-49f0-e6d4-e4b2-0bca6ab84534@efficios.com> (raw)
In-Reply-To: <CAMYaK0SQkdjs_gp+4fwBL1BH1oqEiqYnN6PXq-H-=ApMRbe-bg@mail.gmail.com>

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 5234 bytes --]

Hi,

On 2017-09-20 05:12 AM, liguang li wrote:
> 
> 
> On Tue, Sep 19, 2017 at 10:57 PM, Jonathan Rajotte-Julien <jonathan.rajotte-julien at efficios.com <mailto:jonathan.rajotte-julien at efficios.com>> wrote:
> 
>     On Tue, Sep 19, 2017 at 03:53:27PM +0800, liguang li wrote:
>     >    Hi,
>     >    On Mon, Sep 18, 2017 at 11:18 PM, Jonathan Rajotte-Julien
>     >    <[1]jonathan.rajotte-julien at efficios.com <mailto:jonathan.rajotte-julien at efficios.com>> wrote:
>     >
>     >      Hi,
>     >      On Mon, Sep 18, 2017 at 11:32:07AM +0800, liguang li wrote:
>     >      >    Hi,
>     >      >
>     >      >    Create a session in live-reading mode, run a application which
>     >      having very
>     >      >    high event throughput, then prints
>     >      >    the events with babeltrace. We found the live trace viewer are
>     >      viewing
>     >      >    events a few seconds ago, and as time
>     >
>     >      Could you provide us the version used for babeltrace, lttng-tools and
>     >      lttng-ust?
>     >
>     >     Babeltrace: 1.5.1
> 
>     Update to babeltrace 1.5.3.
> 
>     >     Lttng-tools: 2.8.6
> 
>     Update to lttng-tools 2.8.8
> 
>     >     Lttng-ust: 2.8.2
>     >
>     >      >    goes on, the delay will be bigger and bigger.
>     >
>     >      A similar issues was observed a couple months ago, which implicated
>     >      multiple delayed ack
>     >      problems during communication between lttng-relayd and babeltrace.
>     >
>     >      The following fixes were merged:
>     >
>     >      [1]
>     >      [2]https://github.com/lttng/lttng-tools/commit/b6025e9476332b75eb8184345c3eb3e924780088 <https://github.com/lttng/lttng-tools/commit/b6025e9476332b75eb8184345c3eb3e924780088>
>     >      [2]
>     >      [3]https://github.com/efficios/babeltrace/commit/de417d04317ca3bc30f59685a9d19de670e4b11d <https://github.com/efficios/babeltrace/commit/de417d04317ca3bc30f59685a9d19de670e4b11d>
>     >      [3]
>     >      [4]https://github.com/efficios/babeltrace/commit/4594dbd8f7c2af2446a3e310bee74ba4a2e9d648 <https://github.com/efficios/babeltrace/commit/4594dbd8f7c2af2446a3e310bee74ba4a2e9d648>
>     >
>     >      In the event that you are already using an updated version of babeltrace
>     >      and
>     >      lttng-tools, it would be pertinent to provide us with a simple
>     >      reproducer so we
>     >      can assess the issue.
> 
>     The version you are using does not include the mentioned fixes. Please update
>     and redo your experiment.
> 
> 
> Test this issue in the version you have listed, the issue still exists.

Given that previous versions had a major timing problem there I would expect to have some improvement.

In that case, we will need a lot more information on your benchmarking strategy.
We will need a simple reproducer, your benchmark code (r,gnuplot etc.), your overall methodology
to be able to reproduce the issue locally. Otherwise, it will be very hard 
to come to any conclusion.

>  
> 
>     Cheers
> 
>     >
>     >     
>     >     Steps:
>     >     lttng create session --live -U net://*
>     >     lttng enable-channel -s session -u ch1
>     >     lttng enable-event -s session -c ch1 -u -a
>     >     lttng start
>     >     
>     >     Run a high event throughput application, which is multithreaded
>     >    application> 
> 
> In the multithreaded application, each tracepoint will have the wall
> time of the system,then we can easily reproduce this issue through
> comparing the time of recorded event and the system wall time.
>  
> 
>     >     babeltrace -i lttng-live net://*
>     >     
>     >     After a while, we found the timestamp of the event in the babeltrace is
>     >    different with the time in host
>     >     which run the application. And the delay will be bigger and bigger with
>     >    time goes.
>     >     
>     >
>     >      Cheers
>     >      >    I checked the source code, found Babeltrace in live-reading mode
>     >      will read
>     >      >    the recorded events in the CTF
>     >      >    files, and then parse and print it in a single thread. The process
>     >      is a
>     >      >    little slow, do you have any ideas to
>     >      >    improve the process.
> 
> 
> From my understanding of the source code, the process of parse and
> print event will consume a lot of time. For example, the multithreaded
> application will consume 3 CPUs, in a specified time,3 subbuffers will
> be filled and sent to lttng-relayd daemon, recorded into the CTF files.
> If in the specified time, babeltrace only handled 2 subbuffers' event,
> thenthe issue will happens.

Did you perform a bisection for where the delay come from? Reception of packet? formatting of event?
What is the throughput of the application?
How many tracepoint definition?
Does babeltrace catch up if a quiescent period is given?
Could you provide us with statistics, timing data, etc.?
What type of delay are we talking about?


-- 
Jonathan R. Julien
Efficios


  reply	other threads:[~2017-09-20 14:58 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <CAMYaK0TVYEgM_qxCExiFn6BcgZ58+KXKqx72h_0Gv4g2JN40Yg@mail.gmail.com>
     [not found] ` <20170918151857.afnn5n6ntzhyzfnw@psrcode-TP-X230>
2017-09-19  7:53   ` liguang li
2017-09-19 14:57     ` Jonathan Rajotte-Julien
2017-09-20  9:12       ` liguang li
2017-09-20 14:58         ` Jonathan Rajotte Julien [this message]
2017-09-21  9:34           ` liguang li
2017-09-21 15:03             ` Jonathan Rajotte Julien

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=cdf53e97-49f0-e6d4-e4b2-0bca6ab84534@efficios.com \
    --to=jonathan.rajotte-julien@efficios.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