X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;f=ltt%2Fbranches%2Fpoly%2Fdoc%2Fdeveloper%2Flttng-lttv-roadmap.html;h=d0f722d8e504a51cac7a7ec83351058a23281d50;hb=b509744259ca06d54a27eed7b5cbc7be6e0faf75;hp=537ab73f6331ea01b7365510cd552d0d7caa16c1;hpb=2a34121235903603cd47fb6682d06d8118b9d1c7;p=lttv.git diff --git a/ltt/branches/poly/doc/developer/lttng-lttv-roadmap.html b/ltt/branches/poly/doc/developer/lttng-lttv-roadmap.html index 537ab73f..d0f722d8 100644 --- a/ltt/branches/poly/doc/developer/lttng-lttv-roadmap.html +++ b/ltt/branches/poly/doc/developer/lttng-lttv-roadmap.html @@ -9,86 +9,122 @@ for the TODO items :
(10): lowest priority


-Dependencies are written between parenthesis ( ).
+Dependencies are written between brackets [ ].
The # symbol marks who is currently working on the item.
The % symbol marks who is interested in the realisation of the item.

LTTV Roadmap

* TODO
-(1) Port LTTV to genevent-new parser.
- # Mathieu Desnoyers
-(2) Fix bug with enums in lttv : make them use the value associated.
-(4) create a event rate graphical view : Will be useful in conjonction with the - filter.
- # Parisa Heidari
-(6) migrate align to lttv parser.
-(7) create an analysis of function time (like a precise gprof)
- -> with gcc -f inline-functions
-(10) Add cancel button to LTTV filter GUI window. +(1) Put back coherent facility checksumming.
+(3) Add cluster support.
+ # Eric Clement
+(3) Make LTTV aware of type formats (visual separators) defined in the XML +file.
+ # Gabriel Matni
+(3) Use a per architecture enumeration for traps.
+(3) Change the byte pair "facility, event" id for a short combining the +informatinon.
+(4) Statistics per time window.
+(4) Add Xen per physical CPU view.
+(4) Add Xen per vcpu view.
+(4) Disable plugins when threshold reached (i.e. too much process in control +flow view). Draw, and, when the threshold is reached, stop drawing. The global +statistics view can inhibit showing the per process stats.
+(4) Add a visual artifact : PID 0 could be named swapper instead of UNNAMED for +cpus > 0.
+(4) Add event specific fields support to filter.
+(4) Add a periodic event interval view. (useful to verify event periodicity)
+(4) create a graphical per cpu activity view.
+(4) Filter by target process.
+(4) Compensate for time spent in probes in LTTV analysis.
+(4) Add CPU, network, disk, memory usage histogram. [Per interval statistics]
+(5) Add Python scripting hooks.
+(5) Add GUI interface to take an hybrid trace.
+(5) Flight recorder : start lttd automatically upon GUI trace control stop.
+(5) Automatically detect traces with too much processes and disable faulty operations.
+(5) Event sequence detector (inspired from regular expressions).
+(7) Create a hardware counter viewer (low cost rate counters : L1 cache miss, +page faults, interrupts...). This will be a generalisation of the event rate +view into a view of the evolution of a user definable event field.
+
+* TO FIX
+(10) Add cancel button to LTTV filter GUI window.
+(10) Sometimes, in the control flow view, a process with 0 creation time is +created in addition to the real process itself. Seems to be caused by end of +process life.
+(10) Statistics do not take in account the time spent in the mode present at +the beginning of the trace. Example : real time spent in system call on behalf +of process 0.


LTT Next Generation Roadmap

* TODO
-(1) Use 2.6.14 RelayFS control files.
-(1) port LTTng to 2.6.14 kernel. (depends on genevent rewrite)
-(2) add efficient and secure user space tracing. (1 month)
-(3) integrate LTTng State Dump : missing irq and process state.
- # Jean-Hugues Deschenes
-(4) efficient dynamic event filtering while recording trace.
+(1) put probes in a hash table so we can connect the markers to them upon module +load.
+(1) efficient dynamic event filtering while recording trace.
+ % Google
% Sensis Corp. Tim Bish
+ # Mathieu Desnoyers
+(1) Support for compact event trace channel.
+ % Google
+ # Mathieu Desnoyers
+(1) CPU Hotplug support. (Only ltt-heartbeat needs to be fixed).
+ # Mathieu Desnoyers
+(1) Add Xen support. (Trace buffer desallocation needs to be fixed)
+ # Mathieu Desnoyers
+(1) Integrate SystemTAP logging with LTTng.
+(3) Change the byte pair "facility, event" id for a short combining the +informatinon.
+(4) instrument kernel bottom half irqsave, spinlocks, rwlocks, seqlocks, semaphores, mutexes, brlock.
+(4) integrate NPTL instrumentation (see +PTT).
+(4) Probe calibration kernel module.
+(4) Make page faults detect nested fault without nesting 4 times in the page +fault handler.
+(5) Support CPUs with scalable frequency.
+(5) Add boot time tracing support.
(5) Integrate LTTng and lttd with LKCD.
-(7) add gcc -finstrument-functions instrumentation
-(3) port LTTng to : (depends on 2.6.14 port)
-x86_64
-#Autodesk Francois -L'Archeveque for 2.6.9 RedHat Enterprise (patch available in contrib, still -has to be ported to 2.6.14, thanks!)
-%Wind River for 2.6.10
-PPC
-PPC64
-%Wind River for 2.6.10
+(7) Integrate periodical dump of perfctr hardware counters.
+(8) Integrate periodical dump of SystemTAP computed information.
+(9) Rethink facility logging code (genevent output). Maybe unneeded because of +markers/probes mechanism.
+(9) Add support for setjmp/longjmp and jump tables instrumentation to +ltt-instrument-functions.
+(9) Make ltt-usertrace-fast support internal heartbeat timer.
+(3) port LTTng to :
alpha
user-mode Linux
Xen
-MIPS
-MIPS64
-%Wind River for 2.6.10
-ARM
+# IBM
S/390
+RTLinux
+% Wind River for 2.6.14
+sparc64
+# Wind River
+sh4



* TODO (low priority)
enhance RPM packages for lttng kernel
Integrate header generation (genevent) in kernel build system.
-Multithreaded lttd.
-Find a different way to printk from instrumentation : forbidden from schedule -and wakeup (causes a deadlock). -> Modify printk so it uses LTTng tracer!
Export channels via network sockets instead of writing them to disk.
Export buffers with time constraint for "live" visualisation. Use -ltt_force_switch periodically from a timer to insure slow channels does not +ltt_force_switch periodically from a timer to insure slow channels do not interfere with viewing.
+Have an optional round-robin mode to write information into multiple channels +from the same source.

* Need to be discussed
+Use 2.6.14 RelayFS control files.
Drop ltt-module-register and ltt-module-unregister, use exported variables.
drop ltt_filter_control, use functions pointers instead.
Merge facilities headers into one big header.
Change the name of XML files from XML to something else.
Remove ltt-base.c.

-
-* lttng patch division (0.4.2+) :
-
-ltt-instrumentation.diff
-ltt-facilities-headers.diff
-ltt-facilities-loader.diff
-ltt-facilities.diff
-ltt-relayfs.diff
-ltt-core.diff
-
-
Mathieu Desnoyers