PROSE Approach <ul><li>Run applications in stand-alone partition </li></ul><ul><li>Enable execution environment which make...
Noise Control w/PROSE & Hypervisors <ul><li>Allow strict control of percentage of CPU devoted to application versus system...
Measured OS Interference Comparison w/FWQ Idle Loaded Linux PROSE
BACKUP SLIDES
HDEC Sensitivity
Phase Scheduling Noise <ul><li>FWQ aren't aligned to scheduler quanta </li></ul><ul><li>Noise is exacerbated by fixed leng...
Acknowledgments <ul><li>This work would not be possible without the contributions of Jimi Xenidis, Michal Ostrowski, Orran...
GUPS Performance Slide
App App Transparent Application Development Process Original Application PROSE Application Custom OS Library App libc MPI ...
Partitioning Resources as Files Hardware Devices System Services Application Services Disk Network TCP/IP Stack Database G...
PROSE I/O u9fs devcons in channel out channel Shared Memory libfs application open read write close tcp/ip mpifs Ethernet ...
Future Work <ul><li>Experiment with dynamic scheduling policy which adapts slot-scheduler based on idle yielding. </li></u...
Experimental Setup arlx112 arlx113 Both <ul><li>IBM JS20 Blade </li></ul><ul><li>SLOF Firmware </li></ul><ul><li>4 GB DRAM...
Results - Linux Idle Loaded
Results - PROSE Idle Loaded
Upcoming SlideShare
Loading in …5
×

Effect of Virtualization on OS Interference

568 views
479 views

Published on

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

  • Be the first to like this

No Downloads
Views
Total views
568
On SlideShare
0
From Embeds
0
Number of Embeds
48
Actions
Shares
0
Downloads
10
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Effect of Virtualization on OS Interference

  1. 1. PROSE Approach <ul><li>Run applications in stand-alone partition </li></ul><ul><li>Enable execution environment which makes starting a partition as easy as starting an application </li></ul><ul><li>Development environment allowing creation of specialized kernels as easy as developing an application (library-OS) </li></ul><ul><li>Resource sharing between library-OS partitions and traditional partitions keeping library-OS kernels simple and reliable </li></ul><ul><li>Extensions to allow bridging resource sharing and management across the entire cluster. </li></ul><ul><li>Unified communication protocol for resource sharing and control with built-in failure detection and recovery. </li></ul>* Details available at http://www.research.ibm.com/prose Kernel <-> Hypervisor Interface Logical Partition Hardware Platform Hypervisor Logical Partition Logical Partition Logical Partition Hardware <-> Hypervisor Interface DB2 lib OS lib OS GUPS 9P 9P Controller Controller App 9p
  2. 2. Noise Control w/PROSE & Hypervisors <ul><li>Allow strict control of percentage of CPU devoted to application versus system daemons and I/O requests </li></ul><ul><li>Can eliminate jitter associated with interrupt service routines </li></ul><ul><li>Provides a higher degree of determinism that vanilla Linux, but does so at a performance cost </li></ul>
  3. 3. Measured OS Interference Comparison w/FWQ Idle Loaded Linux PROSE
  4. 4. BACKUP SLIDES
  5. 5. HDEC Sensitivity
  6. 6. Phase Scheduling Noise <ul><li>FWQ aren't aligned to scheduler quanta </li></ul><ul><li>Noise is exacerbated by fixed length scheduling slots. </li></ul><ul><li>Fixed noise ratio based on HDEC length </li></ul>...
  7. 7. Acknowledgments <ul><li>This work would not be possible without the contributions of Jimi Xenidis, Michal Ostrowski, Orran Krieger, and the rest of the rHype team. This work was supported in part by the Defense Advanced Research Projects Agency under contract no. NBCH30390004. </li></ul>
  8. 8. GUPS Performance Slide
  9. 9. App App Transparent Application Development Process Original Application PROSE Application Custom OS Library App libc MPI my OS lib OS
  10. 10. Partitioning Resources as Files Hardware Devices System Services Application Services Disk Network TCP/IP Stack Database GUI tun/tap driver /dev/eth0 /dev/tap0 /dev/tap1 /net /arp /udp /tcp /clone /stats /0 /1 /ctl /data /listen /local /remote /status File System /mnt/9p_root /mnt/common_fs /mnt/remote_nfs /sql /clone /0 /query /result /1 /win /clone /0 /1 /ctl /data /opengl /refresh /2 /dev/hda1 /dev/hda2
  11. 11. PROSE I/O u9fs devcons in channel out channel Shared Memory libfs application open read write close tcp/ip mpifs Ethernet Disk Partition File System netfs Private namespace Network
  12. 12. Future Work <ul><li>Experiment with dynamic scheduling policy which adapts slot-scheduler based on idle yielding. </li></ul><ul><li>Repeat experiments with different interrupt service policies. </li></ul><ul><li>Repeat experiments with different virtualization implementations (Xen, VMware, IBM Virtualization Engine, etc.) </li></ul><ul><li>Repeat experiments with a standard benchmark w/ I/O dependencies instead of relying on microbenchmarks. </li></ul><ul><li>SMP studies. </li></ul>
  13. 13. Experimental Setup arlx112 arlx113 Both <ul><li>IBM JS20 Blade </li></ul><ul><li>SLOF Firmware </li></ul><ul><li>4 GB DRAM Memory </li></ul><ul><li>Single * 1.66 GHZ 970 </li></ul><ul><li>Linux 2.6.10 </li></ul><ul><li>Controller Partition </li></ul><ul><li>Linux 2.6.10 </li></ul><ul><li>64 MB of memory </li></ul><ul><li>PROSE Partition </li></ul><ul><li>Application + lib-os </li></ul><ul><li>1 GB of memory </li></ul><ul><li>Console & Time over 9P </li></ul>
  14. 14. Results - Linux Idle Loaded
  15. 15. Results - PROSE Idle Loaded

×