Bolt : Faster Reconfiguration in Operating Systems Sankaralingam Panneerselvam Michael M. Swift Nam Sung Kim University of Wisconsin, Madison, WI ATC 2015.

Slides:



Advertisements
Similar presentations
Slide 19-1 Copyright © 2004 Pearson Education, Inc. Operating Systems: A Modern Perspective, Chapter 19.
Advertisements

Threads, SMP, and Microkernels
Multiprocessors— Large vs. Small Scale Multiprocessors— Large vs. Small Scale.
WHAT IS AN OPERATING SYSTEM? An interface between users and hardware - an environment "architecture ” Allows convenient usage; hides the tedious stuff.
© 2003 IBM Corporation IBM Systems and Technology Group Operating System Attributes for High Performance Computing Ken Rozendal Distinguished Engineer.
Threads, SMP, and Microkernels Chapter 4. Process Resource ownership - process is allocated a virtual address space to hold the process image Scheduling/execution-
Chapter 4 Threads, SMP, and Microkernels Patricia Roy Manatee Community College, Venice, FL ©2008, Prentice Hall Operating Systems: Internals and Design.
Project Overview 2014/05/05 1. Current Project “Research on Embedded Hypervisor Scheduler Techniques” ◦ Design an energy-efficient scheduling mechanism.
Computer Systems/Operating Systems - Class 8
Silberschatz, Galvin and Gagne ©2013 Operating System Concepts Essentials – 2 nd Edition Chapter 4: Threads.
1: Operating Systems Overview
Active Messages: a Mechanism for Integrated Communication and Computation von Eicken et. al. Brian Kazian CS258 Spring 2008.
Chapter 11 Operating Systems
1 I/O Management in Representative Operating Systems.
The Design of Robust and Efficient Microkernel ManRiX, The Design of Robust and Efficient Microkernel Presented by: Manish Regmi
Router Architectures An overview of router architectures.
Chapter 51 Threads Chapter 5. 2 Process Characteristics  Concept of Process has two facets.  A Process is: A Unit of resource ownership:  a virtual.
14.1 Silberschatz, Galvin and Gagne ©2009 Operating System Concepts with Java – 8 th Edition Chapter 4: Threads.
Chapter 18 Multicore Computers
Virtualization Technology Prof D M Dhamdhere CSE Department IIT Bombay Moving towards Virtualization… Department of Computer Science and Engineering, IIT.
Operating Systems Should Manage Accelerators Sankaralingam Panneerselvam Michael M. Swift Computer Sciences Department University of Wisconsin, Madison,
Computer System Architectures Computer System Software
1 Fault Tolerance in the Nonstop Cyclone System By Scott Chan Robert Jardine Presented by Phuc Nguyen.
LOGO OPERATING SYSTEM Dalia AL-Dabbagh
 What is an operating system? What is an operating system?  Where does the OS fit in? Where does the OS fit in?  Services provided by an OS Services.
