Re: [PATCH] perf_events: improve x86 event scheduling (v5)

From: Peter Zijlstra
Date: Thu Jan 21 2010 - 05:12:20 EST


On Thu, 2010-01-21 at 11:08 +0100, Stephane Eranian wrote:
> >> > Do you mean this:
> >> >
> >> > hw_perf_group_sched_in_begin(&x86_pmu);
> >> >
> >> > for_each_event(event, group) {
> >> > event->enable(); //do the collection here
> >> > }
> >> >
> >> >
> >> > if (hw_perf_group_sched_in_end(&x86_pmu)) {
> >> > rollback...
> >> > }
> >> >
> >> > That requires to know in advance if we have hardware pmu
> >> > in the list though (can be a flag in the group).
> >>
>
> I don't think this model can work without scheduling for each event.
>
> Imagine the situation where you have more events than you have
> counters. At each tick you:

No it wont indeed, but it will work for where we now use
hw_perf_group_sched_in() without having to replicate lots of code.

For the cases you mention I see no other way than to try and schedule
each event individually.

--
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/