Home > General Development > Rapido – A Visual Profiler For Linux-x86 Rapido – A Visual Profiler For Linux-x86 Submitted by Nadav 2005-07-06 General Development 10 Comments Rapido is a visual profiler for Linux-x86. The program helps in visualizing and describing what’s going on in the heart of the program. It helps developers in finding and analyzing bottlenecks in their applications. About The Author Thom Holwerda Follow me on Twitter @thomholwerda 10 Comments 2005-07-06 12:21 pm nice tool. altough it’s quite useless. 2005-07-06 12:59 pm Profiling can improve your program’s efficiency enormously, since it can tell you what parts of it to optimize. 2005-07-06 1:13 pm How is this any different from gprof that produces a flat file of your profiling output? What benefits does this bring over the standard gprof? What I would really like is a profiler that actually breaks down program execution by functions, and by each individual line. As it stands with gprof you only know what functions are taking the most time. You don’t know where exactly in the function. Something that actually pin-points bottlenecks will be helpful. 2005-07-06 2:10 pm The one thing I like best about Mac OS X is Shark, the “professional” profiler from the DevTools (the “simple” one is called Sampler). Shark is a sampling profiler, meaning it checks the currently executing function in fixed intervals, unlike (AFAIK) gprof, which samples every function call, leading to quite a reduction in speed. But that’s not what’s cool about Shark: you can display your call stack for every function, sort the functions by time or calls, you can “charge” functions to their caller (i.e. calls to the system library add to the cost of a call instead of being profiled separately, and you can display hot spots inside the functions (in either assembly or source form). Plus, the damn thing gives helpful tips for profiling. (Like: “You’re converting from float to int a lot here; wouldn’t it make more sense to stay all-float or all-int”). I’d kill for something like Shark on Linux. 2005-07-06 2:40 pm Luke McCarthy callgrind + KCachegrind does much the same thing. It also shows you how long each line of code is taking to execute when you compile with -g. 2005-07-06 3:20 pm Hope this will show us why Gnome is slow. 2005-07-06 4:36 pm Check out oprofile on Linux. The annotated report functionality will give you information per-line, as well as per-function. 2005-07-06 6:06 pm I know it costs money, but quite simply, vtune from intel is the best profiler i’ve ever used. You can even profile the linux kernel (which is what I used it for). Unfortunately, last time I used it you still had to transfer the results to a windows machine for visualization. Hopefully, they fix that. 2005-07-06 11:42 pm nguyenthanhvuh vtune, along with many other intel developing products for Linux are free for non-commercial use. http://www.intel.com/cd/software/products/asmo-na/eng/219771.htm And I really am thankful for the Intel c/c++ compiler which has openmp support, something gcc does not have. 2005-07-07 8:47 am KCachegrind looks much like Shark (well, you know what I mean 🙂 ). I’ll definitely check it out.