Question

I am devolping a console math intensive application on Mac OS X. It's implemented in C++, and I'm using no special IDE, just a plain text editor, and GCC for compiling.

Currently, my implementation is quite slow with my data. What is the easiest/best way to profile it to know which parts to optimize?

I use valgrind, at a very basic level, to check for memory leaks. However, I never used it (callgrind) for computing speed profiling. How should I do it? I find callgrind documentation a little confusing/not very newbie friendly. Is there a kcachegrind equivalent for Mac? As far as I know, Maccachegrind only works with xdebug output, and doesn't work with callgrind 3.6.0 output.

Is it better to use valgrind or gprof for profiling? I am not familiar with neither.

Thanks.

Was it helpful?

Solution

/Developer/Applications/Performance Tools/Shark.app

Open it, run your application, hit start, let your app run for a bit, hit stop.

There's a more detailed introduction on the Apple developer site.

OTHER TIPS

You should be able to install kcachegrind from Macports (package kdesdk4) and maybe also fink (which I never used myself) and use it just as you do on Linux. I did that in the past and it worked fine.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top