Download presentation
Presentation is loading. Please wait.
Published byGinger Gallagher Modified over 9 years ago
1
A down-to-earth look at the cloud host OS Malte SchwarzkopfSteven Hand
2
“The abstract accurately describes this paper! It is passionate and opinionated and full of sensibilities.” “[...] In this position paper, we make a passionate and necessarily opinionated argument [...]”
3
CO CONTROVERSIAL OPINIONS PROVOCATIVE, SPECULATIVE, OPINIONATED CONTENT
7
VMVM
8
VMVM
9
Hypervisor Linux kernel Processes “OS stuff“ interrupts, scheduling, preemption User space threads Language runtime LL threads User code Library code
10
Highly general Existing tools Familiar environment
11
[and yet, the programming models are often restrictive!] Layering Large base images Slow to spawn Booting... Death by generality
12
MapReduce FlumeJavaHivePig Job... Job ? All the other layers...
13
Experiment from D. Murray, A distributed execution engine supporting data-dependent control flow. PhD thesis, University of Cambridge, 2011.
14
What do we really need?
15
... “Magic box“ i.e. some algorithm... Input data objects Output data objects Batch
16
Serving Request handling logic
17
Back to the Eighties! Virtualize custom µVMs Hypervisor Legacy VM
18
Numbers and experiment by Sören Bleikertz: http://openfoo.org/blog/redis-native-xen.htmlhttp://openfoo.org/blog/redis-native-xen.html Redis example
19
Mantra: Make the OS do exactly (and just) what is needed.
20
ShellStandard libsFilesystem Multi-threading Locking Concurrency primitives Pre-emption Process mgmt I/O mgmt Isolation Resource multiplexing
21
Execution control Resource management Isolation Data access
22
Execution control Non-preemptive scheduling Dedicated cores Centralize I/O mgmt Statically link all user binaries
23
Resource Management & Isolation Principle of OS buffer mgmt: request/commit Request/commit interface Backpressure for fairness Embrace hardware heterogeneity
24
Resource Management & Isolation HyperthreadDifferent phys. core AMD Opteron 6168 Intel i7-2600K Different NUMA nodeSame NUMA node
25
Benchmark your HW heterogeneity Learn things about your architecture that you never knew! http://fable.io Ads by Google Cambridge Computer Lab
26
Data access “Data object“ abstraction Global, deterministic naming Transparent DO & buffer mgmt [N.B. binaries are just DOs, too!]
27
Output UUIDtask UUIDsequence num.versionInput UUID 0,1,...,N = Data access Capabilities Consistency levels
28
I hear your cries… “This is going to be a nightmare to program!“ “People should not need to know about OS-level stuff in order to program the cloud!“
29
Compiler support New, bespoke toolchain Simple interfaces “Everything is a task“
31
Take-away: How about we push the good things about MapReduce into the OS?
32
How about we restrict the OS to have simplicity and predictable performance? Take-away:
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.