SlideShare a Scribd company logo
1 of 29
Download to read offline
RT-Xen: Real-Time Virtualization 
Sisu Xi, Meng Xu, Chenyang Lu, Linh T.X. Phan, Christopher D. Gill, Insup Lee, Oleg Sokolsky
Real-Time Virtualization 
Cars: Consolidate ~100 ECUs -> ~10 multicore processors 
Infotainment on Linux or Android 
Safety-critical control on AUTOSAR 
Cloud Computing’s Killer App: Gaming [IEEE Spectrum] 
Need to compute and stream 30 to 50 frames per second 
1 
Applications must meet real-time performance constraints on virtualized platforms!
RT-Xen: Real-Time Virtualization 
Real-time hypervisor scheduling framework in Xen 
Implement a suite of real-time scheduling algorithms 
Based on compositional scheduling theory 
VMs specify resource interfaces 
Real-time guarantees to tasks in VMs 
Open source 
RT-Xen patch submitted 
https://sites.google.com/site/realtimexen/ 
2
Xen Virtualization Architecture 
Guest OS runs on VCPUs 
Hypervisor schedules VCPUs on PCPUs 
Credit scheduler 
[Weight, Cap] per VM 
Round robin 
3
RT-Xen Interface 
VM resource interface 
A set of VCPUs, each characterized by <period, budget> 
Optional: use cpumask to specify VCPU affinity with PCPUs 
Hide task-specific information 
Real-Time scheduling algorithms 
Ordering of VCPUs? Priority scheme 
Placement of VCPUs?Global vs. partition 
Resource isolation?Server mechanisms 
4
Real-Time Scheduling Policies 
Priority scheme 
Static priority: Deadline Monotonic (DM) 
Dynamic priority: Earliest Deadline First (EDF) 
Global scheduling 
Schedule VCPUs based on global information 
Allow VCPU migration across cores 
Flexible use of multiple cores 
Migration overhead and cache penalty 
Partitioned scheduling 
Assign and bind VCPUs to PCPUs 
Schedule VCPUs on each core independently 
May underutilize PCPUs 
No migration overhead or associated cache penalty 
5
Scheduling a VCPU as a Deferrable Server 
6 
time 
T1 (10, 3) 
T2 (10, 3) 
0 
5 
10 
15 
0 
5 
10 
15 
time 
Deferrable Server 
(5,3) 
Budget 
A VCPU receives budgetus of CPU resources every periodus 
Budget is replenished at every start of period 
VCPU consumes budget when running, suspends when no budget left 
Preserves budget when there is no task
RT-Xen Investigation Roadmap 
Single-coreRT-Xen 1.0 
Single-core enhancedRT-Xen 1.1 
Multi-coreRT-Xen 2.0 
7 
Global 
Scheduling 
Fixed Priority 
(DM) 
Partitioned Scheduling 
Dynamic Priority 
(EDF) 
Periodic 
Deferrable 
Periodic 
Deferrable 
Deferrable 
Periodic 
Deferrable 
Periodic 
Sporadic 
Polling 
Work Conserving Periodic 
Capacity Reclaiming Periodic 
gDM 
gEDF 
pEDF 
pDM
RT-Xen 2.0: Run Queues 
A run queue 
holds VCPUs that are runnable (have task to run) 
has two parts: VCPUs with budget and out of budget 
is sorted by priority (DM or EDF) within each part 
rt-global: all cores share one run queue with a spinlock 
rt-partition: one run queue per core 
Patches for more efficient implementation on the way! 
8 
RunQ 
VCPUs withbudget 
VCPUs out of budget 
Sorted by priority
Experimental Setup 
Hardware: Intel i7 processor, six cores running at 3.33 GHz 
Dedicate one PCPU to domain 0 
All guest VMs use the remaining cores 
Cache architecture 
Each core has dedicated L1 cache (32 KB) and L2 cache (256 KB) 
All six cores share L3 cache (12 MB) 
Inclusive L3 cache, all data in L2 cache must also be in L3 cache 
Software 
Xen 4.3 patched with RT-Xen 
Guest OS: Linux patched with LITMUSRT 
9
RT-Xen 2.0: Scheduling Overhead 
10 
rt-global has extra overhead due to global lock 
credit has high max overhead due to load balancing
RT-Xen 2.0: Credit Scheduler 
11 
credit missed deadline at 22% CPU capacity 
RT-Xen delivers real-time performance up to 78%
RT-Xen 2.0: Real-Time Performance 
12 
Global scheduling wins empirically! 
gEDF + deferrable server -> best real-time performance
Demo 
YouTube: “RT-Xen Demonstration” 
https://www.youtube.com/watch?v=wisxWn3mR5s 
13
Patch Status 
Patch RFC v1 & v2July 10th& July 29th 
gEDF + deferrable server 
cpupool support 
Patch RFC v3Expected on Aug 24th 
Scheduling trace support 
Performance improvement (splitting RunQ) 
Patch RFC v4Expected before Sep 10th 
Performance improvement 
•Timer based budget replenishment 
•Improve the timing resolution of budget 
14
Conclusion 
Diverse applications demand real-time virtualization 
Real-time virtualization in embedded area 
Cloud gaming 
RT-Xen provides real-time performance 
Efficient implementation of diverse real-time scheduling policies 
Leverage compositional scheduling theory -> analytical guarantee 
gEDF + deferrable server wins empirically 
15
Research Contributions 
RT-Xen 1.0:S. Xi, J. Wilson, C. Lu, and C.D. Gill, RT-Xen: Towards Real-Time Hypervisor Scheduling in Xen, ACM International 
Conferences on Embedded Software (EMSOFT) 2011 
RT-Xen 1.1: J. Lee, S. Xi, S. Chen, L.T.X. Phan, C. Gill, I. Lee, C. Lu and O. Sokolsky 
Realizing Compositional Scheduling through Virtualization, IEEE Real-Time and 
Embedded Technology and Applications Symposium (RTAS) 2012 
RT-Xen 2.0:S. Xi, M. Xu, C. Lu, L.T.X. Phan, C. Gill, I. Lee, and O. SokolskyReal-Time Multi-Core Virtual Machine Scheduling in Xen, ACM International 
Conferences on Embedded Software (EMSOFT) 2014 
RT-Xen 2.1 + RT-OpenStack: S. Xi, C. Li, C. Lu, C. Gill, M. Xu, L.T.X. Phan, C. Gill, I. Lee, and O. SokolskyRT-OpenStack: Co-Hosting RT VM with non RT VMs, in submission 
RTCA:S. Xi, C. Li, C. Lu, and C. GillPrioritizing Local Inter-Domain Communication in Xen, ACM/IEEE International 
Symposium on Quality of Service (IWQoS) 2013 
RT-Xen patch (gEDF with deferrable server) 
RT-Xen: Real-Time Virtualization in Xen, Xen Blog, 2013 
RT-Xen: Real-Time Virtualization in Xen, Xen Developer Summit, 2014 
16
Backup Slides 
17
RT-Xen 1.0 
18
Implementation –PCPU 19 
Budget 
XBudget 
Task 
RunQ 
RunQ 
XTask 
RdyQ 
RdyQ 
VCPU Position 
Three Queues within One Physical Core 
VCPU Params 
(period, budget, priority) 
IDLE 
Periodic 
0 
3 
IDLE
Server Design –Deferrable & Polling 
Servers (Period, Budget, Priority) 
S1 (5, 3) with Two Tasks 
T1 (10, 3 ) 
20 
T2 (10, 3 ) 
Time 
5 
0 
10 
15 
Budget in S1 
Actual Execution 
Deferrable Server 
Time 
5 
0 
10 
15 
3 
back-to-back 
Budget in S1 
Actual Execution 
Polling Server 
Time 
5 
0 
10 
15 
3 
1.Replenish? 
2.Budget but NO task?
Server Design –Periodic & Sporadic 
Servers (Period, Budget, Priority) 
S1 (5, 3) with Two Tasks 
T1 (10, 3 ) 
21 
T2 (10, 3 ) 
Time 
5 
0 
10 
15 
Budget in S1 
Actual Execution 
Sporadic Server 
Time 
5 
0 
10 
15 
3 
5 
+3 
5 
+3 
overhead ++ 
Budget in S1 
Actual Execution 
Periodic Server 
Time 
5 
0 
10 
15 
3 
theory favored 
1.Replenish? 
2.Budget but NO task? 
?
RT-Xen 2.0 
22
RT-Xen 2.0: Workload 
Periodic task sets: [period, execution time, deadline] 
CPU-intensive, independent tasks 
Randomly generate the task sets until a total task utilization, then distribute tasks to four VMs, and apply compositional scheduling theory to calculate each VM’s resource interface 
25 task sets per data point, measure fraction of schedulable tasksets 
23
RT-Xen 2.0: Context Saved 
8/20/2014 24 
Less than 1 us overhead for the spinlock
RT-Xen 2.0: Theory vs. Experiments 
25 
gEDF < pEDF theoretically due to pessimistic analysis 
gEDF > pEDF empirically, thanks to global scheduling
RT-Xen 2.0: Theory vs. Experiments 
8/20/2014 26 
gEDF > pEDF empirically, thanks to global scheduling 
gEDF < pEDF theoretically due to pessimistic analysis
RT-Xen 2.0: How about Cache? 
27 
Benefit of global scheduling dominate migration cost on a shared L3-cache platform.
RT-Xen 2.0: Context Switch 
8/20/2014 28 
“Fake” context switch with idle VCPUs

