Your SlideShare is downloading. ×
0
Xenalyze: Finding meaning in the chaos
Xenalyze: Finding meaning in the chaos
Xenalyze: Finding meaning in the chaos
Xenalyze: Finding meaning in the chaos
Xenalyze: Finding meaning in the chaos
Xenalyze: Finding meaning in the chaos
Xenalyze: Finding meaning in the chaos
Xenalyze: Finding meaning in the chaos
Xenalyze: Finding meaning in the chaos
Xenalyze: Finding meaning in the chaos
Xenalyze: Finding meaning in the chaos
Xenalyze: Finding meaning in the chaos
Xenalyze: Finding meaning in the chaos
Xenalyze: Finding meaning in the chaos
Xenalyze: Finding meaning in the chaos
Xenalyze: Finding meaning in the chaos
Xenalyze: Finding meaning in the chaos
Xenalyze: Finding meaning in the chaos
Xenalyze: Finding meaning in the chaos
Xenalyze: Finding meaning in the chaos
Xenalyze: Finding meaning in the chaos
Xenalyze: Finding meaning in the chaos
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Xenalyze: Finding meaning in the chaos

3,769

Published on

The Xen has a tracing infrastructure that can collect a large amount of very detailed data about what's happening at the hypervisor layer. But making sense out of that data isn't an easy thing to do. …

The Xen has a tracing infrastructure that can collect a large amount of very detailed data about what's happening at the hypervisor layer. But making sense out of that data isn't an easy thing to do. In this talk I give an overview of xenalyze, a powerful tool I've developed for finding meaning in the vast amounts of data generated by xentrace, enabling both debugging and performance analysis.

Published in: Technology, Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
3,769
On Slideshare
0
From Embeds
0
Number of Embeds
5
Actions
Shares
0
Downloads
27
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Xenalyze Finding meaning in the chaos George Dunlap [email_address] Citrix Systems, UK Ltd
  • 2. Introduction <ul><li>Modern operating systems are complex </li></ul><ul><li>Xentrace for gathering in-depth information </li></ul><ul><li>Too much information </li></ul><ul><li>Xenalyze </li></ul>
  • 3. Talk goals <ul><li>Those for whom xenalyze is useful will use it </li></ul><ul><li>Basic understanding of what xenalyze does, and what it’s useful for </li></ul>
  • 4. Outline <ul><li>Overview of Xen tracing </li></ul><ul><li>When xentrace is useful </li></ul><ul><li>Core functionality of xenalyze </li></ul><ul><li>Xenalyze as a platform </li></ul><ul><li>Case studies </li></ul>
  • 5. Xen tracing <ul><li>Trace records </li></ul><ul><ul><li>Single 4-byte event number </li></ul></ul><ul><ul><li>Optional TSC timestamp </li></ul></ul><ul><ul><li>Optional trace-specific data, up to 28 bytes </li></ul></ul><ul><li>Event mask to control which events are logged </li></ul><ul><li>Per-cpu trace buffers </li></ul><ul><li>Buffers read by process in dom0, copied to disk </li></ul>
  • 6. Xen tracing: What it’s good for <ul><li>Key attributes </li></ul><ul><ul><li>Lots of detailed data </li></ul></ul><ul><ul><li>Moderate cpu, disk overhead </li></ul></ul><ul><ul><li>Not persistent on host crash </li></ul></ul><ul><li>Understand both macro and micro effects </li></ul><ul><ul><li>Performance analysis </li></ul></ul><ul><ul><li>Debugging </li></ul></ul><ul><ul><li>Understanding guest behavior </li></ul></ul><ul><li>Comparing to other techniques </li></ul><ul><ul><li>printk </li></ul></ul><ul><ul><li>Xenoprof </li></ul></ul><ul><ul><li>Xen performance counters </li></ul></ul>
  • 7. Key trace events <ul><li>Runstate change </li></ul><ul><ul><li>Figure out who’s running where </li></ul></ul><ul><ul><li>Analyze how much time is spent blocked, preempted, waiting after wake, &c </li></ul></ul><ul><li>VMEXIT / VMENTER </li></ul><ul><ul><li>How much time, and for what reason, we’re spending time in Xen </li></ul></ul>
  • 8. Xenalyze: Core functionality <ul><li>Problem: xentrace file not in order </li></ul><ul><ul><li>Attempt to process records in order </li></ul></ul><ul><li>Mapping small to large </li></ul><ul><ul><li>Aggregate information to see larger trends </li></ul></ul><ul><li>Data is per-cpu, but we want per-vcpu </li></ul><ul><ul><li>Track vcpus across physical cpus </li></ul></ul>
  • 9. Example output, dump mode Xen Summit AMD 2010
  • 10. Example output, Summary mode Xen Summit AMD 2010
  • 11. Example output, Interval Xen Summit AMD 2010
  • 12. Example output, Scatterplot Xen Summit AMD 2010
  • 13. Advanced features <ul><li>“ Enumeration” of MMIO, IO, addresses, and so on </li></ul><ul><li>Symbol file translation </li></ul><ul><li>Linear pagetable back-calculation </li></ul><ul><li>Wake-to-halt, by interrupt </li></ul><ul><li>… and many more </li></ul>
  • 14. Platform for new analysis <ul><li>Xenalyze may not be able to answer the questions you have </li></ul><ul><li>But it’s a great platform to modify, because it’s already done a lot of the hard work for you </li></ul>
  • 15. Case study: WinXP and TPR Xen Summit AMD 2010
  • 16. Case study: WinXP and TPR, cont Xen Summit AMD 2010
  • 17. Case study: Shadow Performance Xen Summit AMD 2010
  • 18. Case study: Shadow perf, con’t Xen Summit AMD 2010 Out-of-sync Sync OS action Fix-up fault (TLB miss) Access Emulate Real PTE Emulate Transition PTE Propagate Propagate Page fault
  • 19. Case study: Shadow perf, con’t Xen Summit AMD 2010 Out-of-sync Sync OS action Emulate Unmap PTE Fix-up fault (TLB miss) Access Emulate Map PTE
  • 20. Outline <ul><li>Overview of Xen tracing </li></ul><ul><li>When xentrace is useful </li></ul><ul><li>Core functionality of xenalyze </li></ul><ul><li>Xenalyze as a platform </li></ul><ul><li>Case studies </li></ul>
  • 21. Talk goals <ul><li>Those for whom xenalyze is useful will use it </li></ul><ul><li>Basic understanding of what xenalyze does, and what it’s useful for </li></ul>
  • 22. Questions <ul><li>Download now: </li></ul><ul><li>http://xenbits.xensource.com/ext/xenalyze </li></ul>

×