11

Click here to load reader

Kernel Recipes 2013 - Viewing real time ltt trace using gtkwave

Embed Size (px)

DESCRIPTION

This presentation will explain how to use some ltt to be viewd in gtkwave, a graphical visualization tool, developped by the Parrot team. It will also explain why this tool was developed, review some of the problems that have been analyzed using these traces. It will finally end up on the ongoing integration with LTTng 2.x.

Citation preview

Page 1: Kernel Recipes 2013 - Viewing real time  ltt trace using gtkwave

Viewing LTTng traces with GTKWave

[email protected]

Sept 2013

LTTng+GTKWave

Page 2: Kernel Recipes 2013 - Viewing real time  ltt trace using gtkwave

What is LTT ?

▶ Linux Trace Toolkit, appeared circa 1999 (http://www.opersys.com)

▶ Kernel patch + kernel module + userland daemon + tools

▶ Collects kernel event-data: interrupts, context switches, page faults,syscalls, etc

▶ Userspace events also supported

▶ Traces can be post-processed and viewed with LTTV

▶ LTT now superseded by LTTng (http://lttng.org)

LTTng+GTKWave LTTng

Page 3: Kernel Recipes 2013 - Viewing real time  ltt trace using gtkwave

LTTng 2.x

▶ Released in 2011

▶ Advanced low-overhead architecture

▶ Kernel patch no longer needed !

▶ Uses new trace format (CTF, Common Trace Format)

▶ LTTV support WIP

▶ Eclipse plugin:http://www.eclipse.org/linuxtools/projectPages/lttng

▶ LTTng 2.x/0.x events are different: no compatibility with old LTTngtools

LTTng+GTKWave LTTng

Page 4: Kernel Recipes 2013 - Viewing real time  ltt trace using gtkwave

LTTV for LTTng

LTTng+GTKWave LTTng

Page 5: Kernel Recipes 2013 - Viewing real time  ltt trace using gtkwave

Eclipse LTTng perspective

LTTng+GTKWave LTTng

Page 6: Kernel Recipes 2013 - Viewing real time  ltt trace using gtkwave

What is GTKWave ?▶ GTK+ based waveform viewer▶ Supports several le formats: FST, Verilog VCD, GHW, etc▶ Handles large trace les and many trace signals at once▶ Provides C library for creating traces in its native LXT le

format

LTTng+GTKWave GTKWave

Page 7: Kernel Recipes 2013 - Viewing real time  ltt trace using gtkwave

GTKWave in action

LTTng+GTKWave GTKWave

Page 8: Kernel Recipes 2013 - Viewing real time  ltt trace using gtkwave

LTTng+GTKWave

▶ A tool called ltt2lxt parses an LTT trace and generates twoles:▶ a .lxt le (an LXT trace)▶ a .sav le (a layout of the signals)

▶ Supports LTTng-0.x (legacy) traces, support for LTTng-2.xtrace is alpha

▶ Kernel symbols optionally used to convert addresses intofunction():line strings

▶ Makes use of GTKWave nice zooming features▶ Does not replace but complements LTTV and other tools

LTTng+GTKWave Viewing LTTng traces in GTKWave

Page 9: Kernel Recipes 2013 - Viewing real time  ltt trace using gtkwave

Conversion tools: ltt2lxt and lttng2lxt

LTTng+GTKWave Viewing LTTng traces in GTKWave

Page 10: Kernel Recipes 2013 - Viewing real time  ltt trace using gtkwave

An LTTng trace in GTKwave

LTTng+GTKWave Viewing LTTng traces in GTKWave

Page 11: Kernel Recipes 2013 - Viewing real time  ltt trace using gtkwave

To contribute...

▶ https://github.com/idjelic/lttng2lxt

LTTng+GTKWave Viewing LTTng traces in GTKWave