More Related Content

What's hot

XPDDS18: CPUFreq in Xen on ARM - Oleksandr Tyshchenko, EPAM Systems
XPDDS18: CPUFreq in Xen on ARM - Oleksandr Tyshchenko, EPAM SystemsXPDDS18: CPUFreq in Xen on ARM - Oleksandr Tyshchenko, EPAM Systems
XPDDS18: CPUFreq in Xen on ARM - Oleksandr Tyshchenko, EPAM SystemsThe Linux Foundation
 
LinuxCon Japan 13 : 10 years of Xen and Beyond
LinuxCon Japan 13 : 10 years of Xen and BeyondLinuxCon Japan 13 : 10 years of Xen and Beyond
LinuxCon Japan 13 : 10 years of Xen and BeyondThe Linux Foundation
 
LF Collaboration Summit: Xen Project 4 4 Features and Futures
LF Collaboration Summit: Xen Project 4 4 Features and FuturesLF Collaboration Summit: Xen Project 4 4 Features and Futures
LF Collaboration Summit: Xen Project 4 4 Features and FuturesThe Linux Foundation
 
XPDS16: Porting Xen on ARM to a new SOC - Julien Grall, ARM
XPDS16: Porting Xen on ARM to a new SOC - Julien Grall, ARMXPDS16: Porting Xen on ARM to a new SOC - Julien Grall, ARM
XPDS16: Porting Xen on ARM to a new SOC - Julien Grall, ARMThe Linux Foundation
 
XPDS14: Porting FreeRTOS to Xen on the ARM Cortex A15 - Jonathan Daugherty, G...
XPDS14: Porting FreeRTOS to Xen on the ARM Cortex A15 - Jonathan Daugherty, G...XPDS14: Porting FreeRTOS to Xen on the ARM Cortex A15 - Jonathan Daugherty, G...
XPDS14: Porting FreeRTOS to Xen on the ARM Cortex A15 - Jonathan Daugherty, G...The Linux Foundation
 
Rootlinux17: Hypervisors on ARM - Overview and Design Choices by Julien Grall...
Rootlinux17: Hypervisors on ARM - Overview and Design Choices by Julien Grall...Rootlinux17: Hypervisors on ARM - Overview and Design Choices by Julien Grall...
Rootlinux17: Hypervisors on ARM - Overview and Design Choices by Julien Grall...The Linux Foundation
 
ELC21: VM-to-VM Communication Mechanisms for Embedded
ELC21: VM-to-VM Communication Mechanisms for EmbeddedELC21: VM-to-VM Communication Mechanisms for Embedded
ELC21: VM-to-VM Communication Mechanisms for EmbeddedStefano Stabellini
 
XPDDS18: The Art of Virtualizing Cache Maintenance - Julien Grall, Arm
XPDDS18: The Art of Virtualizing Cache Maintenance - Julien Grall, ArmXPDDS18: The Art of Virtualizing Cache Maintenance - Julien Grall, Arm
XPDDS18: The Art of Virtualizing Cache Maintenance - Julien Grall, ArmThe Linux Foundation
 
XPDS13: HVM Dom0 - Any unmodified OS as Dom0 - Will Auld, Intel
XPDS13: HVM Dom0 - Any unmodified OS as Dom0 - Will Auld, IntelXPDS13: HVM Dom0 - Any unmodified OS as Dom0 - Will Auld, Intel
XPDS13: HVM Dom0 - Any unmodified OS as Dom0 - Will Auld, IntelThe Linux Foundation
 
BSDCan 2015: How to Port BSD as a Xen on ARM Guest
BSDCan 2015: How to Port BSD as a Xen on ARM GuestBSDCan 2015: How to Port BSD as a Xen on ARM Guest
BSDCan 2015: How to Port BSD as a Xen on ARM GuestThe Linux Foundation
 
XPDS14: Removing the Xen Linux Upstream Delta of Various Linux Distros - Luis...
XPDS14: Removing the Xen Linux Upstream Delta of Various Linux Distros - Luis...XPDS14: Removing the Xen Linux Upstream Delta of Various Linux Distros - Luis...
XPDS14: Removing the Xen Linux Upstream Delta of Various Linux Distros - Luis...The Linux Foundation
 
XPDDS18: Xenwatch Multithreading - Dongli Zhang, Oracle
XPDDS18: Xenwatch Multithreading - Dongli Zhang, OracleXPDDS18: Xenwatch Multithreading - Dongli Zhang, Oracle
XPDDS18: Xenwatch Multithreading - Dongli Zhang, OracleThe Linux Foundation
 
XPDDS18: Design and Implementation of Automotive: Virtualization Based on Xen...
XPDDS18: Design and Implementation of Automotive: Virtualization Based on Xen...XPDDS18: Design and Implementation of Automotive: Virtualization Based on Xen...
XPDDS18: Design and Implementation of Automotive: Virtualization Based on Xen...The Linux Foundation
 
XPDS16: Xenbedded: Xen-based client virtualization for phones and tablets - ...
XPDS16:  Xenbedded: Xen-based client virtualization for phones and tablets - ...XPDS16:  Xenbedded: Xen-based client virtualization for phones and tablets - ...
XPDS16: Xenbedded: Xen-based client virtualization for phones and tablets - ...The Linux Foundation
 
STATUS UPDATE OF COLO PROJECT XIAOWEI YANG, HUAWEI AND WILL AULD, INTEL
STATUS UPDATE OF COLO PROJECT XIAOWEI YANG, HUAWEI AND WILL AULD, INTELSTATUS UPDATE OF COLO PROJECT XIAOWEI YANG, HUAWEI AND WILL AULD, INTEL
STATUS UPDATE OF COLO PROJECT XIAOWEI YANG, HUAWEI AND WILL AULD, INTELThe Linux Foundation
 

What's hot (20)

XPDDS18: CPUFreq in Xen on ARM - Oleksandr Tyshchenko, EPAM Systems
XPDDS18: CPUFreq in Xen on ARM - Oleksandr Tyshchenko, EPAM SystemsXPDDS18: CPUFreq in Xen on ARM - Oleksandr Tyshchenko, EPAM Systems
XPDDS18: CPUFreq in Xen on ARM - Oleksandr Tyshchenko, EPAM Systems
 
LinuxCon Japan 13 : 10 years of Xen and Beyond
LinuxCon Japan 13 : 10 years of Xen and BeyondLinuxCon Japan 13 : 10 years of Xen and Beyond
LinuxCon Japan 13 : 10 years of Xen and Beyond
 
LF Collaboration Summit: Xen Project 4 4 Features and Futures
LF Collaboration Summit: Xen Project 4 4 Features and FuturesLF Collaboration Summit: Xen Project 4 4 Features and Futures
LF Collaboration Summit: Xen Project 4 4 Features and Futures
 
XPDS16: Porting Xen on ARM to a new SOC - Julien Grall, ARM
XPDS16: Porting Xen on ARM to a new SOC - Julien Grall, ARMXPDS16: Porting Xen on ARM to a new SOC - Julien Grall, ARM
XPDS16: Porting Xen on ARM to a new SOC - Julien Grall, ARM
 
XPDS14: Porting FreeRTOS to Xen on the ARM Cortex A15 - Jonathan Daugherty, G...
XPDS14: Porting FreeRTOS to Xen on the ARM Cortex A15 - Jonathan Daugherty, G...XPDS14: Porting FreeRTOS to Xen on the ARM Cortex A15 - Jonathan Daugherty, G...
XPDS14: Porting FreeRTOS to Xen on the ARM Cortex A15 - Jonathan Daugherty, G...
 
LFCollab14: Xen vs Xen Automotive
LFCollab14: Xen vs Xen AutomotiveLFCollab14: Xen vs Xen Automotive
LFCollab14: Xen vs Xen Automotive
 
Rootlinux17: Hypervisors on ARM - Overview and Design Choices by Julien Grall...
Rootlinux17: Hypervisors on ARM - Overview and Design Choices by Julien Grall...Rootlinux17: Hypervisors on ARM - Overview and Design Choices by Julien Grall...
Rootlinux17: Hypervisors on ARM - Overview and Design Choices by Julien Grall...
 
ELC21: VM-to-VM Communication Mechanisms for Embedded
ELC21: VM-to-VM Communication Mechanisms for EmbeddedELC21: VM-to-VM Communication Mechanisms for Embedded
ELC21: VM-to-VM Communication Mechanisms for Embedded
 
XPDDS18: The Art of Virtualizing Cache Maintenance - Julien Grall, Arm
XPDDS18: The Art of Virtualizing Cache Maintenance - Julien Grall, ArmXPDDS18: The Art of Virtualizing Cache Maintenance - Julien Grall, Arm
XPDDS18: The Art of Virtualizing Cache Maintenance - Julien Grall, Arm
 
XPDS13: HVM Dom0 - Any unmodified OS as Dom0 - Will Auld, Intel
XPDS13: HVM Dom0 - Any unmodified OS as Dom0 - Will Auld, IntelXPDS13: HVM Dom0 - Any unmodified OS as Dom0 - Will Auld, Intel
XPDS13: HVM Dom0 - Any unmodified OS as Dom0 - Will Auld, Intel
 
BSDCan 2015: How to Port BSD as a Xen on ARM Guest
BSDCan 2015: How to Port BSD as a Xen on ARM GuestBSDCan 2015: How to Port BSD as a Xen on ARM Guest
BSDCan 2015: How to Port BSD as a Xen on ARM Guest
 
XPDS16: Xen Development Update
XPDS16: Xen Development UpdateXPDS16: Xen Development Update
XPDS16: Xen Development Update
 
XS Boston 2008 XenLoop
XS Boston 2008 XenLoopXS Boston 2008 XenLoop
XS Boston 2008 XenLoop
 
XPDS14: Removing the Xen Linux Upstream Delta of Various Linux Distros - Luis...
XPDS14: Removing the Xen Linux Upstream Delta of Various Linux Distros - Luis...XPDS14: Removing the Xen Linux Upstream Delta of Various Linux Distros - Luis...
XPDS14: Removing the Xen Linux Upstream Delta of Various Linux Distros - Luis...
 
XPDDS18: Xenwatch Multithreading - Dongli Zhang, Oracle
XPDDS18: Xenwatch Multithreading - Dongli Zhang, OracleXPDDS18: Xenwatch Multithreading - Dongli Zhang, Oracle
XPDDS18: Xenwatch Multithreading - Dongli Zhang, Oracle
 
XPDDS18: Design and Implementation of Automotive: Virtualization Based on Xen...
XPDDS18: Design and Implementation of Automotive: Virtualization Based on Xen...XPDDS18: Design and Implementation of Automotive: Virtualization Based on Xen...
XPDDS18: Design and Implementation of Automotive: Virtualization Based on Xen...
 
LFCOLLAB15: Xen 4.5 and Beyond
LFCOLLAB15: Xen 4.5 and BeyondLFCOLLAB15: Xen 4.5 and Beyond
LFCOLLAB15: Xen 4.5 and Beyond
 
XPDS16: Xenbedded: Xen-based client virtualization for phones and tablets - ...
XPDS16:  Xenbedded: Xen-based client virtualization for phones and tablets - ...XPDS16:  Xenbedded: Xen-based client virtualization for phones and tablets - ...
XPDS16: Xenbedded: Xen-based client virtualization for phones and tablets - ...
 
STATUS UPDATE OF COLO PROJECT XIAOWEI YANG, HUAWEI AND WILL AULD, INTEL
STATUS UPDATE OF COLO PROJECT XIAOWEI YANG, HUAWEI AND WILL AULD, INTELSTATUS UPDATE OF COLO PROJECT XIAOWEI YANG, HUAWEI AND WILL AULD, INTEL
STATUS UPDATE OF COLO PROJECT XIAOWEI YANG, HUAWEI AND WILL AULD, INTEL
 
XS Boston 2008 Quantitative
XS Boston 2008 QuantitativeXS Boston 2008 Quantitative
XS Boston 2008 Quantitative
 

Similar to XPDS14 - RT-Xen: Real-Time Virtualization in Xen - Sisu Xi, Washington University

Evaluating the performance and behaviour of rt xen
Evaluating the performance and behaviour of rt xenEvaluating the performance and behaviour of rt xen
Evaluating the performance and behaviour of rt xenijesajournal
 
Evaluating the performance and behaviour of rt xen
Evaluating the performance and behaviour of rt xenEvaluating the performance and behaviour of rt xen
Evaluating the performance and behaviour of rt xenijesajournal
 
Q2.12: Research Update on big.LITTLE MP Scheduling
Q2.12: Research Update on big.LITTLE MP SchedulingQ2.12: Research Update on big.LITTLE MP Scheduling
Q2.12: Research Update on big.LITTLE MP SchedulingLinaro
 
Chapter 19 - Real Time Systems
Chapter 19 - Real Time SystemsChapter 19 - Real Time Systems
Chapter 19 - Real Time SystemsWayne Jones Jnr
 
Achieving Performance Isolation with Lightweight Co-Kernels
Achieving Performance Isolation with Lightweight Co-KernelsAchieving Performance Isolation with Lightweight Co-Kernels
Achieving Performance Isolation with Lightweight Co-KernelsJiannan Ouyang, PhD
 
One Day Version 10.3 Upgrade - How a Large Biotech Plant's DeltaV Systems Wer...
One Day Version 10.3 Upgrade - How a Large Biotech Plant's DeltaV Systems Wer...One Day Version 10.3 Upgrade - How a Large Biotech Plant's DeltaV Systems Wer...
One Day Version 10.3 Upgrade - How a Large Biotech Plant's DeltaV Systems Wer...Emerson Exchange
 
XPDDS18: Real Time in XEN on ARM - Andrii Anisov, EPAM Systems Inc.
XPDDS18: Real Time in XEN on ARM - Andrii Anisov, EPAM Systems Inc.XPDDS18: Real Time in XEN on ARM - Andrii Anisov, EPAM Systems Inc.
XPDDS18: Real Time in XEN on ARM - Andrii Anisov, EPAM Systems Inc.The Linux Foundation
 
CRIU: Time and Space Travel Service for Linux Applications
CRIU: Time and Space Travel Service for Linux ApplicationsCRIU: Time and Space Travel Service for Linux Applications
CRIU: Time and Space Travel Service for Linux ApplicationsOpenVZ
 
Virtual Network Functions as Real-Time Containers in Private Clouds
Virtual Network Functions as Real-Time Containers in Private CloudsVirtual Network Functions as Real-Time Containers in Private Clouds
Virtual Network Functions as Real-Time Containers in Private Cloudstcucinotta
 
Jacopo Nardiello - Monitoring Cloud-Native applications with Prometheus - Cod...
Jacopo Nardiello - Monitoring Cloud-Native applications with Prometheus - Cod...Jacopo Nardiello - Monitoring Cloud-Native applications with Prometheus - Cod...
Jacopo Nardiello - Monitoring Cloud-Native applications with Prometheus - Cod...Codemotion
 
RTOS Material hfffffffffffffffffffffffffffffffffffff
RTOS Material hfffffffffffffffffffffffffffffffffffffRTOS Material hfffffffffffffffffffffffffffffffffffff
RTOS Material hfffffffffffffffffffffffffffffffffffffadugnanegero
 
Cruz: Application-Transparent Distributed Checkpoint-Restart on Standard Oper...
Cruz:Application-Transparent Distributed Checkpoint-Restart on Standard Oper...Cruz:Application-Transparent Distributed Checkpoint-Restart on Standard Oper...
Cruz: Application-Transparent Distributed Checkpoint-Restart on Standard Oper...Mark J. Feldman
 
Kubernetes @ Squarespace (SRE Portland Meetup October 2017)
Kubernetes @ Squarespace (SRE Portland Meetup October 2017)Kubernetes @ Squarespace (SRE Portland Meetup October 2017)
Kubernetes @ Squarespace (SRE Portland Meetup October 2017)Kevin Lynch
 
High Performance Parallel Computing with Clouds and Cloud Technologies
High Performance Parallel Computing with Clouds and Cloud TechnologiesHigh Performance Parallel Computing with Clouds and Cloud Technologies
High Performance Parallel Computing with Clouds and Cloud Technologiesjaliyae
 
Playing BBR with a userspace network stack
Playing BBR with a userspace network stackPlaying BBR with a userspace network stack
Playing BBR with a userspace network stackHajime Tazaki
 
Baidu cloudfoundry english
Baidu cloudfoundry englishBaidu cloudfoundry english
Baidu cloudfoundry englishJames Watters
 

Similar to XPDS14 - RT-Xen: Real-Time Virtualization in Xen - Sisu Xi, Washington University (20)

Evaluating the performance and behaviour of rt xen
Evaluating the performance and behaviour of rt xenEvaluating the performance and behaviour of rt xen
Evaluating the performance and behaviour of rt xen
 
Evaluating the performance and behaviour of rt xen
Evaluating the performance and behaviour of rt xenEvaluating the performance and behaviour of rt xen
Evaluating the performance and behaviour of rt xen
 
Q2.12: Research Update on big.LITTLE MP Scheduling
Q2.12: Research Update on big.LITTLE MP SchedulingQ2.12: Research Update on big.LITTLE MP Scheduling
Q2.12: Research Update on big.LITTLE MP Scheduling
 
Chapter 19 - Real Time Systems
Chapter 19 - Real Time SystemsChapter 19 - Real Time Systems
Chapter 19 - Real Time Systems
 
Achieving Performance Isolation with Lightweight Co-Kernels
Achieving Performance Isolation with Lightweight Co-KernelsAchieving Performance Isolation with Lightweight Co-Kernels
Achieving Performance Isolation with Lightweight Co-Kernels
 
One Day Version 10.3 Upgrade - How a Large Biotech Plant's DeltaV Systems Wer...
One Day Version 10.3 Upgrade - How a Large Biotech Plant's DeltaV Systems Wer...One Day Version 10.3 Upgrade - How a Large Biotech Plant's DeltaV Systems Wer...
One Day Version 10.3 Upgrade - How a Large Biotech Plant's DeltaV Systems Wer...
 
XPDDS18: Real Time in XEN on ARM - Andrii Anisov, EPAM Systems Inc.
XPDDS18: Real Time in XEN on ARM - Andrii Anisov, EPAM Systems Inc.XPDDS18: Real Time in XEN on ARM - Andrii Anisov, EPAM Systems Inc.
XPDDS18: Real Time in XEN on ARM - Andrii Anisov, EPAM Systems Inc.
 
Making Linux do Hard Real-time
Making Linux do Hard Real-timeMaking Linux do Hard Real-time
Making Linux do Hard Real-time
 
CRIU: Time and Space Travel Service for Linux Applications
CRIU: Time and Space Travel Service for Linux ApplicationsCRIU: Time and Space Travel Service for Linux Applications
CRIU: Time and Space Travel Service for Linux Applications
 
Virtual Network Functions as Real-Time Containers in Private Clouds
Virtual Network Functions as Real-Time Containers in Private CloudsVirtual Network Functions as Real-Time Containers in Private Clouds
Virtual Network Functions as Real-Time Containers in Private Clouds
 
Real Time Support For Xen
Real Time Support For XenReal Time Support For Xen
Real Time Support For Xen
 
Jacopo Nardiello - Monitoring Cloud-Native applications with Prometheus - Cod...
Jacopo Nardiello - Monitoring Cloud-Native applications with Prometheus - Cod...Jacopo Nardiello - Monitoring Cloud-Native applications with Prometheus - Cod...
Jacopo Nardiello - Monitoring Cloud-Native applications with Prometheus - Cod...
 
RTOS Material hfffffffffffffffffffffffffffffffffffff
RTOS Material hfffffffffffffffffffffffffffffffffffffRTOS Material hfffffffffffffffffffffffffffffffffffff
RTOS Material hfffffffffffffffffffffffffffffffffffff
 
Cruz: Application-Transparent Distributed Checkpoint-Restart on Standard Oper...
Cruz:Application-Transparent Distributed Checkpoint-Restart on Standard Oper...Cruz:Application-Transparent Distributed Checkpoint-Restart on Standard Oper...
Cruz: Application-Transparent Distributed Checkpoint-Restart on Standard Oper...
 
Making Linux do Hard Real-time
Making Linux do Hard Real-timeMaking Linux do Hard Real-time
Making Linux do Hard Real-time
 
Python
PythonPython
Python
 
Kubernetes @ Squarespace (SRE Portland Meetup October 2017)
Kubernetes @ Squarespace (SRE Portland Meetup October 2017)Kubernetes @ Squarespace (SRE Portland Meetup October 2017)
Kubernetes @ Squarespace (SRE Portland Meetup October 2017)
 
High Performance Parallel Computing with Clouds and Cloud Technologies
High Performance Parallel Computing with Clouds and Cloud TechnologiesHigh Performance Parallel Computing with Clouds and Cloud Technologies
High Performance Parallel Computing with Clouds and Cloud Technologies
 
Playing BBR with a userspace network stack
Playing BBR with a userspace network stackPlaying BBR with a userspace network stack
Playing BBR with a userspace network stack
 
Baidu cloudfoundry english
Baidu cloudfoundry englishBaidu cloudfoundry english
Baidu cloudfoundry english
 

More from The Linux Foundation

ELC2019: Static Partitioning Made Simple
ELC2019: Static Partitioning Made SimpleELC2019: Static Partitioning Made Simple
ELC2019: Static Partitioning Made SimpleThe Linux Foundation
 
XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform ...
XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform ...XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform ...
XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform ...The Linux Foundation
 
XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...
XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...
XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...The Linux Foundation
 
XPDDS19 Keynote: Xen Project Weather Report 2019 - Lars Kurth, Director of Op...
XPDDS19 Keynote: Xen Project Weather Report 2019 - Lars Kurth, Director of Op...XPDDS19 Keynote: Xen Project Weather Report 2019 - Lars Kurth, Director of Op...
XPDDS19 Keynote: Xen Project Weather Report 2019 - Lars Kurth, Director of Op...The Linux Foundation
 
XPDDS19 Keynote: Unikraft Weather Report
XPDDS19 Keynote:  Unikraft Weather ReportXPDDS19 Keynote:  Unikraft Weather Report
XPDDS19 Keynote: Unikraft Weather ReportThe Linux Foundation
 
XPDDS19 Keynote: Secret-free Hypervisor: Now and Future - Wei Liu, Software E...
XPDDS19 Keynote: Secret-free Hypervisor: Now and Future - Wei Liu, Software E...XPDDS19 Keynote: Secret-free Hypervisor: Now and Future - Wei Liu, Software E...
XPDDS19 Keynote: Secret-free Hypervisor: Now and Future - Wei Liu, Software E...The Linux Foundation
 
XPDDS19 Keynote: Xen Dom0-less - Stefano Stabellini, Principal Engineer, Xilinx
XPDDS19 Keynote: Xen Dom0-less - Stefano Stabellini, Principal Engineer, XilinxXPDDS19 Keynote: Xen Dom0-less - Stefano Stabellini, Principal Engineer, Xilinx
XPDDS19 Keynote: Xen Dom0-less - Stefano Stabellini, Principal Engineer, XilinxThe Linux Foundation
 
XPDDS19 Keynote: Patch Review for Non-maintainers - George Dunlap, Citrix Sys...
XPDDS19 Keynote: Patch Review for Non-maintainers - George Dunlap, Citrix Sys...XPDDS19 Keynote: Patch Review for Non-maintainers - George Dunlap, Citrix Sys...
XPDDS19 Keynote: Patch Review for Non-maintainers - George Dunlap, Citrix Sys...The Linux Foundation
 
XPDDS19: Memories of a VM Funk - Mihai Donțu, Bitdefender
XPDDS19: Memories of a VM Funk - Mihai Donțu, BitdefenderXPDDS19: Memories of a VM Funk - Mihai Donțu, Bitdefender
XPDDS19: Memories of a VM Funk - Mihai Donțu, BitdefenderThe Linux Foundation
 
OSSJP/ALS19: The Road to Safety Certification: Overcoming Community Challeng...
OSSJP/ALS19:  The Road to Safety Certification: Overcoming Community Challeng...OSSJP/ALS19:  The Road to Safety Certification: Overcoming Community Challeng...
OSSJP/ALS19: The Road to Safety Certification: Overcoming Community Challeng...The Linux Foundation
 
OSSJP/ALS19: The Road to Safety Certification: How the Xen Project is Making...
 OSSJP/ALS19: The Road to Safety Certification: How the Xen Project is Making... OSSJP/ALS19: The Road to Safety Certification: How the Xen Project is Making...
OSSJP/ALS19: The Road to Safety Certification: How the Xen Project is Making...The Linux Foundation
 
XPDDS19: Speculative Sidechannels and Mitigations - Andrew Cooper, Citrix
XPDDS19: Speculative Sidechannels and Mitigations - Andrew Cooper, CitrixXPDDS19: Speculative Sidechannels and Mitigations - Andrew Cooper, Citrix
XPDDS19: Speculative Sidechannels and Mitigations - Andrew Cooper, CitrixThe Linux Foundation
 
XPDDS19: Keeping Coherency on Arm: Reborn - Julien Grall, Arm ltd
XPDDS19: Keeping Coherency on Arm: Reborn - Julien Grall, Arm ltdXPDDS19: Keeping Coherency on Arm: Reborn - Julien Grall, Arm ltd
XPDDS19: Keeping Coherency on Arm: Reborn - Julien Grall, Arm ltdThe Linux Foundation
 
XPDDS19: QEMU PV Backend 'qdevification'... What Does it Mean? - Paul Durrant...
XPDDS19: QEMU PV Backend 'qdevification'... What Does it Mean? - Paul Durrant...XPDDS19: QEMU PV Backend 'qdevification'... What Does it Mean? - Paul Durrant...
XPDDS19: QEMU PV Backend 'qdevification'... What Does it Mean? - Paul Durrant...The Linux Foundation
 
XPDDS19: Status of PCI Emulation in Xen - Roger Pau Monné, Citrix Systems R&D
XPDDS19: Status of PCI Emulation in Xen - Roger Pau Monné, Citrix Systems R&DXPDDS19: Status of PCI Emulation in Xen - Roger Pau Monné, Citrix Systems R&D
XPDDS19: Status of PCI Emulation in Xen - Roger Pau Monné, Citrix Systems R&DThe Linux Foundation
 
XPDDS19: [ARM] OP-TEE Mediator in Xen - Volodymyr Babchuk, EPAM Systems
XPDDS19: [ARM] OP-TEE Mediator in Xen - Volodymyr Babchuk, EPAM SystemsXPDDS19: [ARM] OP-TEE Mediator in Xen - Volodymyr Babchuk, EPAM Systems
XPDDS19: [ARM] OP-TEE Mediator in Xen - Volodymyr Babchuk, EPAM SystemsThe Linux Foundation
 
XPDDS19: Bringing Xen to the Masses: The Story of Building a Community-driven...
XPDDS19: Bringing Xen to the Masses: The Story of Building a Community-driven...XPDDS19: Bringing Xen to the Masses: The Story of Building a Community-driven...
XPDDS19: Bringing Xen to the Masses: The Story of Building a Community-driven...The Linux Foundation
 
XPDDS19: Will Robots Automate Your Job Away? Streamlining Xen Project Contrib...
XPDDS19: Will Robots Automate Your Job Away? Streamlining Xen Project Contrib...XPDDS19: Will Robots Automate Your Job Away? Streamlining Xen Project Contrib...
XPDDS19: Will Robots Automate Your Job Away? Streamlining Xen Project Contrib...The Linux Foundation
 
XPDDS19: Client Virtualization Toolstack in Go - Nick Rosbrook & Brendan Kerr...
XPDDS19: Client Virtualization Toolstack in Go - Nick Rosbrook & Brendan Kerr...XPDDS19: Client Virtualization Toolstack in Go - Nick Rosbrook & Brendan Kerr...
XPDDS19: Client Virtualization Toolstack in Go - Nick Rosbrook & Brendan Kerr...The Linux Foundation
 
XPDDS19: Core Scheduling in Xen - Jürgen Groß, SUSE
XPDDS19: Core Scheduling in Xen - Jürgen Groß, SUSEXPDDS19: Core Scheduling in Xen - Jürgen Groß, SUSE
XPDDS19: Core Scheduling in Xen - Jürgen Groß, SUSEThe Linux Foundation
 

More from The Linux Foundation (20)

ELC2019: Static Partitioning Made Simple
ELC2019: Static Partitioning Made SimpleELC2019: Static Partitioning Made Simple
ELC2019: Static Partitioning Made Simple
 
XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform ...
XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform ...XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform ...
XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform ...
 
XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...
XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...
XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...
 
XPDDS19 Keynote: Xen Project Weather Report 2019 - Lars Kurth, Director of Op...
XPDDS19 Keynote: Xen Project Weather Report 2019 - Lars Kurth, Director of Op...XPDDS19 Keynote: Xen Project Weather Report 2019 - Lars Kurth, Director of Op...
XPDDS19 Keynote: Xen Project Weather Report 2019 - Lars Kurth, Director of Op...
 
XPDDS19 Keynote: Unikraft Weather Report
XPDDS19 Keynote:  Unikraft Weather ReportXPDDS19 Keynote:  Unikraft Weather Report
XPDDS19 Keynote: Unikraft Weather Report
 
XPDDS19 Keynote: Secret-free Hypervisor: Now and Future - Wei Liu, Software E...
XPDDS19 Keynote: Secret-free Hypervisor: Now and Future - Wei Liu, Software E...XPDDS19 Keynote: Secret-free Hypervisor: Now and Future - Wei Liu, Software E...
XPDDS19 Keynote: Secret-free Hypervisor: Now and Future - Wei Liu, Software E...
 
XPDDS19 Keynote: Xen Dom0-less - Stefano Stabellini, Principal Engineer, Xilinx
XPDDS19 Keynote: Xen Dom0-less - Stefano Stabellini, Principal Engineer, XilinxXPDDS19 Keynote: Xen Dom0-less - Stefano Stabellini, Principal Engineer, Xilinx
XPDDS19 Keynote: Xen Dom0-less - Stefano Stabellini, Principal Engineer, Xilinx
 
XPDDS19 Keynote: Patch Review for Non-maintainers - George Dunlap, Citrix Sys...
XPDDS19 Keynote: Patch Review for Non-maintainers - George Dunlap, Citrix Sys...XPDDS19 Keynote: Patch Review for Non-maintainers - George Dunlap, Citrix Sys...
XPDDS19 Keynote: Patch Review for Non-maintainers - George Dunlap, Citrix Sys...
 
XPDDS19: Memories of a VM Funk - Mihai Donțu, Bitdefender
XPDDS19: Memories of a VM Funk - Mihai Donțu, BitdefenderXPDDS19: Memories of a VM Funk - Mihai Donțu, Bitdefender
XPDDS19: Memories of a VM Funk - Mihai Donțu, Bitdefender
 
OSSJP/ALS19: The Road to Safety Certification: Overcoming Community Challeng...
OSSJP/ALS19:  The Road to Safety Certification: Overcoming Community Challeng...OSSJP/ALS19:  The Road to Safety Certification: Overcoming Community Challeng...
OSSJP/ALS19: The Road to Safety Certification: Overcoming Community Challeng...
 
OSSJP/ALS19: The Road to Safety Certification: How the Xen Project is Making...
 OSSJP/ALS19: The Road to Safety Certification: How the Xen Project is Making... OSSJP/ALS19: The Road to Safety Certification: How the Xen Project is Making...
OSSJP/ALS19: The Road to Safety Certification: How the Xen Project is Making...
 
XPDDS19: Speculative Sidechannels and Mitigations - Andrew Cooper, Citrix
XPDDS19: Speculative Sidechannels and Mitigations - Andrew Cooper, CitrixXPDDS19: Speculative Sidechannels and Mitigations - Andrew Cooper, Citrix
XPDDS19: Speculative Sidechannels and Mitigations - Andrew Cooper, Citrix
 
XPDDS19: Keeping Coherency on Arm: Reborn - Julien Grall, Arm ltd
XPDDS19: Keeping Coherency on Arm: Reborn - Julien Grall, Arm ltdXPDDS19: Keeping Coherency on Arm: Reborn - Julien Grall, Arm ltd
XPDDS19: Keeping Coherency on Arm: Reborn - Julien Grall, Arm ltd
 
XPDDS19: QEMU PV Backend 'qdevification'... What Does it Mean? - Paul Durrant...
XPDDS19: QEMU PV Backend 'qdevification'... What Does it Mean? - Paul Durrant...XPDDS19: QEMU PV Backend 'qdevification'... What Does it Mean? - Paul Durrant...
XPDDS19: QEMU PV Backend 'qdevification'... What Does it Mean? - Paul Durrant...
 
XPDDS19: Status of PCI Emulation in Xen - Roger Pau Monné, Citrix Systems R&D
XPDDS19: Status of PCI Emulation in Xen - Roger Pau Monné, Citrix Systems R&DXPDDS19: Status of PCI Emulation in Xen - Roger Pau Monné, Citrix Systems R&D
XPDDS19: Status of PCI Emulation in Xen - Roger Pau Monné, Citrix Systems R&D
 
XPDDS19: [ARM] OP-TEE Mediator in Xen - Volodymyr Babchuk, EPAM Systems
XPDDS19: [ARM] OP-TEE Mediator in Xen - Volodymyr Babchuk, EPAM SystemsXPDDS19: [ARM] OP-TEE Mediator in Xen - Volodymyr Babchuk, EPAM Systems
XPDDS19: [ARM] OP-TEE Mediator in Xen - Volodymyr Babchuk, EPAM Systems
 
XPDDS19: Bringing Xen to the Masses: The Story of Building a Community-driven...
XPDDS19: Bringing Xen to the Masses: The Story of Building a Community-driven...XPDDS19: Bringing Xen to the Masses: The Story of Building a Community-driven...
XPDDS19: Bringing Xen to the Masses: The Story of Building a Community-driven...
 
XPDDS19: Will Robots Automate Your Job Away? Streamlining Xen Project Contrib...
XPDDS19: Will Robots Automate Your Job Away? Streamlining Xen Project Contrib...XPDDS19: Will Robots Automate Your Job Away? Streamlining Xen Project Contrib...
XPDDS19: Will Robots Automate Your Job Away? Streamlining Xen Project Contrib...
 
XPDDS19: Client Virtualization Toolstack in Go - Nick Rosbrook & Brendan Kerr...
XPDDS19: Client Virtualization Toolstack in Go - Nick Rosbrook & Brendan Kerr...XPDDS19: Client Virtualization Toolstack in Go - Nick Rosbrook & Brendan Kerr...
XPDDS19: Client Virtualization Toolstack in Go - Nick Rosbrook & Brendan Kerr...
 
XPDDS19: Core Scheduling in Xen - Jürgen Groß, SUSE
XPDDS19: Core Scheduling in Xen - Jürgen Groß, SUSEXPDDS19: Core Scheduling in Xen - Jürgen Groß, SUSE
XPDDS19: Core Scheduling in Xen - Jürgen Groß, SUSE
 

