views:

45

answers:

3

I am supposed to profile/optimize an application. I am running on a mips machine so valgrind is not an option. Any tool suggestions, tactics?

EDIT: I guess I should have given more details. Gprof is not supported in my toolchain. I have tried oprofile; but results seemed incorrect, also I could not get a calltree. I am looking for an alternative.

A: 

If you're using the GNU toolchain (gcc et al) then you can use gprof. It's crude, but it works.

If your OS is Linux then you might also check whether oprofile is supported on MIPS.

Paul R
A: 

The method I've relied on for three decades, for all such problems, on all kinds of machines and operating systems, is this.

gprof is nearly as old and reliable, but is very limited in what it will do for you.

Mike Dunlavey
Code is huge and has a decent performance (ie: it does not get stuck in loops). But it needs further optimization to be more responsive. I am not sure if start/stop will help.
l.thee.a
@l.thee.a: It will. You'll see.
Mike Dunlavey
@l.thee.a: FYI: http://stackoverflow.com/questions/2624667/whats-a-very-easy-c-profiler-vc/2624725#2624725
Mike Dunlavey
A: 

The SD Profiler is a family of code profilers based on langauge-accurate parsers used to temporarily instrument your code. These profilers cover C, C++, Java, C#, PHP and COBOL.

The profilers have very low footprint and overhead, and are thus ideal for embedded systems. You didn't say what langauge, so I'll guess you are interested in C or C++.

However, you need to be more specific about which (C/C++) dialect you are using.

Ira Baxter