The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/Documentation/basic_profiling.txt

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 These instructions are deliberately very basic. If you want something clever,
    2 go read the real docs ;-) Please don't add more stuff, but feel free to 
    3 correct my mistakes ;-)    (mbligh@aracnet.com)
    4 Thanks to John Levon, Dave Hansen, et al. for help writing this.
    5 
    6 <test> is the thing you're trying to measure.
    7 Make sure you have the correct System.map / vmlinux referenced!
    8 
    9 It is probably easiest to use "make install" for linux and hack
   10 /sbin/installkernel to copy vmlinux to /boot, in addition to vmlinuz,
   11 config, System.map, which are usually installed by default.
   12 
   13 Readprofile
   14 -----------
   15 A recent readprofile command is needed for 2.6, such as found in util-linux
   16 2.12a, which can be downloaded from:
   17 
   18 http://www.kernel.org/pub/linux/utils/util-linux/
   19 
   20 Most distributions will ship it already.
   21 
   22 Add "profile=2" to the kernel command line.
   23 
   24 clear           readprofile -r
   25                 <test>
   26 dump output     readprofile -m /boot/System.map > captured_profile
   27 
   28 Oprofile
   29 --------
   30 
   31 Get the source (see Changes for required version) from
   32 http://oprofile.sourceforge.net/ and add "idle=poll" to the kernel command
   33 line.
   34 
   35 Configure with CONFIG_PROFILING=y and CONFIG_OPROFILE=y & reboot on new kernel
   36 
   37 ./configure --with-kernel-support
   38 make install
   39 
   40 For superior results, be sure to enable the local APIC. If opreport sees
   41 a 0Hz CPU, APIC was not on. Be aware that idle=poll may mean a performance
   42 penalty.
   43 
   44 One time setup:
   45                 opcontrol --setup --vmlinux=/boot/vmlinux
   46 
   47 clear           opcontrol --reset
   48 start           opcontrol --start
   49                 <test>
   50 stop            opcontrol --stop
   51 dump output     opreport >  output_file
   52 
   53 To only report on the kernel, run opreport -l /boot/vmlinux > output_file
   54 
   55 A reset is needed to clear old statistics, which survive a reboot.
   56 

Cache object: e62cbce865ad59c85805db7349110f0a


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.