XPDS14 - RT-Xen: Real-Time Virtualization in Xen - Sisu Xi, Washington University

  • 1. RT-Xen: Real-Time Virtualization Sisu Xi, Meng Xu, Chenyang Lu, Linh T.X. Phan, Christopher D. Gill, Insup Lee, Oleg Sokolsky
  • 2. Real-Time Virtualization Cars: Consolidate ~100 ECUs -> ~10 multicore processors Infotainment on Linux or Android Safety-critical control on AUTOSAR Cloud Computing’s Killer App: Gaming [IEEE Spectrum] Need to compute and stream 30 to 50 frames per second 1 Applications must meet real-time performance constraints on virtualized platforms!
  • 3. RT-Xen: Real-Time Virtualization Real-time hypervisor scheduling framework in Xen Implement a suite of real-time scheduling algorithms Based on compositional scheduling theory VMs specify resource interfaces Real-time guarantees to tasks in VMs Open source RT-Xen patch submitted https://sites.google.com/site/realtimexen/ 2
  • 4. Xen Virtualization Architecture Guest OS runs on VCPUs Hypervisor schedules VCPUs on PCPUs Credit scheduler [Weight, Cap] per VM Round robin 3
  • 5. RT-Xen Interface VM resource interface A set of VCPUs, each characterized by <period, budget> Optional: use cpumask to specify VCPU affinity with PCPUs Hide task-specific information Real-Time scheduling algorithms Ordering of VCPUs? Priority scheme Placement of VCPUs?Global vs. partition Resource isolation?Server mechanisms 4
  • 6. Real-Time Scheduling Policies Priority scheme Static priority: Deadline Monotonic (DM) Dynamic priority: Earliest Deadline First (EDF) Global scheduling Schedule VCPUs based on global information Allow VCPU migration across cores Flexible use of multiple cores Migration overhead and cache penalty Partitioned scheduling Assign and bind VCPUs to PCPUs Schedule VCPUs on each core independently May underutilize PCPUs No migration overhead or associated cache penalty 5
  • 7. Scheduling a VCPU as a Deferrable Server 6 time T1 (10, 3) T2 (10, 3) 0 5 10 15 0 5 10 15 time Deferrable Server (5,3) Budget A VCPU receives budgetus of CPU resources every periodus Budget is replenished at every start of period VCPU consumes budget when running, suspends when no budget left Preserves budget when there is no task
  • 8. RT-Xen Investigation Roadmap Single-coreRT-Xen 1.0 Single-core enhancedRT-Xen 1.1 Multi-coreRT-Xen 2.0 7 Global Scheduling Fixed Priority (DM) Partitioned Scheduling Dynamic Priority (EDF) Periodic Deferrable Periodic Deferrable Deferrable Periodic Deferrable Periodic Sporadic Polling Work Conserving Periodic Capacity Reclaiming Periodic gDM gEDF pEDF pDM
  • 9. RT-Xen 2.0: Run Queues A run queue holds VCPUs that are runnable (have task to run) has two parts: VCPUs with budget and out of budget is sorted by priority (DM or EDF) within each part rt-global: all cores share one run queue with a spinlock rt-partition: one run queue per core Patches for more efficient implementation on the way! 8 RunQ VCPUs withbudget VCPUs out of budget Sorted by priority
  • 10. Experimental Setup Hardware: Intel i7 processor, six cores running at 3.33 GHz Dedicate one PCPU to domain 0 All guest VMs use the remaining cores Cache architecture Each core has dedicated L1 cache (32 KB) and L2 cache (256 KB) All six cores share L3 cache (12 MB) Inclusive L3 cache, all data in L2 cache must also be in L3 cache Software Xen 4.3 patched with RT-Xen Guest OS: Linux patched with LITMUSRT 9
  • 11. RT-Xen 2.0: Scheduling Overhead 10 rt-global has extra overhead due to global lock credit has high max overhead due to load balancing
  • 12. RT-Xen 2.0: Credit Scheduler 11 credit missed deadline at 22% CPU capacity RT-Xen delivers real-time performance up to 78%
  • 13. RT-Xen 2.0: Real-Time Performance 12 Global scheduling wins empirically! gEDF + deferrable server -> best real-time performance
  • 14. Demo YouTube: “RT-Xen Demonstration” https://www.youtube.com/watch?v=wisxWn3mR5s 13
  • 15. Patch Status Patch RFC v1 & v2July 10th& July 29th gEDF + deferrable server cpupool support Patch RFC v3Expected on Aug 24th Scheduling trace support Performance improvement (splitting RunQ) Patch RFC v4Expected before Sep 10th Performance improvement •Timer based budget replenishment •Improve the timing resolution of budget 14
  • 16. Conclusion Diverse applications demand real-time virtualization Real-time virtualization in embedded area Cloud gaming RT-Xen provides real-time performance Efficient implementation of diverse real-time scheduling policies Leverage compositional scheduling theory -> analytical guarantee gEDF + deferrable server wins empirically 15
  • 17. Research Contributions RT-Xen 1.0:S. Xi, J. Wilson, C. Lu, and C.D. Gill, RT-Xen: Towards Real-Time Hypervisor Scheduling in Xen, ACM International Conferences on Embedded Software (EMSOFT) 2011 RT-Xen 1.1: J. Lee, S. Xi, S. Chen, L.T.X. Phan, C. Gill, I. Lee, C. Lu and O. Sokolsky Realizing Compositional Scheduling through Virtualization, IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS) 2012 RT-Xen 2.0:S. Xi, M. Xu, C. Lu, L.T.X. Phan, C. Gill, I. Lee, and O. SokolskyReal-Time Multi-Core Virtual Machine Scheduling in Xen, ACM International Conferences on Embedded Software (EMSOFT) 2014 RT-Xen 2.1 + RT-OpenStack: S. Xi, C. Li, C. Lu, C. Gill, M. Xu, L.T.X. Phan, C. Gill, I. Lee, and O. SokolskyRT-OpenStack: Co-Hosting RT VM with non RT VMs, in submission RTCA:S. Xi, C. Li, C. Lu, and C. GillPrioritizing Local Inter-Domain Communication in Xen, ACM/IEEE International Symposium on Quality of Service (IWQoS) 2013 RT-Xen patch (gEDF with deferrable server) RT-Xen: Real-Time Virtualization in Xen, Xen Blog, 2013 RT-Xen: Real-Time Virtualization in Xen, Xen Developer Summit, 2014 16
  • 20. Implementation –PCPU 19 Budget XBudget Task RunQ RunQ XTask RdyQ RdyQ VCPU Position Three Queues within One Physical Core VCPU Params (period, budget, priority) IDLE Periodic 0 3 IDLE
  • 21. Server Design –Deferrable & Polling Servers (Period, Budget, Priority) S1 (5, 3) with Two Tasks T1 (10, 3 ) 20 T2 (10, 3 ) Time 5 0 10 15 Budget in S1 Actual Execution Deferrable Server Time 5 0 10 15 3 back-to-back Budget in S1 Actual Execution Polling Server Time 5 0 10 15 3 1.Replenish? 2.Budget but NO task?
  • 22. Server Design –Periodic & Sporadic Servers (Period, Budget, Priority) S1 (5, 3) with Two Tasks T1 (10, 3 ) 21 T2 (10, 3 ) Time 5 0 10 15 Budget in S1 Actual Execution Sporadic Server Time 5 0 10 15 3 5 +3 5 +3 overhead ++ Budget in S1 Actual Execution Periodic Server Time 5 0 10 15 3 theory favored 1.Replenish? 2.Budget but NO task? ?
  • 24. RT-Xen 2.0: Workload Periodic task sets: [period, execution time, deadline] CPU-intensive, independent tasks Randomly generate the task sets until a total task utilization, then distribute tasks to four VMs, and apply compositional scheduling theory to calculate each VM’s resource interface 25 task sets per data point, measure fraction of schedulable tasksets 23
  • 25. RT-Xen 2.0: Context Saved 8/20/2014 24 Less than 1 us overhead for the spinlock
  • 26. RT-Xen 2.0: Theory vs. Experiments 25 gEDF < pEDF theoretically due to pessimistic analysis gEDF > pEDF empirically, thanks to global scheduling
  • 27. RT-Xen 2.0: Theory vs. Experiments 8/20/2014 26 gEDF > pEDF empirically, thanks to global scheduling gEDF < pEDF theoretically due to pessimistic analysis
  • 28. RT-Xen 2.0: How about Cache? 27 Benefit of global scheduling dominate migration cost on a shared L3-cache platform.
  • 29. RT-Xen 2.0: Context Switch 8/20/2014 28 “Fake” context switch with idle VCPUs