dynamic processors demand dynamic operating systems
play

Dynamic Processors Demand Dynamic Operating Systems Sankaralingam - PowerPoint PPT Presentation

Dynamic Processors Demand Dynamic Operating Systems Sankaralingam Panneerselvam Michael M. Swift Computer Sciences Department University of Wisconsin, Madison, WI 1 HotPar 2010 Motivation Chip Multiprocessor Does not support well


  1. Dynamic Processors Demand Dynamic Operating Systems Sankaralingam Panneerselvam Michael M. Swift Computer Sciences Department University of Wisconsin, Madison, WI 1 HotPar 2010

  2. Motivation  Chip Multiprocessor  Does not support well for sequential workloads 250 Possible Configurations 200 System with up Speedup symmetric to 256 cores 150 100 50 0 256 128 64 32 16 8 4 2 1 Number of effective cores “ Amdahls law in the multicore era” [IEEE computer, July 2008] 2 HotPar 2010

  3. Motivation  Asymmetric Chip Multiprocessor  To satisfy diverse workloads 250 200 System with up Speedup asymmetric to 256 cores 150 100 50 0 256 255 253 249 241 225 193 129 1 Number of effective cores “ Amdahls law in the multicore era” [IEEE computer, July 2008] 3 HotPar 2010

  4. Motivation  Dynamic Multiprocessor  Flexible to cast to the right configuration based on the need 250 200 System with up Speedup Dynamic to 256 cores 150 100 50 0 1 2 4 8 16 32 64 128 256 Number of elementary cores that gets configured dynamically to make a powerful core “ Amdahls law in the multicore era” [IEEE computer, July 2008] 4 HotPar 2010

  5. Examples of Dynamic Multiprocessors Core Fusion Intel Turbo Boost [ISCA’07] [Nehalem] 5 HotPar 2010

  6. Motivation  Many mechanisms lead to dynamically variable processors  Performance  Merging resources: Core Fusion, Speculative Multithreading  Shifting power: Turbo Boost, Over-provisioned systems  Reliability  Redundant execution [ISCA’07] 6 HotPar 2010

  7. Why reconfigure the OS?  What happens if a processor goes to offline state without any notification?  Servicing of interrupts, IPI, Bottom halves is stopped  Other processors might wait for spinlock  RCU stall  Thread execution is stopped 7 HotPar 2010

  8. Can the OS adapt to changing processors ?  Common theme: the number of physical execution contexts may change dynamically and frequently  Our work:  Analysis of Linux mechanisms for changing processors  Two new techniques for dynamically varying processors  Processor Proxies  Deferred/Parallel Hotplug 8 HotPar 2010

  9. Outline  Motivation  Current Mechanisms  Processor Proxies  Deferred/Parallel hotplug 9 HotPar 2010

  10. Why is changing processors hard?  Many pieces of code know which processors are available  Scheduler  Per-CPU structures  Distributed operations require processors to communicate  Communication between processors - IPI  Read Copy Update (RCU) mechanism 10 HotPar 2010

  11. CPU dependence in Linux  Analysis of Linux 2.6.31-4 kernel on a 4 CPU machine Number of per-CPU data 446 data structures structures Number of callbacks when CPU 35 callbacks set changes Frequency of global RCU 90 callbacks/second operations  Inference: CPU dependences are widespread 11 HotPar 2010

  12. Current solution: Linux Hotplug  Hotplug allows dynamic addition/removal of a processor  Partitioning/virtualization  Physical repair  Used for long-term reconfigurations  Assumes that processors, once off lined, never comes online  Notifies all relevant subsystems, creates/deletes all per-CPU state 12 HotPar 2010

  13. CPU 3 going down 1 3 4 2 Time CPU_DOWN_PREPARE take_cpu_down - disables interrupt - remove cpu from NOP NOP NOP cpu_online_mask loop loop loop CPU_DYING -schedule idle thread on this cpu CPU_DEAD CPU_POST_DEAD 13 HotPar 2010

  14. Hotplug performance Hotplug Cores Latency Operations (msec) 1 25 OFFLINE 2 60 3 137 1 106 ONLINE 2 214 3 331  Good for virtualization but too slow for rapid reconfiguration 14 HotPar 2010

  15. Outline  Motivation  Current Mechanisms  Processor Proxies  Deferred/Parallel hotplug 15 HotPar 2010

  16. Our approach Strategy  Do very little for short-term changes  Do long-term changes off line, asynchronously and  in parallel Solutions  Processor proxies address short-term  reconfiguration Deferred and Parallel hotplug reduces the  frequency and latency of long-term reconfiguration 16 HotPar 2010

  17. Processor Proxies  A processor proxy is a fill-in for offline processor  Provides separate execution context on the proxying CPU called the proxy context  Participates in operations that requires the offline processor:  Servicing Inter Processor Interrupts (IPI)  Ensuring progress in RCU mechanism  Does not execute threads 17 HotPar 2010

  18. CPU B CPU A Proxy Native context context Interrupt/Bottom halves servicing B is offline and A is proxying for B Interrupts destined to CPU A Interrupts destined to CPU B 18 HotPar 2010

  19. Processor Proxy Evaluation Result  Offline / Online performance compared to native Hotplug Cores Native Proxy Operations (msec) (msec) 1 25 1.7 OFFLINE 2 60 4 3 137 6.5 1 106 1.2 ONLINE 2 214 2.8 3 331 6 19 HotPar 2010

  20. Deferred and Parallel Hotplug  Processor proxies are not a long term solution  Threads don’t run on a proxy  If the reconfiguration is long lasting, move to a stable state  Solutions:  Deferred hotplug: remove a CPU that is currently proxied  Parallel hotplug: reconfigure multiple CPUs simultaneously 20 HotPar 2010

  21. Evaluation Results Hotplug Cores Native Parallel Operations (msec) (msec) 1 25 25 OFFLINE 2 60 60 3 137 130 1 106 106 ONLINE 2 214 111 3 331 131  Performance of CPU online is greatly improved  Major time spent in initialization for CPU online  Initialization can happen in parallel 21 HotPar 2010

  22. Conclusions  Dynamic reconfiguration  Operating systems are not prepared  Hotplug mechanisms is too slow  Low latency solutions  Processor Proxies  Deferred and Parallel hotplug  Future work  Resource management 22 HotPar 2010

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend