On Fri, Jun 20, 2014 at 4:01 PM, Salman Ahmed salmanyam@yahoo.com wrote:
Hello Amit,
Actually, I ran it on the same machine with the same command again and these time the output has frequency information-
$ sudo ./idlestat --trace -t 5 -f /tmp/myoutput -- top
Log is 4.999547 secs long with 710 events clusterA@state hits total(us) avg(us) min(us) max(us) C6-SNB 174 4953094.00 28466.06 0.00 183909.00 cpu0@state hits total(us) avg(us) min(us) max(us) C1-SNB 1 630.00 630.00 630.00 630.00 C6-SNB 111 4995205.00 45001.85 8.00 279064.00 cpu0 wakeups name count irq040 eth0 50 cpu1@state hits total(us) avg(us) min(us) max(us) C6-SNB 54 4997809.00 92552.02 125.00 323888.00 cpu1 wakeups name count irq018 ata_piix 10 cpu2@state hits total(us) avg(us) min(us) max(us) C1-SNB 35 19993.00 571.23 121.00 11699.00 C6-SNB 48 4957068.00 103272.25 51.00 323891.00 3101 8 487.00 60.88 1.00 291.00 1600 78 14303.00 183.37 1.00 6144.00 cpu2 wakeups name count cpu3@state hits total(us) avg(us) min(us) max(us) C1-SNB 4 379.00 94.75 25.00 128.00 C6-SNB 59 4997441.00 84702.39 60.00 323878.00 cpu3 wakeups name count
So, output sometimes contains frequency information and sometimes it doesn't with the same command. When it does not, trace file does not contain any cpu_frequency entry. So, the problem may not be with idlestat tool since it just parses trace file. Is it possible there is any bug in kernel tracing code?
Does this happen when you run for longer than 5 seconds? Try running it for 15 seconds 10 times. I wonder if your platform isn't transitioning P-states in 5 seconds.