Operating System Review September 10, 2012Introduction to Computer Security ©2004 Matt Bishop Slide #1-1.
Benefits: Increased server utilization Reduced IT TCO Improved IT agility.
Chapter 4 Threads, SMP, and Microkernels Patricia Roy Manatee Community College, Venice, FL ©2008, Prentice Hall Operating Systems: Internals and Design.
张俊 BTLab Embedded Virtualization Group Outline  Introduction  Performance Analysis  PerformanceTuning Methods.
Lecture 3 Process Concepts. What is a Process? A process is the dynamic execution context of an executing program. Several processes may run concurrently,
CS533 Concepts of Operating Systems Jonathan Walpole.
CS 346 – Chapter 4 Threads –How they differ from processes –Definition, purpose Threads of the same process share: code, data, open files –Types –Support.
Operating Systems CSE 411 Multi-processor Operating Systems Multi-processor Operating Systems Dec Lecture 30 Instructor: Bhuvan Urgaonkar.
1 Computation Spreading: Employing Hardware Migration to Specialize CMP Cores On-the-fly Koushik Chakraborty Philip Wells Gurindar Sohi
Presented By, Bhargavi Konduru.  Nowadays, most electronic appliances have computing capabilities that run on embedded operating system (OS) kernels,
Multithreaded Programing. Outline Overview of threads Threads Multithreaded Models  Many-to-One  One-to-One  Many-to-Many Thread Libraries  Pthread.
System Components ● There are three main protected modules of the System  The Hardware Abstraction Layer ● A virtual machine to configure all devices.
THAWAN KOOBURAT MICHAEL SWIFT UNIVERSITY OF WISCONSIN - MADISON 1 The Best of Both Worlds with On-Demand Virtualization.
Shouqing Hao Institute of Computing Technology, Chinese Academy of Sciences Processes Scheduling on Heterogeneous Multi-core Architecture.
Managing Processors Jeff Chase Duke University. The story so far: protected CPU mode user mode kernel mode kernel “top half” kernel “bottom half” (interrupt.
Operating Systems Unit 2: – Process Context switch Interrupt Interprocess communication – Thread Thread models Operating Systems.
UDI Technology Benefits Slide 1 Uniform Driver Interface UDI Technology Benefits.
Background Computer System Architectures Computer System Software.
Interrupts and Interrupt Handling David Ferry, Chris Gill CSE 522S - Advanced Operating Systems Washington University in St. Louis St. Louis, MO
Interrupt Handler Migration and Direct Interrupt Scheduling for Rapid Scheduling of Interrupt-driven Tasks Reviewer: Kim, Hyukjoong ESLab.
Introduction to Exceptions 1 Introduction to Exceptions ARM Advanced RISC Machines.
Threads, SMP, and Microkernels Chapter 4. Processes and Threads Operating systems use processes for two purposes - Resource allocation and resource ownership.
Linux Kernel Development Chapter 8. Kernel Synchronization Introduction Geum-Seo Koo Fri. Operating System Lab.
Contents 1.Overview 2.Multithreading Model 3.Thread Libraries 4.Threading Issues 5.Operating-system Example 2 OS Lab Sun Suk Kim.
Cofax Scalability Document Version Scaling Cofax in General The scalability of Cofax is directly related to the system software, hardware and network.
NFV Compute Acceleration APIs and Evaluation
Operating System & Application Software
REAL-TIME OPERATING SYSTEMS
Chapter 4: Threads.
The Multikernel: A New OS Architecture for Scalable Multicore Systems
Chapter 5: Threads Overview Multithreading Models Threading Issues
Chapter 4: Multithreaded Programming
Intro to Processes CSSE 332 Operating Systems
Virtual Machines.
Interrupts and Interrupt Handling
Chapter 3: Windows7 Part 1.
Threads, SMP, and Microkernels
KISS-Tree: Smart Latch-Free In-Memory Indexing on Modern Architectures
Threads Chapter 4.
Top Half / Bottom Half Processing
Chapter 4: Threads.
Interrupts and Interrupt Handling
Chapter 13: I/O Systems.
Chapter 13: I/O Systems “The two main jobs of a computer are I/O and [CPU] processing. In many cases, the main job is I/O, and the [CPU] processing is.
Presentation transcript:

Bolt : Faster Reconfiguration in Operating Systems Sankaralingam Panneerselvam Michael M. Swift Nam Sung Kim University of Wisconsin, Madison, WI ATC 2015

2 Contents Introduction Motivation Bolt Evaluation

3 Introduction OS Os used a fixed set of CPU, Processor, resources Dynamic reconfiguration is current computing landscape Benefits of Processor Reconfiguration Disaggregated Server Architectures Energy SavingsPerformance Inflation

4 Introduction Support for Reconfiguration Hotplug mechanism in Linux Designed as a - Reliability mechanism to remove faulty cores - Testing mechanism to vary number of cores Latency in the order of tens or hundreds of milliseconds in current Linux Bolt Faster reconfiguration method 20x faster than Hotplug

5 Motivation Process scaling Changed core set dynamically Energy proportionality - Amount of work is determined energy consumption - Low and sleep state is for energy consumption Heterogeneity - Heterogeneity is supported many processors - Os can reconfiguration processor considered applications characteristic VM Scaling - Calculated VM core in Virtual machine - IBM support DLPAR can add and remove Virtural core with interface

6 Motivation Hot plug Os subsystems subscribe for CPU reconfiguration events Notifications sent during reconfiguration event - Addition-Online/Removal-Offline - Thread migration - Watchdog enable/disable Drawback - Hotplug event can be prevented by disabling preemption or interrupts on any CPU - Another machine or core can be stoped by Hot plug during setting new a set of cores - Synchorous all time

7 Bolt Based on Hotplug but can be used as a replacement Classify subsystems notification handler into - Critical : Need to be executed immediately for correctness(E.g. Migrating threads) - Non-Critical : Immediate action is not necessary (E.g. Freeing a memory structure) Critical session - Critical operations are handled synchronously CategoryExamples State Migration Threads in runqueue, softirqs in per-cpu queue Hardware Management Microcode update, updating MTRR registers Bitmask updates Global structures like cpu_online_mask Re-organization Scheduler domain structures

8 Bolt Non-Critical operations Almost 30 out of 50 callbacks were identified as non-critical operations Bolt removes them from critical path but retaining the interface CategoryHow handled? Software structuresMemory cleanup deferred to a master thread Sysfs file access is checked during open Thread operationsParking/Unparking made asynchronous Thread re-use without destroying them

9 Bolt Bulk Interface Bulk interface support to allow scaling multiple CPUs API can add or remove a index of single CPU In Bolt Aggregation : avoid redundant execution Parallel Execution : Dying message is handled in parallel by all cores in cpu mask

10 Bolt

11 Evaluation Enviroment X86 : 4-core Intel i5-2500k(sandbridge) ARM : big.LITTLE Exynos 5410(odroid development board) Experiments : Latency measured for Hotplug operations

12 Evaluation Synchrous of bitmask Parking thread End to end latency

13 Evaluation

14 Evaluation

15 Conclusion Hotplug is currently used as a reconfiguration mechanism Bolt reduces reconfiguration latency by separating critical from non- critical operations Bolt’s principles can be applied to any reconfiguration mechanism