1 / 35

Snowbird: Interactive Resource-Intensive Applications Made Easy

Snowbird: Interactive Resource-Intensive Applications Made Easy. H. Andr és Lagar-Cavilla * Niraj Tolia ‡ , Eyal de Lara * , M. Satyanarayanan ‡ & Dave O’Hallaron ‡ * U of Toronto, ‡ CMU, September 2007. Bimodal Applications. Interactive Cognitive phase Resource-Intensive Crunch phase

Sophia
Download Presentation

Snowbird: Interactive Resource-Intensive Applications Made Easy

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Snowbird:Interactive Resource-IntensiveApplications Made Easy H. Andrés Lagar-Cavilla* Niraj Tolia‡, Eyal de Lara*, M. Satyanarayanan‡ & Dave O’Hallaron‡ *U of Toronto, ‡CMU, September 2007

  2. Bimodal Applications • Interactive • Cognitive phase • Resource-Intensive • Crunch phase • Digital Animation • Scientific Computing • Engineering Design • Bio/Pharma • Video Editing • …. Maya (digital animation)

  3. Different Phases, Different Needs • Crunch (computation) • Short completion time • Computing resources • Cognitive (interaction) • Crisp interactive performance • User attention

  4. What To Do? Execution alternatives • Thick Clients (Desktop PCs) • Have excellent interactive performance • Can be resource constrained • Thin Clients (VNC, Remote Desktop) • Allow use of remote resources (CPU, Data) • Latency and jitter impact interactive performance • Custom Applications • Pipeline: placement over different nodes • Requires significant developer resources

  5. What To Do? A Systems Solution With the best of both worlds • Have excellent interactive performance • Allow use of remote resources (CPU, Data)

  6. Snowbird: Agent Abstraction Applications encapsulated within an agent • Agent: processes, libraries, IPC, OS, config data… • Migration: performance goals achieved by morphing • a thin client for resource intensive crunch phases • a thick client for highly interactive cognitive phases

  7. Bimodal Applications Made Easy • Develop apps as monolithic blocks • Don’t worry about what executes where • Agent is migrated to satisfy each phase • Seamless and transparent behavior • Legacy support • Different OS’s (and versions/features) • Different languages (Fortran!) • No need for recompilation, relinking, etc… • Closed source apps just work

  8. Design Criteria • VM-based migration • x86 interface most widely deployed • Transparently support OS, lang, etc… • Internet scale • WAN migration • Long fat pipes • 50 Mbp/s…, 50-200 ms RTT • Server-less design (P2P) • All hosts symmetric • Can execute anywhere

  9. Implementation

  10. Implementation • VMM: suspend, resume, live migration • Xen 3.0.1 • Interaction-aware migration manager • Transparent • Support for 3D acceleration in VMs • Vital for crisp interaction • Virtual disk that maximizes locality • WAN area migration

  11. CPUIntensive cycles.org FPS < 20 && Input > 15 CPU > 95% InteractionIntensive usr.home NetIntensive data.edu Net > 4 Mbit/s Agent Profiles: Migration Manager • FSM that models an agent’s behavior • Provided by expert users, admins, or developers • Default system-wide profile available • Only deployment additional effort

  12. Interaction-aware • Novelty in our approach • Measure the quality of the interactive response • We use frames per seconds • More in sync with operations in bimodal apps • Stretch object, rotate, zoom, etc… • Pure latency not enough • Ample space for future work

  13. Frames Per Second • Non work-conserving (VNC): FPS = 2/latency • Local: FPS = n/latency • Work-conserving (X): FPS = n/(latency*k)

  14. VMGL: 3D Acceleration in VMs • OpenGL virtualization • Hardware specs closed, unavailable • Focus instead on software standards • OpenGL -> cross-platform • Direct3D -> MS-only • Intercept GL calls and forward them to the host. Proprietary driver renders there. • More details: VEE 2007

  15. Open GL for X11 Apps

  16. VMGL for X11 Apps

  17. bar.cmu.edu baz.europe.org WANDisk: Virtual Disk Chunk Table foo.toronto.edu ChunkMisses

  18. Why Another Storage System? • Exploits Snowbird characteristics • P2P model • No server interposition • Single-writer: simple metadata, no locks • Minimizes WAN talk • Locality: persistent replicas • Differential transfers: rsync • On-demand fetching

  19. Evaluation

  20. Benchmarks • Broad set of domains • Animation, Scientific Computing, Video Editing, Bio • Closed and open source • Straightforward installation • Able to use generic profile on all four • Partitioned mode for comparison • Adf & Maya QuakeViz Kmenc15 ADF (closed source) Maya (closed source)

  21. Methodology • Crunch + cognitive benchmarks • Performing “crunch” experiments is easy • Replaying long interactive traces is not • Can’t expect a user to do it • Must be able to compare results • VNC-Redux: record and replay interactive user sessions • Record input and screen state • This is matched during replay for accuracy

  22. Experimental Setup • Thick: No virtualization, on User Desktop • User Desktop: UP with graphics acceleration • Thin: No virtualization, on Compute Server • Compute Server: 4-way SMP • 100 Mbit/s WAN, RTT: 33, 66, and 100 ms • Partitioned • App-specific developer-brewed: Maya & ADF • Snowbird • Agents are initially launched on User Desktop

  23. Results: Crunch Phase Ouch! Snowbird’s crunch performance • Much better than thick • Comparable to thin/partitioned

  24. Results: Cognitive Phase • Better interactivity than thin clients • Is Snowbird any worse than a thick client? • > 20 FPS is ok, < 8 FPS is unusable

  25. Snowbird Limitations • Parallelism up to SMP level • What about cluster-scale? • SSE, 3DNow! • i.e. x86 is not that uniform • Overlapping phases • Hysteresis, priority in migration manager • Very short phases • Cost/benefit analysis

  26. Take Home Messages • Bimodal applications • What they are and why they matter • Thin clients are not almighty • There is no replacement for local interaction • Best of both worlds: thick and thin clients • Necessary in an Internet world with remote computing resources • VM-based app migration is feasible • And with many advantages • Future trends align well…

  27. Futurism • More bandwidth: cheaper VM migration • What about latency? • The earth is not shrinking • Speed of light is not increasing • More routers, overlays, firewalls • Europe: ~100ms (60ms speed-of-light) • Asia: ~200ms (90ms speed-of-light) • Insurmountable obstacle for thin clients

  28. Our Current Interests • VM support for large parallel tasks • Relevant to commodity computing • Migration, the cloud, etc… • How to measure interactive performance • Thin clients, desktop consolidation, VMs • Unknown effects for modern (3D-heavy) GUIs

  29. Questions? Thanks More details in Middleware 2007 H. Andrés Lagar-Cavilla andreslc@cs.toronto.edu Niraj Tolia, Eyal de Lara, Satya & Dave O’Hallaron U of Toronto, CMU

  30. Backup

  31. Frames Per Second • Non work-conserving: same latency, less frames • Local: FPS = frames/latency • Work-conserving: same frames, more latency

  32. Applicability of Snowbird • Morphing time: our implementation • Speedup: application & resources • C: Crunch phase time locally

  33. Keywords Of This Presentation • Thin clients • Remote execution • Interactive Performance • Thick clients • Virtual machine migration • Application migration • Bimodal applications • What they are and why they matter

  34. What We Need • System support for bimodal applications • Combine best of both worlds • Thick client, local execution • Interaction • Thin client, remote execution • Computation • Make development easy

  35. Results: Crunch Phase Snowbird’s crunch performance • Much better than thick • Comparable to thin/partitioned

More Related