Re: [PATCH][RFC] Adding transition of CPU frequency countingsupport to perfcounters

From: Ingo Molnar
Date: Sun Aug 02 2009 - 16:13:40 EST



* Hitoshi Mitake <mitake@xxxxxxxxxxxxxxxxxxxxx> wrote:

> From: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx>
> Subject: Re: [PATCH][RFC] Adding transition of CPU frequency counting support to perfcounters
> Date: Sat, 18 Jul 2009 18:09:15 +0200
>
> > On Sat, 2009-07-18 at 23:11 +0900, mitake@xxxxxxxxxxxxxxxxxxxxx wrote:
> > >
> > > Oh, my perf could count cpufreq events!
> > > Thanks for your nice advice!
> > >
> > > % perf stat -a sleep 60
> > >
> > > Performance counter stats for 'sleep 60':
> > >
> > > 479088.075595 task-clock-msecs # 7.984 CPUs
> > > 199080 context-switches # 0.000 M/sec
> > > 19584 CPU-migrations # 0.000 M/sec
> > > 322978 page-faults # 0.001 M/sec
> > > 29 cpufreq-up # 0.000 M/sec
> > > 42 cpufreq-down # 0.000 M/sec
> > > 73703367828 cycles # 153.841 M/sec
> > > 52005203450 instructions # 0.706 IPC
> > > 209762467 cache-references # 0.438 M/sec
> > > 84916856 cache-misses # 0.177 M/sec
> > >
> > > 60.009508200 seconds time elapsed
> > >
> > > And I'm using ondemand governor now,
> > > so kernel thread [kondemand] context causes freq transition.
> > > I didn't notice that...
> > >
> > > Could you merge this patch?
> > > Can I send this patch with descriptions and Signed-off-by?
> >
> > Why, what is the usecase?
> >
> >
>
> Hmm, I considered, and I noticed that this patch makes no sense.
> Because my first purpose "collecting CPU freq transitions per
> process level" is completely nonsense. CPU freq transitions are
> global things, not one of processes.

Well, but 'perf stat -a' will install per CPU counters, i.e. the
counting is global, not per task.

(even per task counting makes a certain amount of sense: which apps
generate the most freq change events for example?)

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