🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: gmane.linux.kernel
10 messages
10 total messages Started by Soeren Sandmann Sat, 17 Sep 2005 23:05
Announce: Sysprof 1.0 -- a sampling, systemwide Linux profiler
#307723
Author: Soeren Sandmann
Date: Sat, 17 Sep 2005 23:05
68 lines
1552 bytes
* What is it?
--------------------------

Sysprof is a sampling system-wide CPU profiler for Linux.

Sysprof uses a Linux kernel module to profile the entire system, not
just an individual application. 

Of course, sysprof handles threads and shared libraries, and
applications do not have to be recompiled or instrumented. In fact
they don't even have to be restarted. 

Just insert the kernel module and start sysprof.


* Features:
----------------------

    - Profiles all running processes, not just a single application

    - Call graph support showing time spent in each branch of the call tree

    - Has a simple graphical interface

    - Profiles can be loaded and saved

    - Easy to use: Just insert the kernel module and start sysprof

    - Supports Fedora debuginfo packages


* Sysprof 1.0
--------------------------

This is the first release of sysprof with a 1.x version number. I am
very excited about that.

New features since Sysprof 0.91:

- support for x86-64, thanks to Mike Frysinger
- better reporting of time spent in the kernel

Please report bugs as well as success or failure stories to 

    sandmann@daimi au dk


* Where can I get it?
--------------------------------------------

Home page:

       http://www.daimi.au.dk/~sandmann/sysprof/

Source code:

       http://www.daimi.au.dk/~sandmann/sysprof/sysprof-1.0.tar.gz

Sysprof requires

        - Linux 2.6.11 or later, compiled with profiling support
        - GTK+ 2.6
	- libglade 2.5

It is known to work out the box on Fedora Core 4.


Søren
Re: Announce: Sysprof 1.0 -- a sampling, systemwide Linux profiler
#307724
Author: John Levon
Date: Sat, 17 Sep 2005 22:16
8 lines
272 bytes
On Sat, Sep 17, 2005 at 11:05:04PM +0200, Soeren Sandmann wrote:

> Sysprof is a sampling system-wide CPU profiler for Linux.

I didn't really understand you last time, so I may as well ask again in
public: what is the point in you re-implementing OProfile?

regards,
john
Re: Announce: Sysprof 1.0 -- a sampling, systemwide Linux profiler
#307725
Author: bert hubert
Date: Sat, 17 Sep 2005 23:16
15 lines
529 bytes
On Sat, Sep 17, 2005 at 11:05:04PM +0200, Soeren Sandmann wrote:
> * What is it?
> --------------------------
>
> Sysprof is a sampling system-wide CPU profiler for Linux.
>
> Sysprof uses a Linux kernel module to profile the entire system, not
> just an individual application.

How is this different from oprofile?

Looks like you did an exact, but less capable, reimplementation.

--
http://www.PowerDNS.com      Open source, database driven DNS Software
http://netherlabs.nl              Open and Closed source services
Re: Announce: Sysprof 1.0 -- a sampling, systemwide Linux profiler
#307731
Author: John Levon
Date: Sat, 17 Sep 2005 23:20
25 lines
956 bytes
On Sun, Sep 18, 2005 at 12:05:15AM +0200, Soeren Sandmann wrote:

> details. Oprofile may have improved since then, but when I started
> sysprof:
>
> - oprofile didn't work on anything but smp kernels
>
> - oprofile could not produce callgraph information without not only
>   recompiling my kernel, but also patching the kernel
>
> - oprofile had a user interface that I simply didn't understand. As I
>   remember it, I had to know about performance counters and how to
>   translate those into binary masks

This is what you said first time I asked you, none of which explain why
you're continuing this duplication of effort, since *none* of the above
are true any more (and the first /never/ was).

> and you get data presented in a way that is just a whole lot more
> useful than the flat text files generated by oprofile.

Building a GUI around OProfile would have been welcome, but you've
chosen to re-implement the entire stack...

regards,
john
Re: Announce: Sysprof 1.0 -- a sampling, systemwide Linux profiler
#307728
Author: Soeren Sandmann
Date: Sun, 18 Sep 2005 00:05
32 lines
1023 bytes
bert hubert <bert.hubert@netherlabs.nl> writes:

> How is this different from oprofile? 
> 
> Looks like you did an exact, but less capable, reimplementation.

The kernel module is indeed less capable by itself, but the userspace
tools are a lot easier to use and show you significantly more
details. Oprofile may have improved since then, but when I started
sysprof:

- oprofile didn't work on anything but smp kernels

- oprofile could not produce callgraph information without not only
  recompiling my kernel, but also patching the kernel

- oprofile had a user interface that I simply didn't understand. As I
  remember it, I had to know about performance counters and how to
  translate those into binary masks

Contrast with sysprof, where you

        - insert the module
        - hit the start button
        - do the thing you want to profile
        - hit the profile button

and you get data presented in a way that is just a whole lot more
useful than the flat text files generated by oprofile.



Søren
Re: Announce: Sysprof 1.0 -- a sampling, systemwide Linux profiler
#307738
Author: John Levon
Date: Sun, 18 Sep 2005 00:53
10 lines
349 bytes
On Sun, Sep 18, 2005 at 01:28:10AM +0200, Tomasz Torcz wrote:

