move lttv to root
[lttv.git] / doc / developer / lttng-lttv-roadmap.html
1 <html>
2 <body>
3 <center><big><big>LTTV & LTTng roadmap<small><small></center>
4 <br>
5 <br>
6 Here are the roadmaps for the LTTV and LTTng development. I use a priority indice
7 for the TODO items :<br>
8 (1) : very high priority<br>
9 (10): lowest priority<br>
10 <br>
11 <br>
12 Dependencies are written between brackets [ ].<br>
13 The # symbol marks who is currently working on the item.<br>
14 The % symbol marks who is interested in the realisation of the item.<br>
15 <br>
16 <br>
17 <big>LTT Next Generation Roadmap<small><br>
18 <br>
19 * TODO<br>
20 (1) Get lttng ascii dump to work.<br>
21 # <A HREF="mailto:Lai Jiangshan <laijs@cn.fujitsu.com>">Lai Jiangshan</A><br>
22 - Create periodical buffer flush per-cpu timer for data streaming.<br>
23 # <A HREF="mailto:Mathieu Desnoyers <compudj@krystal.dyndns.org>">Mathieu Desnoyers</A><br>
24 - Modify LTTng/lttd/lttv to support variable-sized buffers.<br>
25 # <A HREF="mailto:Mathieu Desnoyers <compudj@krystal.dyndns.org>">Mathieu Desnoyers</A><br>
26 (1) Support CPUs with scalable frequency.<br>
27 (1) Post core set of patches to LKML for mainlining.<br>
28 (2) Create 3rd generation of userspace tracing.<br>
29 (3) Bring stack dump in sync with new lttng.<br>
30 (4) Dump mounts. (to fix)<br>
31 (4) Add Xen support. (Trace buffer desallocation needs to be fixed)<br>
32 (4) integrate NPTL instrumentation (see
33 <A HREF="http://nptltracetool.sourceforge.net/">PTT</A>).<br>
34 (4) Probe calibration kernel module.<br>
35 (4) Make page faults detect nested fault without nesting 4 times in the page
36 fault handler. (or use vmalloc_sync_all at each tracing module load)<br>
37 (5) Add boot time tracing support.<br>
38 (5) Integrate LTTng and lttd with LKCD.<br>
39 # <A HREF="mailto:Lai Jiangshan <laijs@cn.fujitsu.com>>">Lai Jiangshan</A><br>
40 (7) Integrate periodical dump of perfctr hardware counters.<br>
41 (8) Integrate SystemTAP logging with LTTng.<br>
42 (8) Integrate periodical dump of SystemTAP computed information.<br>
43 (9) Add support for setjmp/longjmp and jump tables instrumentation to
44 ltt-instrument-functions.<br>
45 (3) port LTTng to :<br>
46 ARM OMAP3<BR>
47 % Nokia<BR>
48 <br>
49 <br>
50 <big>LTTV Roadmap<small><br>
51 <br>
52 * TODO<br>
53 (3) Add cluster support.<br>
54 (4) Statistics per time window.<br>
55 (4) Add Xen per physical CPU view.<br>
56 (4) Add Xen per vcpu view.<br>
57 (4) Disable plugins when threshold reached (i.e. too much process in control
58 flow view). Draw, and, when the threshold is reached, stop drawing. The global
59 statistics view can inhibit showing the per process stats.<br>
60 (4) Add a visual artifact : PID 0 could be named swapper instead of UNNAMED for
61 cpus > 0.<br>
62 (4) Add event specific fields support to filter.<br>
63 (4) Add a periodic event interval view. (useful to verify event periodicity)<br>
64 (4) create a graphical per cpu activity view.<br>
65 (4) Filter by target process.<br>
66 (4) Compensate for time spent in probes in LTTV analysis.<br>
67 (4) Add CPU, network, disk, memory usage histogram. [Per interval statistics]<br>
68 (4) Add sort by process priority in the control flow view (must also instrument
69 priority information of the processes).<br>
70 % Airbus<br>
71 (5) Add Python scripting hooks.<br>
72 (5) Add GUI interface to take an hybrid trace.<br>
73 (5) Automatically detect traces with too much processes and disable faulty operations.<br>
74 (5) Event sequence detector (inspired from regular expressions).<br>
75 (7) Create a hardware counter viewer (low cost rate counters : L1 cache miss,
76 page faults, interrupts...). This will be a generalisation of the event rate
77 view into a view of the evolution of a user definable event field.<br>
78 <br>
79 * TO FIX<br>
80 (10) Add cancel button to LTTV filter GUI window.<br>
81 (10) Sometimes, in the control flow view, a process with 0 creation time is
82 created in addition to the real process itself. Seems to be caused by end of
83 process life.<br>
84 (10) Statistics do not take in account the time spent in the mode present at
85 the beginning of the trace. Example : real time spent in system call on behalf
86 of process 0.<br>
87 <br>
88 <br>
89 <br>
90 * TODO (low priority)<br>
91 enhance RPM packages for lttng kernel<br>
92 Export buffers with time constraint for "live" visualisation. Use
93 ltt_force_switch periodically from a timer to insure slow channels do not
94 interfere with viewing.<br>
95 Have an optional round-robin mode to write information into multiple channels
96 from the same source.<br>
97 <br>
98 * Need to be discussed<br>
99 Drop ltt-module-register and ltt-module-unregister, use exported variables.<br>
100 drop ltt_filter_control, use functions pointers instead.<br>
101 Remove ltt-base.c.<br>
102 <br>
103 Mathieu Desnoyers<br>
104
105
106 </body>
107 </html>
This page took 0.032039 seconds and 4 git commands to generate.