All of lore.kernel.org
 help / color / mirror / Atom feed
From: <giorgiobuffa.work@gmail.com>
To: xenomai@xenomai.org
Subject: [Xenomai] How to profile/trace a Xenomai application?
Date: Mon, 29 Jun 2015 10:45:49 +0200	[thread overview]
Message-ID: <000001d0b248$002ca660$0085f320$@gmail.com> (raw)

Hello list!
I'm planning to develop a real-time Xenomai application using Linux 3.16.7
and Xenomai 2.6.4. I would like to receive some hints on how to
profile/trace the behaviour of my Xenomai application.

My primary concern is how to measure execution times of the functions
called by Xenomai threads.

It would be also interesting to have a way to monitor the behaviour of the
schedulers to understand/validate thread activation times, state
transitions and preemptions, response times to external or periodic events,
deadline misses, and so on. However, I do realize that this is just asking
too much... :)

Q1: Which tools may I use for that purposes? Clearly, a tool with a
graphical interface would be the best, but this is not essential! :)

After some research, I was thinking to explore the following tools, but I'm
not sure that they can all be used in a Xenomai dual-kernel configuration.
In other words, I'm not sure they would be aware of Xenomai threads and
their behaviour (e.g. their call graph, or the time spent in each function
being called), as I'm not sure they would be aware of the presence and the
decisions made by the Nucleos-RT scheduler.

* I-pipe tracer
  <http://xenomai.org/2014/06/using-the-i-pipe-tracer/>
* perf
  <https://perf.wiki.kernel.org/index.php/Tutorial>
* OProfile
  <http://oprofile.sourceforge.net/news/>
* Intel VTune Amplifier
  <https://software.intel.com/en-us/intel-vtune-amplifier-xe>
* ftrace
  <https://www.kernel.org/doc/Documentation/trace/ftrace.txt>
* DTrace
  <https://en.wikipedia.org/wiki/DTrace>

Q2: Am I on the right track, or some of the tools I was thinking to use are
useless for my purposes listed above (in particular, to measure execution
times of the functions called by Xenomai threads).

Thank you for any help and best regards,
Giorgio Buffa



                 reply	other threads:[~2015-06-29  8:45 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

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='000001d0b248$002ca660$0085f320$@gmail.com' \
    --to=giorgiobuffa.work@gmail.com \
    --cc=xenomai@xenomai.org \
    /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.