> > Building a GUI around OProfile would have been welcome, but you've
> > chosen to re-implement the entire stack...
>
>  Sysprof seems to profile userspace simultanous, while oprofile is
> bounded to kernel calls.

I don't know how you got this idea, but it's completely wrong.

john
Re: Announce: Sysprof 1.0 -- a sampling, systemwide Linux profiler
#307735
Author: Soeren Sandmann
Date: Sun, 18 Sep 2005 01:03
37 lines
1438 bytes
John Levon <levon@movementarian.org> writes:

> > and you get data presented in a way that is just a whole lot more
> > useful than the flat text files generated by oprofile.
>
> Building a GUI around OProfile would have been welcome, but you've
> chosen to re-implement the entire stack...

The only thing I have reimplemented is a kernel module. If you remove
all the #if 0'd lines in sysprof-module.c you are left with 296 lines
of code. So it's hardly a reimplementation of the entire stack.

And in fact I don't care all that much about the kernel module. The
things I really care about, the gui and the analysis code, do not
really have an equivalent in oprofile, and those two things are the
meat of the sysprof package:

      [ssp@localhost sysprof]$ cat *.[ch] | wc -l
      6706

My motive is not to duplicate oprofile - I basically don't care about
the kernel level mechanism as long as it can produce stack traces that
the GUI can interprete and analyse. In fact, one of the first times I
wrote about sysprof publicly [1], I said:

      It seems to me that since oprofile probably reports more and
      better data than my kernel module, we should try and get the
      graphical presentation from sysprof to present oprofile data.

and I still think so, but it's a fairly substantial amount of work to
get rid of 296 lines of code.


Soren



[1] http://www.redhat.com/archives/fedora-desktop-list/2004-May/msg00041.html
Re: Announce: Sysprof 1.0 -- a sampling, systemwide Linux profiler
#307736
Author: Tomasz Torcz
Date: Sun, 18 Sep 2005 01:28
36 lines
1053 bytes
--+g7M9IMkV8truYOl
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Sat, Sep 17, 2005 at 11:20:15PM +0100, John Levon wrote:
> > and you get data presented in a way that is just a whole lot more
> > useful than the flat text files generated by oprofile.
> 
> Building a GUI around OProfile would have been welcome, but you've
> chosen to re-implement the entire stack...

 Sysprof seems to profile userspace simultanous, while oprofile is
bounded to kernel calls.
 
-- 
Tomasz Torcz                                                       72->|   80->|
zdzichu@irc.-nie.spam-.pl                                          72->|   80->|


--+g7M9IMkV8truYOl
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)
Comment: gpg --search-keys Tomasz Torcz

iD8DBQFDLKaKThhlKowQALQRAvS9AKDnu3VdxM47NQZ0Ruxr28KdP98Y6gCg1nFB
e8UHbUPhRtnp9kChailrRhk=B+LT
-----END PGP SIGNATURE-----

--+g7M9IMkV8truYOl--
Re: Announce: Sysprof 1.0 -- a sampling, systemwide Linux profiler
#307742
Author: Anton Blanchard
Date: Sun, 18 Sep 2005 10:25
20 lines
828 bytes
Hi,

> My motive is not to duplicate oprofile - I basically don't care about
> the kernel level mechanism as long as it can produce stack traces that
> the GUI can interprete and analyse. In fact, one of the first times I
> wrote about sysprof publicly [1], I said:
>
>       It seems to me that since oprofile probably reports more and
>       better data than my kernel module, we should try and get the
>       graphical presentation from sysprof to present oprofile data.
>
> and I still think so, but it's a fairly substantial amount of work to
> get rid of 296 lines of code.

Looking at your kernel module it should be pretty easy to plug on top of
oprofile callgraph data. All the hard work of programming hardware
performance counters will then come for free. Cross platform support
will also come for free.

Anton
Re: Announce: Sysprof 1.0 -- a sampling, systemwide Linux profiler
#307785
Author: bert hubert
Date: Sun, 18 Sep 2005 10:45
41 lines
1328 bytes
> - oprofile had a user interface that I simply didn't understand. As I
>   remember it, I had to know about performance counters and how to
>   translate those into binary masks

This all hasn't been true for a very long while.

> Contrast with sysprof, where you
>         - insert the module

modprobe oprofile

>         - hit the start button

opcontrol --start --vmlinux=/boot/vmlinux

>         - do the thing you want to profile
>         - hit the profile button

opcontrol --stop
opreport -l

> and you get data presented in a way that is just a whole lot more
> useful than the flat text files generated by oprofile.

Not *that* may be very true, and your GUI indeed looks very very promising.
Elsewhere you note regarding removing your sysprof.o code:

> and I still think so, but it's a fairly substantial amount of work to
> get rid of 296 lines of code.

You'll find this work orders of magnitude easier than convincing people that
we need yet another profiling system in the kernel.

So I urge you, keep the cool gui but adapt it to oprofile. I'm sure John
will be more than willing to work with you to make sure oprofile
supports/will support everything you need.

Ok?

--
http://www.PowerDNS.com      Open source, database driven DNS Software
http://netherlabs.nl              Open and Closed source services
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads