lkml.org 
[lkml]   [2003]   [Feb]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
Subject[PATCH] documentation for basic guide to profiling
I was trying to write some simple docs on how to do profiling for people 
to use for really basic stuff. I got it all wrong, but John's kindly
corrected it ;-) Andrew asked me to do this as a patch for the
documentation directory ... feedback would be much appreciated
(yes, it's oversimplified - it's meant to be).

diff -urpN -X /home/fletch/.diff.exclude virgin/Documentation/basic_profiling.txt oprofile_doc/Documentation/basic_profiling.txt
--- virgin/Documentation/basic_profiling.txt Wed Dec 31 16:00:00 1969
+++ oprofile_doc/Documentation/basic_profiling.txt Fri Feb 28 00:05:59 2003
@@ -0,0 +1,44 @@
+These instructions are deliberately very basic. If you want something clever,
+go read the real docs ;-) Please don't add more stuff, but feel free to
+correct my mistakes ;-) (mbligh@aracnet.com)
+Thanks to John Levon and Dave Hansen for help writing this.
+
+<test> is the thing you're trying to measure.
+Make sure you have the correct System.map / vmlinux referenced!
+IMHO it's easier to use "make install" for linux and hack /sbin/installkernel
+to copy config files, system.map, vmlinux to /boot.
+
+Readprofile
+-----------
+get readprofile binary fixed for 2.5 / akpm's 2.5 patch from
+ftp://ftp.kernel.org/pub/linux/people/mbligh/tools/readprofile/
+add "profile=2" to the kernel command line.
+
+clear echo 2 > /proc/profile
+ <test>
+dump output readprofile -m /boot/System.map > catured_profile
+
+Oprofile
+--------
+get source (I use 0.5) from http://oprofile.sourceforge.net/
+add "poll=idle" to the kernel command line
+Configure with CONFIG_PROFILING=y and CONFIG_OPROFILE=y & reboot on new kernel
+./configure --with-kernel-support
+make install
+
+One time setup (pick appropriate one for your CPU):
+P3 opcontrol --setup --vmlinux=/boot/vmlinux \
+ --ctr0-event=CPU_CLK_UNHALTED --ctr0-count=100000
+Athalon opcontrol --setup --vmlinux=/boot/vmlinux \
+ --ctr0-event=RETIRED_INSNS --ctr0-count=100000
+P4 opcontrol --setup --vmlinux=/boot/vmlinux \
+ --ctr0-event=GLOBAL_POWER_EVENTS \
+ --ctr0-unit-mask=1 --ctr0-count=100000
+
+start daemon opcontrol --start-daemon
+clear opcontrol --reset
+start opcontrol --start
+ <test>
+stop opcontrol --stop
+dump output oprofpp -dl -i /boot/vmlinux > output_file
+
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 13:33    [from the cache]
©2003-2011 Jasper Spaans