Embedded System Lab. 김해천 Decoupling Cores, Kernels, and Operating Systems Gerd Zellweger,...
-
Upload
chastity-fox -
Category
Documents
-
view
229 -
download
0
description
Transcript of Embedded System Lab. 김해천 Decoupling Cores, Kernels, and Operating Systems Gerd Zellweger,...
Embedded System Lab.
Embedded System Lab.
Decoupling Cores, Ker-nels, and Operating Sys-
temsGerd Zellweger, Simon Gerber, Kornilios Kourtis, and Timothy Roscoe, ETH
Zürichhttps://www.usenix.org/conference/osdi14/technical-sessions/presentation/
zellweger
김 해 천
Embedded System Lab.
Outline Motivation
Trends in hardware and software Design
Decoupling the kernel state Booting and shutting down cores dynamically
Evaluation Kernel updates, specialized kernels
김 해 천
Embedded System Lab.
What’s happening to hardware Core counts are increasing
Dark silicon Constrained by power consumption
Reconfigurable cores (dynamically changed behavior) DVFS, Turbo Boost Core fusion
Heterogeneous cores Fast and power hungry vs. slow and power efficient Asymmetric multiprocessing
김 해 천
Embedded System Lab.
What’s happening to software Modifying, upgrading, patching, or replacing OS kernels at runtime
K42 – dynamic kernel update Ksplice – binary patching of linux kernels without reboot Dtrace – modify the kernel at run time
CPU Hotplug
Multikernels
김 해 천
Embedded System Lab.
Barrelfish/DC Design Booting a new core
boot driver manages a “target core” and encapsulates the hardware func-tionality to boot, suspend, resume, and power-down
boot driver abstraction treats CPU cores much like peripheral devices only involves two processes: the boot driver, the kernel on the target core
No global lock or other synchronization
Home core
Boot driver
kernel
cpu
kernel
김 해 천
Embedded System Lab.
Barrelfish/DC Design Shutting down a core
Highly scalable, only two cores involved
cpu cpu cpu
kernel kernel kernel
cpu
kernel
OSNode
OSNode
OSNode
OSNode
Applica-tion
Application Applica-tion
김 해 천
Embedded System Lab.
Barrelfish/DC Design Shutting down a core
Highly scalable, only two cores involved
cpu cpu cpu
kernel kernel kernel
OSNode
OSNode
O.N
Applica-tion
Application
Applica-tion
O.N
ParkingOSNode
OSNodescheduler
김 해 천
Embedded System Lab.
Barrelfish/DC Design Decoupling Cores, Kernels and Operating Systems
cpu
kernel
OSNode
cpu
kernel
OSNode
김 해 천
Embedded System Lab.
Barrelfish/DC Design Decoupling Cores, Kernels and Operating Systems
cpu
kernel
cpu
kernel
OSNode
OSNode
OSNode
OSNode
kernel
김 해 천
Embedded System Lab.
Evaluation Performance of core management operation
Adding and removing cores in the system
김 해 천
Embedded System Lab.
Evaluation PostgreSQL & TPC-H
Kernel Updates Shut-down target core Reboot core with a new kernel image Dispatch previous OSNode
김 해 천
Embedded System Lab.
Evaluation Specialized kernels
Shut-down target core Temporarily park the target OSNode Boot simple real-time kernel that runs Just one application
Dose not take interrupts No timers No scheduler
Temporarily provides task with hard real time gurantees
김 해 천
Embedded System Lab.
http://www.barrelfish.org/zellweger-decoupling-cores.pdf https://www.usenix.org/conference/osdi14/technical-sessions/presen-
tation/zellweger