Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 1 Apr 2009 15:38:29 +0800
From:      =?GB2312?B?tN7R0mNjdWl5eWFuQHNpbmEuY29t?= <ccuiyyan@gmail.com>
To:        freebsd-current@freebsd.org
Subject:   Performance Tools in FreeBSD
Message-ID:  <4451ccf20904010038p64ed2540mec3249f89bb7b8c2@mail.gmail.com>

index | next in thread | raw e-mail

Dear all:

      I wonder to know which kind of performance tools FreeBSD hackers use
to identify scalability or performance

      bottlenecks. I really have a hard time in that. To identify
bottlenecks in our benchmarks, i try PMC and Dtrace.

      However, PMC seems not to be supported in AMD Opteron CPU because i
get a "invalid arguments" error when

      i use the command pmcstat -S instructions -O <outputfile>. However,
"instructions, cycles,..." are documented in

     pmc manual. By the way, I enable the options in configuration file
options HWPMC_HOOKS and device hwpmc.

     So i give up PMC and turn to Dtrace in BSD. Dtrace in FreeBSD can work,
but the information is meaningless.

     Profile provider cannot be used. (When i used, the kernel goes into
kdb.) Tick provider can be used (It can only work

      on one CPU by definition). However, when i use aggregation like
"dtrace -n 'tick-10ms /arg0!=0/{@ks[probefunc] = count();}'"

      There are no human readable results. Only tools i can use is the
stack() command. However, the results are limited.

      I know Dtrace is a tool in FreeBSD under development.

      Are there any tools recommended to do kernel profiling or callgraph
effectively? (which functions take the most time)



                                           Best Wishes!



                                                Yan


home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4451ccf20904010038p64ed2540mec3249f89bb7b8c2>