Profiling code execution on amd64?
Steve Kargl
sgk at troutmask.apl.washington.edu
Sat Jan 15 06:10:24 UTC 2011
On Fri, Jan 14, 2011 at 03:40:46PM -0500, George Neville-Neil wrote:
>
> On Jan 13, 2011, at 23:05 , Steve Kargl wrote:
>
> > On Thu, Jan 13, 2011 at 10:08:30PM -0500, Ryan Stone wrote:
> >> I would suggest using hwpmc for profiling:
> >>
> >> # kldload hwpmc
> >> # pmcstat -S unhalted-cycles -O /tmp/samples.out ../penetration
> >> # pmcstat -R /tmp/samples.out -G /tmp/penetration.txt
> >>
> >>
> >> You can also get pmcstat to generate gprof-compatible output with -g,
> >> but I never use the mode so I'm really not sure what it gives you. I
> >> think that you have to run gprof on the output or something, but don't
> >> hold me to that.
> >
> >
> > Thanks. I'll give it a try, but my initial attempt seems to
> > indicate that one needs to be root to use hwpmc.
> >
> > laptop:kargl[210] pmcstat -S unhalted-cycles -O /tmp/samples.out ../penetration
> > pmcstat: ERROR: Cannot allocate system-mode pmc with specification
> > "unhalted-cycles": Operation not permitted
> >
>
> You only need to be root to profile the kernel or someone else's process.
>
> This tutorial might help:
>
> www.dcbsdcon.org/speakers/slides/neville-neil_dcbsdcon2009.pdf
>
Thanks. I'll look at the tutorial. Meanwhile, should gprof
be removed from the base system because it appears broken?
--
Steve
More information about the freebsd-current
mailing list