snowbird interactive resource intensive applications made easy l.
Skip this Video
Loading SlideShow in 5 Seconds..
Snowbird: Interactive Resource-Intensive Applications Made Easy PowerPoint Presentation
Download Presentation
Snowbird: Interactive Resource-Intensive Applications Made Easy

Loading in 2 Seconds...

play fullscreen
1 / 35

Snowbird: Interactive Resource-Intensive Applications Made Easy - PowerPoint PPT Presentation

  • Uploaded on

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

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
snowbird interactive resource intensive applications made easy

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

bimodal applications
Bimodal Applications
  • Interactive
    • Cognitive phase
  • Resource-Intensive
    • Crunch phase
  • Digital Animation
  • Scientific Computing
  • Engineering Design
  • Bio/Pharma
  • Video Editing
  • ….


(digital animation)

different phases different needs
Different Phases, Different Needs
  • Crunch (computation)
    • Short completion time
    • Computing resources
  • Cognitive (interaction)
    • Crisp interactive performance
    • User attention
what to do
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
what to do5
What To Do?

A Systems Solution

With the best of both worlds

  • Have excellent interactive performance
  • Allow use of remote resources (CPU, Data)
snowbird agent abstraction
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
bimodal applications made easy
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
design criteria
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
  • 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
agent profiles migration manager


FPS < 20 && Input > 15

CPU > 95%




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
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
frames per second
Frames Per Second
  • Non work-conserving (VNC): FPS = 2/latency
  • Local: FPS = n/latency
  • Work-conserving (X): FPS = n/(latency*k)
vmgl 3d acceleration in vms
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
wandisk virtual disk

WANDisk: Virtual Disk




why another storage system
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
  • 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



ADF (closed source)

Maya (closed source)

  • 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
experimental setup
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
results crunch phase
Results: Crunch Phase


Snowbird’s crunch performance

  • Much better than thick
  • Comparable to thin/partitioned
results cognitive phase
Results: Cognitive Phase
  • Better interactivity than thin clients
  • Is Snowbird any worse than a thick client?
  • > 20 FPS is ok, < 8 FPS is unusable
snowbird limitations
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
take home messages
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…
  • 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
our current interests
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

Thanks More details in Middleware 2007

H. Andrés Lagar-Cavilla

Niraj Tolia, Eyal de Lara, Satya & Dave O’Hallaron

U of Toronto, CMU

frames per second31
Frames Per Second
  • Non work-conserving: same latency, less frames
  • Local: FPS = frames/latency
  • Work-conserving: same frames, more latency
applicability of snowbird
Applicability of Snowbird
  • Morphing time: our implementation
  • Speedup: application & resources
  • C: Crunch phase time locally
keywords of this presentation
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
what we need
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
results crunch phase35
Results: Crunch Phase

Snowbird’s crunch performance

  • Much better than thick
  • Comparable to thin/partitioned