Linux Emulation: Ron Minnich
Linux Emulation: Ron Minnich
Linux emulation
Ron Minnich
Fifth IWP9
With thanks to Jim McKie
Outline
7 Conclusions
The Top 10
1 Jaguar - Cray XT5-HE Opteron Six Core
2.6 GHz
2 Nebulae - Dawning TC3600 Blade, Intel
X5650, NVidia Tesla C2050 GPU
3 Roadrunner - BladeCenter QS22/LS21
Cluster, PowerXCell 8i 3.2 Ghz / Opteron
DC 1.8 GHz, Voltaire Infiniband\
4 Kraken XT5 - Cray XT5-HE Opteron Six
Core 2.6 GHz
5 JUGENE - Blue Gene/P Solution
6 Pleiades - SGI Altix ICE 8200EX/8400EX,
Xeon HT QC 3.0/Xeon Westmere 2.93
Ghz, Infiniband
7 Tianhe-1 - NUDT TH-1 Cluster, Xeon
E5540/E5450, ATI Radeon HD 4870 2,
Infiniband
8 BlueGene/L - eServer Blue Gene Solution
9 Intrepid - Blue Gene/P Solution
10 Red Sky - Sun Blade x6275, Xeon X55xx
2.93 Ghz, Infiniband
Ron Minnich Linux emulation
A quick overview of the Top 10 landscape
Our part in the landscape
The kernel part was the easy part
How we can run CNK binaries
Let’s go look at code
Let’s go look at machcnk
Conclusions
Background
16 man weeks
How much assembly in Plan 9 kernel?
1033 lines
How many files in Plan 9 BG/L kernel? –
About 90, including auto-generated by
config
18 are platform-specific – – Of which we
had to modify about 10
Plan 9 (an OS) is smaller than every MPI
library
BG/P effort was similar
You can see all our code:
http://bitbucket.org/ericvh/hare
Stack
Heap
Data
1M boundary Code
Base at 16 MB
Plan 9 Stack
Stack
Heap
Data
1M boundary Code
Dead Zone
Plan 9 heap
Plan 9 Data
Plan 9 Code
Trapping in kernel
Conclusions