Adding DTrace Probes to KDE

From WorkOutWiki2008

Jump to: navigation, search

Contents

Proposer

Manish Chakravarty

Purpose

The purpose of the WorkOut is to

- Let participants know the benefits of dynamic tracing

- How Dynamic tracing can be done to improve performance of Qt and KDE applications

Abstract

Dynamic Tracing allows us to instrument running production applications. During this workout we will attempt to insert probes into the Qt library (which forms the heart of KDE) and KDELibs itself. By placing probes in these libraries, a knowledgeable user would be able to dynamically trace KDE and/or Qt applications.

Also, any applications written using kdelibs and/or Qt would automatically stand to benefit. A user would be able to performance profile these apps and potentially find bottlenecks.

During this workout , we plan to insert probes in three critical areas.

- Qt4 : QObject Class

- Qt4 : QWebView Class - A part of Webkit [1] inside Qt4

- KDE4 : KJS"'

Operating system used would be Belenix [2] and gcc would be the compiler

Also please read about the idea of these workouts here.

Pre-requisites

1) A machine which can run a dedicated VM with min 1 GB RAM

2) 10-15GB for free hard disk space (for the VM)

3) Familiarity with Solaris/OpenSolaris

Languages, tools to be known

Languages: C++ / D Programming Language

Tools: dtrace / gcc / Sun Studio ( optional )

Getting and compiling the code

The OS and the build environment would be supplied on a VMWare Virtual machine.

The code and associated tools are re-distributable and open source.

Links to overall design/architecture

Pre-event planning

http://www.genunix.org/wiki/index.php/FOSS2008#Adding_dtrace_probes_to_KDE__.28Owner_:_Manish.29

Please make sure you go through and understand: http://developers.sun.com/solaris/articles/dtrace_cc.html

Tasks

1) Run slideshow while the users copy the VM

2) make sure they understand what DTrace is , why Dtrace is useful and what we are going to DTrace

3) Start hacking!

Existing work

There is no existing attempt to DTrace KDE or Qt , to the best of my knowledge

Getting in touch

Mail: mail@manishchakravarty.co IRC: monzie on freenode : #kde-devel, #kde-solaris, #belenix, #linux-india , #opensolaris

Participants

N/A

Personal tools