From mboxrd@z Thu Jan 1 00:00:00 1970 From: compudj@krystal.dyndns.org (Mathieu Desnoyers) Date: Wed, 8 Oct 2008 22:21:01 -0400 Subject: [ltt-dev] TODO list before releasing LTTng-buffering to LKML In-Reply-To: <20081008010211.GA26361@Krystal> References: <20081008010211.GA26361@Krystal> Message-ID: <20081009022101.GA16931@Krystal> * Mathieu Desnoyers (compudj at krystal.dyndns.org) wrote: > Hi! > > Just to keep you posted on the current development, this is what is left > on my roadmap before I post a minimal LTTng (only the timestamping, > event ID management and buffering) to LKML : > > Todo list before posting LTTng-buffering to LKML > > - Create a simplified ltt-relay (use interrupt disable instead of > lockless algo) I implemented this one yesterday night. Basically, it's the original lockless scheme, except that it uses only standard variables (no atomic or local atomic ops) and it also uses a per-buffer spinlock (because readers can be on different cpus) and interrupt disable. Here are the performance results : they are not that far from the lockless scheme. It adds about 1% performance hit on tbench on the x86_64 over the lockless scheme. See lttng-transport-locked.patch in LTTng 0.36 for details. Performance tests, tbench, flight recorder trace, default instrumentation Dual quad-core x86_64, 2.0GHz Instrumentation dynamically disabled : 1883.09 MB/s Markers connected : 1812.14 MB/s Lockless scheme, flight recorder : 925.68 MB/s Per-cpu-buffer spinlock and interrupt disable, flight recorder : 871.78 MB/s Global spinlock and interrupt disable, flight recorder : 153.74 MB/s Single Core Pentium 4, noreplace-smp, 3.0GHz Instrumentation dynamically disabled : 146.85 MB/s Markers connected : 144.32 MB/s Lockless scheme, flight recorder : 89.59 MB/s Per-cpu-buffer spinlock and interrupt disable, flight recorder : 86.05 MB/s Mathieu > - merge a simplified lttv in lttng > > > Todo list after posting first LTTng-buffering release to LKML : > > - assign marker IDs per channel > - switch ltt-control.ko (currently over netlink) to debugfs > - switch marker list (and marker activation (currently in /proc/ltt) to debugfs > Marker directory. One file per marker. > - Create a ltt-ascii.ko kernel module which merge-sorts the buffers and exports > them to userspace through a debugfs file. > > If some of you are interested to work on any of these, you are welcome. > I'll be glad to post more details about these items upon request. > > Mathieu > > -- > Mathieu Desnoyers > OpenPGP key fingerprint: 8CD5 52C3 8E3C 4140 715F BA06 3F25 A8FE 3BAE 9A68 > > _______________________________________________ > ltt-dev mailing list > ltt-dev at lists.casi.polymtl.ca > http://lists.casi.polymtl.ca/cgi-bin/mailman/listinfo/ltt-dev > -- Mathieu Desnoyers OpenPGP key fingerprint: 8CD5 52C3 8E3C 4140 715F BA06 3F25 A8FE 3BAE 9A68