LTTng based code profiling; focused on the path in ceph-osd for a write request to an object.

Added 13 tracepoints for ceph-osd daemon to provide timing analysis of functions in the path for primary and secondary write operations. These tracepoints collect timestamps within each of the instrumented functions and allow to track a complete transaction, i.e. the contributions to the overall latency for a write request.
A primary write starts when it arrives at the socket of ceph-osd and ends when the acknowledgement is sent back to the client.
At the layer of the Messenger, only the "simple" Messenger is instrumented; corresponding tracepoints for the "async" Messenger are pending.

Hi Sam,

I removed the "old" tracepoints (two of them) in
commit ea631dc1dd3c25d97696527bed3e8f6fba3da1a6

I have also fixed compilation issues if WITH_LTTNG is not set:
commit 34e0a45501a766b44e10d6b9f5adcac1b2b8a2fd


Regards

Andreas Bluemle



On Tue, 11 Nov 2014 10:47:51 -0800
Samuel Just <notifications@github.com> wrote:

> > @@ -8257,6 +8288,7 @@ void OSD::ShardedOpWQ::_process(uint32_t
> > thread_index, heartbeat_handle_d *hb ) 
> >    // osd:opwq_process marks the point at which an operation has
> > been dequeued // and will begin to be handled by a worker thread.
> > +#if 0
> 
> Do you want to remove this? If so, we should just do it.
> 
> ---
> Reply to this email directly or view it on GitHub:
> https://github.com/ceph/ceph/pull/2877/files#r20170661


-- 
Andreas Bluemle                     mailto:Andreas.Bluemle@itxperts.de
ITXperts GmbH                       http://www.itxperts.de
Balanstrasse 73, Geb. 08            Phone: (+49) 89 89044917
D-81541 Muenchen (Germany)          Fax:   (+49) 89 89044910

Company details: http://www.itxperts.de/imprint.htm