WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-changelog

[Xen-changelog] [xen-unstable] [IA64] xenoprof/ia64 howto

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] [xen-unstable] [IA64] xenoprof/ia64 howto
From: Xen patchbot-unstable <patchbot-unstable@xxxxxxxxxxxxxxxxxxx>
Date: Wed, 23 Jan 2008 01:11:22 -0800
Delivery-date: Wed, 23 Jan 2008 01:17:08 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-changelog-request@lists.xensource.com?subject=help>
List-id: BK change log <xen-changelog.lists.xensource.com>
List-post: <mailto:xen-changelog@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=unsubscribe>
Reply-to: xen-devel@xxxxxxxxxxxxxxxxxxx
Sender: xen-changelog-bounces@xxxxxxxxxxxxxxxxxxx
# HG changeset patch
# User Alex Williamson <alex.williamson@xxxxxx>
# Date 1200597061 25200
# Node ID 7238393ef22030463a88f35163a94031f7d5fd4c
# Parent  003036d7db0fa5e3b988a4011655db411be8ed06
[IA64] xenoprof/ia64 howto

Signed-off-by: Isaku Yamahata <yamahata@xxxxxxxxxxxxx>
---
 xen/arch/ia64/tools/README.xenoprof |  154 ++++++++++++++++++++++++++++++++++++
 1 files changed, 154 insertions(+)

diff -r 003036d7db0f -r 7238393ef220 xen/arch/ia64/tools/README.xenoprof
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/xen/arch/ia64/tools/README.xenoprof       Thu Jan 17 12:11:01 2008 -0700
@@ -0,0 +1,154 @@
+                       Xenoprof/IA64 HOWTO
+
+                          Written by Isaku Yamahata <yamahata at valinux co jp>
+                                                                 15th Jan, 2008
+
+
+Introduction
+------------
+This documents describes how to use xenoprof/ia64.
+See oprofile site for the details of oprofile itself.
+
+
+Reference
+---------
+oprofile
+http://oprofile.sourceforge.net/news/
+
+xenoprof
+http://xenoprof.sourceforge.net/
+
+
+Requirement
+-----------
+- xen VMM
+  xen-ia64-devel.hg c/s 16632:2900e4dacaa7 or later
+  Probably xen 3.2 or later would be OK.
+
+- dom0/domU Linux
+  linux kernel tree corresponding to xen VMM.
+
+- Oprofile
+  oprofile 0.9.3 or later
+  get the patch for oprofile 0.9.3 from http://xenoprof.sourceforge.net/
+  oprofile-0.9.3-xen-r2.patch or later
+  NOTE:The xenoprof/IA64 specific part is already included in the development
+       cvs tree.
+
+- Documentation
+  You can find the documentation from http://xenoprof.sourceforge.net/.
+  It doesn't cover IA64 specific part, but it almost applies.
+
+
+Options to opcontrol
+--------------------
+You have to tell the oprofile daemon that the session is xenoprof one
+by "--xen" option.
+--xen=<xen_image_file>
+  Specify the xen image.
+--active-domains<list>
+  Specify active domains
+--passive-domains=<list>
+  Specify passive domains
+
+
+Examples
+--------
+- dom0 active, dom1 passive case example
+  on dom0
+  # opctonrol --start-daemon --xen=<path to xen-syms> \
+    --vmlinux=<path to vmlinux> \
+    --active-domains=0 --passive-domains=1
+  # opcontrol --start
+
+  <make activity you want>
+
+  # opcontrol --stop (or opcontrol --shutdown)
+  # opreport -l or something to get the result
+
+
+- both dom0 and dom1 active example
+  on dom0
+  # opctonrol --start-daemon --xen=<path to xen-syms> \
+    --vmlinux=<path to vmlinux> \
+    --active-domains=0,1
+
+  on dom1
+  # opctonrol --start-daemon --xen=<path to xen-syms> \
+    --vmlinux=<path to vmlinux>
+  domain1 isn't primary domain so that --active-domains/--passive-domains
+  shouldn't be specified.
+
+  on dom0
+  # opcontrol --start
+  on dom1
+  # opcontrol --start
+
+  <make activity you want>
+
+  on dom1
+  # opcontrol --stop (or opcontrol --shutdown)
+  on dom0
+  # opcontrol --stop (or opcontrol --shutdown)
+
+  on dom0
+  # opreport -l or something to get the result of dom0
+  on dom1
+  # opreport -l or something to get the result of dom1
+
+
+Result example
+--------------
+The app name of non-dom0 domain would be domain<N>-{xen, kernel, modules, app}
+where N is the domain id.
+You may want to create domain<N>-xen domain<N>-kernel to get the symbol names.
+
+# opreport
+CPU: Itanium 2, speed 1595 MHz (estimated)
+Counted L2DTLB_MISSES events (L2DTLB Misses) with a unit mask of 0x00 (No unit 
mask) count 5000
+L2DTLB_MISSES:...|
+  samples|      %|
+------------------
+      242 40.2662 domain1-kernel
+      176 29.2845 domain1-xen
+      128 21.2978 domain1-apps
+       55  9.1514 xen-syms
+
+# opreport -l
+CPU: Itanium 2, speed 1595 MHz (estimated)
+Counted L2DTLB_MISSES events (L2DTLB Misses) with a unit mask of 0x00 (No unit 
mask) count 5000
+warning: /boot/domain1-xen could not be found.
+warning: /domain1-apps could not be found.
+warning: /domain1-kernel could not be found.
+samples  %        app name                 symbol name
+242      40.2662  domain1-kernel           (no symbols)
+176      29.2845  domain1-xen              (no symbols)
+128      21.2978  domain1-apps             (no symbols)
+16        2.6622  xen-syms                 context_switch
+16        2.6622  xen-syms                 lookup_domain_mpa
+7         1.1647  xen-syms                 vcpu_get_domain_bundle
+3         0.4992  xen-syms                 do_dom0vp_op
+3         0.4992  xen-syms                 lookup_noalloc_domain_pte
+3         0.4992  xen-syms                 xencomm_get_page
+2         0.3328  xen-syms                 __copy_user
+2         0.3328  xen-syms                 vcpu_translate
+1         0.1664  xen-syms                 ia64_frametable_probe
+1         0.1664  xen-syms                 vcpu_wake
+1         0.1664  xen-syms                 xencomm_ctxt_init
+
+
+Limitations
+-----------
+- Don't create/destroy/save/restore/live migration during xenoprof session.
+  Otherwise something would go wrong. (including xen VMM hang)
+  This isn't ia64 specific.
+  If you want to profile early boot phase, "xm create -p/unpause" is your
+  friend.
+
+- Currently only the generic PMC/PMD is supported.
+  The CPU implementation specific PMC/PMD isn't supported.
+
+- calling graph isn't supported yet.
+
+- The active domain for HVM domain isn't supported
+  Xen/IA64 VMM itself supports it, however the driver doesn't exist.

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-changelog] [xen-unstable] [IA64] xenoprof/ia64 howto, Xen patchbot-unstable <=