Xenalyze Finding meaning in the chaos George Dunlap [email_address] Citrix Systems, UK Ltd
Introduction <ul><li>Modern operating systems are complex </li></ul><ul><li>Xentrace for gathering in-depth information </...
Talk goals <ul><li>Those for whom xenalyze is useful will use it </li></ul><ul><li>Basic understanding of what xenalyze do...
Outline <ul><li>Overview of Xen tracing </li></ul><ul><li>When xentrace is useful </li></ul><ul><li>Core functionality of ...
Xen tracing <ul><li>Trace records </li></ul><ul><ul><li>Single 4-byte event number </li></ul></ul><ul><ul><li>Optional TSC...
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>...
Key trace events <ul><li>Runstate change </li></ul><ul><ul><li>Figure out who’s running where </li></ul></ul><ul><ul><li>A...
Xenalyze: Core functionality <ul><li>Problem: xentrace file not in order </li></ul><ul><ul><li>Attempt to process records ...
Example output, dump mode Xen Summit AMD 2010
Example output, Summary mode Xen Summit AMD 2010
Example output, Interval Xen Summit AMD 2010
Example output, Scatterplot Xen Summit AMD 2010
Advanced features <ul><li>“ Enumeration” of MMIO, IO, addresses, and so on </li></ul><ul><li>Symbol file translation </li>...
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 g...
Case study: WinXP and TPR Xen Summit AMD 2010
Case study: WinXP and TPR, cont Xen Summit AMD 2010
Case study: Shadow Performance Xen Summit AMD 2010
Case study: Shadow perf, con’t Xen Summit AMD 2010 Out-of-sync Sync OS action Fix-up fault (TLB miss) Access Emulate Real ...
Case study: Shadow perf, con’t Xen Summit AMD 2010 Out-of-sync Sync OS action Emulate Unmap PTE Fix-up fault (TLB miss) Ac...
Outline <ul><li>Overview of Xen tracing </li></ul><ul><li>When xentrace is useful </li></ul><ul><li>Core functionality of ...
Talk goals <ul><li>Those for whom xenalyze is useful will use it </li></ul><ul><li>Basic understanding of what xenalyze do...
Questions <ul><li>Download now: </li></ul><ul><li>http://xenbits.xensource.com/ext/xenalyze </li></ul>
Upcoming SlideShare
Loading in...5
×

Xenalyze: Finding meaning in the chaos

3,803

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. 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,803
On Slideshare
0
From Embeds
0
Number of Embeds
5
Actions
Shares
0
Downloads
27
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Xenalyze: Finding meaning in the chaos

  1. 1. Xenalyze Finding meaning in the chaos George Dunlap [email_address] Citrix Systems, UK Ltd
  2. 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. 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. 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. 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. 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. 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. 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. 9. Example output, dump mode Xen Summit AMD 2010
  10. 10. Example output, Summary mode Xen Summit AMD 2010
  11. 11. Example output, Interval Xen Summit AMD 2010
  12. 12. Example output, Scatterplot Xen Summit AMD 2010
  13. 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. 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. 15. Case study: WinXP and TPR Xen Summit AMD 2010
  16. 16. Case study: WinXP and TPR, cont Xen Summit AMD 2010
  17. 17. Case study: Shadow Performance Xen Summit AMD 2010
  18. 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. 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. 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. 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. 22. Questions <ul><li>Download now: </li></ul><ul><li>http://xenbits.xensource.com/ext/xenalyze </li></ul>
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×