Eric Saxe wrote:

> Hi Aubrey,
> 
> Li, Aubrey wrote:
>> Here is a dtrace script attached, and the output is as follows:
>> #./test.d Dtrace: script './test.d' matched 5 probes
>> CPU  ID                      FUNCTION:NAME
>> 1    91095                   :tick-5sec      1, profile`profile_tick
>> , 1
>>      10,     genunix`deadman , 1
>>      501,    unix`cbe_hres_tick, 1
>>      501,    genunix`clock, 3
>>      501,    genunix`cyclic_timer , 3
>>      501,    pil = 10
>> The probe in av_dispatch_softvect() is fired 500 times per 5-second.
>> But each of the three cyclic customers are called 500 times per
>> 5-second. 
>> 
>> Does this mean we should count cyclic event as 500 times rather than
>> 1500 times? 
>> 
> 
> That's a great observation, and a great question. It sounds like the
> firings of the 3 events are being batch processed, which is made
> possible since they all fire at the same rate. In this case,
> it may well
> be that there is one CPU wakeup per 3 events. But as a consumer of the
> tool what I really want to know is which cyclics are firing, so that I
> can go and figure out how to make them fire less often, or if they can
> be eliminated all together. Showing only the soft interrupt
> events would
> give a more accurate count of how often the CPU is waking up...but I
> think it's more critical to convey (in terms of facilitating power
> efficiency work) are the names of the cyclics and callouts. Similarly,
> with respect to user software applications that wake up
> peroidically...it might be that if two applications wakeup at
> about the
> same time, they might run back to back without the CPU halting in
> between...but even so I think what what's really interesting is which
> applications are waking up and how often. The fact that they can be
> batched seems like more of an implementation artifact. What do
> you think?

Clock system/subsystem is special. They are expected to occur every
100 times per second. I think they can't be maken less often.
The current report is really confused. Because the sum of the causes for
wakups is far away from the number of "Wakeups-from-idle per second".
My suggestion is, remove clock/cbe_hres_tick/cyclic_timer report at all,
or just keep clock event.
That is just my thougts, ;-)

Thanks,
-Aubrey

Reply via email to