The Role of Virtualization in Exascale Production Systems Jack Lange Assistant Professor University of Pittsburgh
Jan 29, 2016
The Role of Virtualization in Exascale Production Systems
Jack LangeAssistant Professor
University of Pittsburgh
Where are exascale OSes headed?• Linux is accepted on Petascale
– More than 80% of Top500– Significant push to run Linux on production systems
• Pros– Complex systems are easier to manage– Existing codebase– Familiar and portable environment
• Cons– Not as responsive to application requirements– Exascale is not a primary design goal
• Linux is great for Ops, but only OK for Apps
Lightweight Kernels (LWKs)• What do Apps need?
– Simple memory management with little to no overhead– Low noise characteristics– Ability to perform large “bulk” I/O– …
• Traditional strengths of Lightweight Kernel architectures– Application driven resource management
• Lightweight kernels still have utility– But probably not as the primary system OS– App selectable runtime environment
• Challenge– Can we provide a lightweight environment on a heavyweight OS?
Virtualization on Linux
• Bypass Linux management layers
• Palacios selectively takes over resource management– Memory, devices, CPUs– Repurpose existing mechanisms
• Allocate large chunks of resources and manage them internally
• Kernel module– Does not require kernel modifications – Implements lightweight interface– Compatible with CNL (~2.6.32)
Available in Palacios 1.3 (Nov. 2011)
Virtualized Dual Software Stack
Hardware
Palacios VMM
Lightweight Kernel
ManagementProcesses
+System Daemons
Linux Module Interface
Linux derived Compute Node
OS
HPC Application
Palacios ResourceManagers
• LWKs manage large resource allocations from VMM• Apps can choose which allocators/management layers to deploy on• LWKs can be co-designed with Apps and deployed on production systems
Performance isolationMemory Performance (GB/s)
Noise Comparison between native Linux and virtual LWK
Thank you
• Jack Lange– [email protected]– http://www.cs.pitt.edu/~jacklange
• V3Vee Project – http://www.v3vee.org