Re: [PATCH 0/4] trace: profiling branches

From: Daniel Walker
Date: Sun Nov 30 2008 - 06:07:09 EST


On Fri, 2008-11-21 at 02:12 -0500, Steven Rostedt wrote:
> Ingo,
>
> The following patches clean up the unlikely/likely tracer. Namely
> it consolidates it into a single file called "profile_annotated_branch".
>
> It also adds a new profiler. A true branch profiler that profiles all
> if() statements where the conditional is not a constant. It puts
> a bit of overhead on the system, but the results seem pretty interesting.
> The results are placed in "profile_branch".
>

I looked at the full version of this, and it looks really slow.. As I
recall the biggest problem with the -mm version was it's cacheline
bouncing (pointed out by Ingo), and yours doesn't _seem_ to fix that. In
fact your version looks a lot worse..

So really between the two if we want mainline likely profiling the -mm
version is a better choice.. The reason that version never went into
mainline is cause neither me or Andrew felt strongly that this was
useful in more than just -mm ..

If you look at the output from the profiling long enough it becomes
clear that it's frequently misleading .. In the short term a certain
branch might be likely, and in the long term it isn't.. So you can't
really blindly start converting the annotation..

I should also mention that I didn't write the -mm version alone, it was
an effort between three people me, Andrew, and Hua Zhong (CC added)..

Daniel

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/