Jean-Jacques Clar wrote:

I never used any profiling tools on Linux,
but will like to learn as much as possible in that field.
Since I have to start from scratch, Is oprofile the best one or do you have any
other suggestions?

oprofile is my favorite for Linux because:
* it's open source and the developers are responsive
* it doesn't depend on extra intrumentation code inserted in the executables, therefore you don't need any special compiler switch settings. Instead, oprofile uses a sampling technique where it records the instruction counter every so often, typically after n busy CPU cycles.
* it gives you a complete picture of system CPU usage including the kernel, the libraries, and the user mode programs such as httpd
* it's low overhead


There's also gprof. It needs special compile switch settings. gprof has the advantage of being able to display call graphs, but the oprofile developers are working on that now.

It's fairly easy to install and run oprofile as long as you know the path to an uncompressed kernel image (i.e. vmlinux, not vmlinuz). Look in your /boot directory and see if you have one already. Worst case, you'll have to recompile the kernel. That might sound scary if you've never done it but it's really not too bad.

I'll be happy to help with oprofile if you run into problems.

Good luck,
Greg



Reply via email to