Title: Inuit: a System for Waste Free Computing
1Inuit a System for Waste Free Computing
- Stefan Savage
- Michael Frederick, Diwaker Gupta, Marvin McNett,
Alex Snoeren, Amin Vahdat, Geoff Voelker,
Michael Vrable, Ken Yocum - University of California, San Diego
- MSR Cambridge Colloquium, 10/27/2005
2First a warning
gt From Stefan Savage mailtosavage_at_cs.ucsd.edu
gt Sent 03 August 2005 0937 gt To Rebecca
Isaacs gt Cc jon.crowcroft_at_cl.cam.ac.uk
mvrable_at_cs.ucsd.edu gt Subject RE Invitation -
Cambridge Systems Colloquium 27 Oct gt If you'd
like to get a talk out of me I can certainly do
one, but I'm gt not sure the talks I have on tap
will be a perfect fit for the topics gt below
(unless you're amenable to a wildly gesticulating
rant)
gt From Rebecca Isaacs mailtorisaacs_at_microsoft.c
om gt Sent Friday, September 16, 2005 1153 AM gt
To Stefan Savage gt Cc jon.crowcroft_at_cl.cam.ac.uk
gt Subject RE Invitation - Cambridge Systems
Colloquium 27 Oct gt Hi Stefan, gt Actually wild
gesticulations could be quite entertaining...
- Thus, this talk is wild speculation
- I am unconstrained by
- thinking my ideas through
- evaluating if they might be practical
- or, any real experience with the problem domain
3 American Culture
- The US has developed, by far, the most
consumption-oriented, wasteful culture in the
history of mankind - 400 million tons of waste/year (almost 25 of
world) - 100 quads energy/year (almost 30 of world usage)
4Inuit Culture
- Indigenous people of North America and Eastern
Russia - Subsistence hunters -gt Bowhead Whale
- Nothing is wasted for to waste would be
disrespectful to the whale Abvibich lglaunifat
Niginmun - Meat -gt protein
- Jaw bones -gt sled runners
- Ribs -gt Fences and arrow points
- Shoulder blades -gt housing structures
- Baleen -gt Rope and baskets
- Lungs/Liver -gt Drums
- Blubber -gt Oil lamps
5Modern computing is very American
- Most of the time they do nothing of value
- void cpu_idle (void) (200 Trillion BTUs?)
- Yet, we keep buying more (250M last year!)
- And, we throw out the old ones (150M last year)
- Bottom line computers are treated as disposable
items to be acquired to excess, lightly used and
then discarded
6A Case StudySystems Computing at UCSD
- 100 servers
- 2-5 Trillion Instructions per Second
- 150GB memory
- 22kW power consumption (peak)
- 100kBTU/hr heat load (peak)
- We have 30 students sharing these machines
- The waste paradox
- Students insist that resources are scarce and we
need to buy more machines - They cant get machines when they need them, and
- They cant run the large-scale experiments they
want - Yet. resource utilization is ltlt 5
7Why is this?
- We all like the abstraction of a machine as a
unit of computing allocation - This is deep in the DNA of the PC computing model
- Provides isolation (software, performance)
- Our direct implementation of this abstraction is
where we get into trouble - High preemption cost -gt long term allocation
- Get off my machines you _at_-head
- Poor resource sharing
- Your disk storage is not unique Bolosky et al
- Your memory is not unique
- Your computing is not unique
8The Inuit system
- Unit of allocation is the machine cluster (can be
1 machine) - Implementation via virtual machines (modified
Xen) - Key idea Try to eliminate all unintended
resource redundancy - Extreme multiplexing
- Storage sharing
- System continuations
- Maximize cluster-level parallelism
- Aggressive migration
- Place to maximize resource utilization (sharing
AND use) - Cluster activations
- Allow cluster applications to adapt to changes in
resource availability - Potemkin Xenoservers Parallax The
Collective GMS Single Instance Store
Pastiche Rx Transparent Result Caching
judicious amounts of grad student effort
9Extreme multiplexing
- Share storage between similar VMs
- CoW memory/disk (ala Potemkin)
- Discover newly shared data (ala ESX server)
- Throw away idle storage remotely available
- Allows 10s or 100s of VMs per physical machine
- Many VMs -gt likely that a VM is available when
CPU goes idle - System continuations share execution traces
across similar VMs - Pre-cache state changes from common (input, CFG)
blocks - Roll-forward VMs to cached result state (opposite
of ReVirt) - Note leverage controlled non-determinism (Rx) -gt
Plausibility is sufficient
10Aggressive migration
- Cluster similar VMs on the same physical
machines - To maximize cheap sharing opportunities
- Migrate VM/storage to maximize global utilization
- Balance CPU/memory load
- E.g., Large working set VMs can disrupt
multiplexing - Migrate VM away, or migrate memory away (depends
on workload)
11Cluster activations
- For those who need multiple simultaneous machines
(virtual clusters) - Gang scheduling of VC VMs
- Can specify hard/soft resource requirements
- Violate utilization maximization for hard
requirements - Application notification on soft resource
violation - Provide feedback about resources backing VMs
12Where does this make sense?
- Obvious places
- UCSD
- Datacenters
- The Grid
- Application servers
- Less obvious
- Desktops
- Huh?
13Inuit on the desktop?
- Two opportunities
- VMs make Networks of Workstations palatable
- Idle CPU/Memory up for grabs
- Manageability
- Encapsulating desktop in VM makes deployment easy
- Checkpoint/restore of whole system image
- Cheap migration of whole workstation (Internet
Suspend/Resume/Collective)
14Where are we now?
- At the social engineering stage
- Get everyone to eat the dog food and fix problems
until its at least as good as what we had - Almost all of our servers now run Xen by default
- Students forced to use Xen as their only
environment - Lots of support infrastructure
- Address allocation/routing DNS (IP addresses
DNS names correspond to VMs not PMs) - Control interface (which images onto which VMs,
VM auth,etc) - Half-done with virtual reboot/tty interface
- Work to improve Potemkin stability/overhead
- The rest is a hand wave
15Questions