Embedded System Lab. 김해천 Decoupling Cores, Kernels, and Operating Systems Gerd Zellweger,...

13
Embedded System Lab. Embedded System Lab. 김김김 [email protected] Decoupling Cores, Kernels, and Operating Systems Gerd Zellweger, Simon Gerber, Kornilios Kourtis, and Timothy Roscoe, ETH Zürich https://www.usenix.org/conference/osdi14/technical-sessions/ presentation/zellweger

description

김 해 천김 해 천 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

Transcript of Embedded System Lab. 김해천 Decoupling Cores, Kernels, and Operating Systems Gerd Zellweger,...

Page 1: Embedded System Lab. 김해천 Decoupling Cores, Kernels, and Operating Systems Gerd Zellweger, Simon Gerber, Kornilios Kourtis, and Timothy.

Embedded System Lab.

Embedded System Lab.

김해천[email protected]

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

Page 2: Embedded System Lab. 김해천 Decoupling Cores, Kernels, and Operating Systems Gerd Zellweger, Simon Gerber, Kornilios Kourtis, and Timothy.

김 해 천

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

Page 3: Embedded System Lab. 김해천 Decoupling Cores, Kernels, and Operating Systems Gerd Zellweger, Simon Gerber, Kornilios Kourtis, and Timothy.

김 해 천

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

Page 4: Embedded System Lab. 김해천 Decoupling Cores, Kernels, and Operating Systems Gerd Zellweger, Simon Gerber, Kornilios Kourtis, and Timothy.

김 해 천

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

Page 5: Embedded System Lab. 김해천 Decoupling Cores, Kernels, and Operating Systems Gerd Zellweger, Simon Gerber, Kornilios Kourtis, and Timothy.

김 해 천

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

Page 6: Embedded System Lab. 김해천 Decoupling Cores, Kernels, and Operating Systems Gerd Zellweger, Simon Gerber, Kornilios Kourtis, and Timothy.

김 해 천

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

Page 7: Embedded System Lab. 김해천 Decoupling Cores, Kernels, and Operating Systems Gerd Zellweger, Simon Gerber, Kornilios Kourtis, and Timothy.

김 해 천

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

Page 8: Embedded System Lab. 김해천 Decoupling Cores, Kernels, and Operating Systems Gerd Zellweger, Simon Gerber, Kornilios Kourtis, and Timothy.

김 해 천

Embedded System Lab.

Barrelfish/DC Design Decoupling Cores, Kernels and Operating Systems

cpu

kernel

OSNode

cpu

kernel

OSNode

Page 9: Embedded System Lab. 김해천 Decoupling Cores, Kernels, and Operating Systems Gerd Zellweger, Simon Gerber, Kornilios Kourtis, and Timothy.

김 해 천

Embedded System Lab.

Barrelfish/DC Design Decoupling Cores, Kernels and Operating Systems

cpu

kernel

cpu

kernel

OSNode

OSNode

OSNode

OSNode

kernel

Page 10: Embedded System Lab. 김해천 Decoupling Cores, Kernels, and Operating Systems Gerd Zellweger, Simon Gerber, Kornilios Kourtis, and Timothy.

김 해 천

Embedded System Lab.

Evaluation Performance of core management operation

Adding and removing cores in the system

Page 11: Embedded System Lab. 김해천 Decoupling Cores, Kernels, and Operating Systems Gerd Zellweger, Simon Gerber, Kornilios Kourtis, and Timothy.

김 해 천

Embedded System Lab.

Evaluation PostgreSQL & TPC-H

Kernel Updates Shut-down target core Reboot core with a new kernel image Dispatch previous OSNode

Page 12: Embedded System Lab. 김해천 Decoupling Cores, Kernels, and Operating Systems Gerd Zellweger, Simon Gerber, Kornilios Kourtis, and Timothy.

김 해 천

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

Page 13: Embedded System Lab. 김해천 Decoupling Cores, Kernels, and Operating Systems Gerd Zellweger, Simon Gerber, Kornilios Kourtis, and Timothy.

김 해 천

Embedded System Lab.

http://www.barrelfish.org/zellweger-decoupling-cores.pdf https://www.usenix.org/conference/osdi14/technical-sessions/presen-

tation/zellweger