Q on Flat profiling
ntap faq
ntapfaq at gmail.com
Wed Apr 15 10:30:39 UTC 2009
Hi,
I am doing flat profiling for custom kernel code on hardware
with multiple CPUs. Just wanted to verify if i am doing things correctly.
If your’e still interested, read on. The way I collect the gmon.* files is
by doing:
For each CPU [0..3] {
#switch cpu by using sysctl….
kgmon –r # reset
kgmon –b # start
}
(sleep for 1min/10mins and let the code do its job)
For each CPU [0..3] {
#switch cpu by using sysctl….
kgmon –h # stop
}
#dumps the gmon.* files which I make sense with by using gprof.
For 1 min delays, I get smooth , consistent sampling profiles:
*Sampling when profiling ios done for 60 seconds/1min*
gprof.out.0.4:granularity: each sample hit covers 16 byte(s) for 0.00% of
65.06 seconds
gprof.out.1.4:granularity: each sample hit covers 16 byte(s) for 0.00% of
65.02 seconds
gprof.out.2.4:granularity: each sample hit covers 16 byte(s) for 0.00% of
65.05 seconds
gprof.out.3.4:granularity: each sample hit covers 16 byte(s) for 0.00% of
65.12 seconds
It turns out that the sampling numbers are skewed once the sampling time
goes to 10mins…
*Sampling when profiling ios done for 600 seconds/10mins*
gprof.out.0:granularity: each sample hit covers 16 byte(s) for 0.00% of
304.74 seconds
gprof.out.1:granularity: each sample hit covers 16 byte(s) for 0.00% of
403.11 seconds
gprof.out.2granularity: each sample hit covers 16 byte(s) for 0.00% of
501.55 seconds
gprof.out.3:granularity: each sample hit covers 16 byte(s) for 0.00% of
206.47 seconds
No I cant fathom why… if you do have any idea why, I’d appreciate it.
Thanks
rohit
More information about the freebsd-performance
mailing list