LCA14-104: GTS- A solution to support ARM s big.little technology. Mon-3-Mar, 11:15am, Mathieu Poirier
|
|
- Rolf Sparks
- 6 years ago
- Views:
Transcription
1 LCA14-104: GTS- A solution to support ARM s big.little technology Mon-3-Mar, 11:15am, Mathieu Poirier
2 Today s Presentation: Things to know about Global Task Scheduling (GTS). MP patchset description and how the solution works. Configuration parameters at various levels. Continuous integration at Linaro.
3 Other Presentations on GTS: This presentation is the lighter version of two presentation Linaro has on GTS. The other runs for about 75 minutes and goes much deeper in the solution. If you are interested in the in-depth version please contact Joe Bates:
4 What is the MP Patchset? A set of patches enacting Global Task Scheduling(GTS). Developed by ARM Ltd. GTS modifies the Linux scheduler in order to place tasks on the best possible CPU. Advantages: Take full advantage of the asynchronous nature of b.l architecture. Maximum performance Minimum power consumption Better benchmark scores for thread-intensive benchmarks. Increased responsiveness by spinning off new tasks on big CPUs. Decreases power consumption, specifically with small-task packing.
5 Where to get it In a tarball from the release page: Always look for the latest vexpress-lsk release on release.linaro.org - ex. for January: February should look like: In the Linaro Stable Kernel:
6 Where to get it (continued) In the ARM big LITTLE MP tree: ** Linaro doesn t rebase the MP patchset on other kernels than the Linaro Stable Kernel.
7 MP Patchset Description General Overview: The Linux kernel builds a hierarchy of scheduling domains at boot time. The order is (Linux convention): Sibling (for Hyperthreading) MC - multi-core CPU - between clusters NUMA To understand how the kernel does this: Enable CONFIG_SCHED_DEBUG and set sched_debug=1 on the kernel cmd line In a pure SMP context load balancing is done by spreading tasks evenly among all processors. Maximisation of CPU resources Run-to-completion model
8 Domain Load Balancing - no GTS CFS (CPU level) CPU0 CPU1 CPU4 CPU3 CFS (MC level) CFS (MC level) CPU2 CFS (CPU level) Vexpress (A7x3 + A15x2)
9 How MP Works Classic load balancing between CPU domains (i.e big and LITTLE) is disabled. A derivative of Paul Turner s load_avg_contrib metric is used to decide if a task should be moved to another HMP domain. Paul s work: Migration of tasks among the CPU domains is done by comparing their loads with migration thresholds. By default, all new user tasks are placed on the big cluster.
10 Domain Load Balancing - with GTS CFS (CPU level) CPU0 CPU1 GTS CPU4 CPU3 CFS (MC level) CFS (MC level) CPU2 CFS (CPU level) Vexpress (A7x3 + A15x2)
11 Load Average Contribution and Decay Plotting of the runnable_avg_sum metric introduced by Paul Turner
12 Per Entity Load Tracking Paul Turner introduced the load average contribution metric in his work on per-entity load tracking: load_avg_contrib = task->weight * runnable_average where runnable_average is: runnable_average = runnable_avg_sum / runnable_avg_period runnable_avg_sum and runnable_avg_period are geometric series. load_avg_contrib is good for scheduling decisions but bad for task migration i.e, weight scaling doesn t reflect the true time spent by a task in the runnable state.
13 Load Average Ratio The MP patchset introduces the load average ratio: load_avg_ratio = NICE_0_LOAD * runnable_average The load average ratio allows for the comparison of tasks without their weight factor, giving the same perspective for all of them. At migration time the load average ratio is compared against two thresholds: hmp_up_threashold hmp_down_threashold
14 UP and Down Migration thresholds * Source: ARM Ltd. A task s load is compared to the up and down migration threshold during the MP domain balancing process.
15 What We ve Learned So Far The Linux scheduler will separate CPUs into domains. Tasks are spread out among the domains as equally as possible. For GTS load balancing at the CPU domain level is disabled. GTS will move tasks between CPU domains using a derivative of the load average contribution and a couple of thresholds. But when is GTS moving tasks between the CPU domains?
16 Task Migration Points 4 task migration points: When tasks are created (fork migration). At wakeup time (wakeup migration). With every scheduler tick (forced migration). When a CPU is about to become idle (idle pull).
17 Fork Migration When tasks are created (fork migration): Done by setting the task s load statistics to their maximum value. Tasks are placed on big CPUs unless they are: Kernel Threads Forked from init i.e, Android services. Android apps are forked from Zygote, hence go on big CPUs. Tasks are eventually migrated down if they aren t heavy enough.
18 Wakeup Migration At wakeup time (wakeup migration): When a task is to be placed on a CPU, the scheduler will normally prefer: The previous CPU the task ran on Or one in the same package. For GTS, the decision is based on the load a task had before it was suspended: if load(task) > hmp_up_threshold, select more potent HMP domain if load(task) < hmp_down_threshold, select less powerful HMP domain What happened in the past is likely to happen again.
19 Forced Migration With every scheduler tick (forced migration): Every CPU in the system has a scheduler tick. With each tick (minimum interval of 1 jiffies) a CPU s runqueue is rebalanced if event due. Each time the load balancer runs, the MP code will inspect the runqueue of all CPUs in the system: If LITTLE CPU can a task be moved to big cluster? if ((big CPU ) && (CPU overloaded)) offload lightest task. When offloading, always select an idle CPU to ensure CPU availability for the task. So that tasks can be migrated as quickly as possible as domains can stay balanced for a long time.
20 Idle Pull When a CPU is about to become idle(idle pull): When a CPU is about to go idle the scheduler will attempt to pull tasks away from other CPUs in the same domain. Happens only if the CPU average idle time is more than the estimated migration cost. Balancing within a domain is left to normal scheduler operation. If the scheduler didn t find any task to pull and CPU is in big cluster: Go through the runqueues of all online CPUs in the LITTLE cluster. If a task s load is above threshold, move it to a CPU in the big cluster. When moving a task, always look for the least loaded CPU.
21 MP Migration Types * Source: ARM Ltd.
22 Small Task Packing Scheduler will try to fit as many small task on a single CPU as possible. A small task is =< 90% of NICE_0_LOAD, i,e 921 Done on the LITTLE cluster only to make sure tasks on the big cluster have all the CPU time they need. Takes place when a task is waking up: Using the tracked load of CPU runqueues and tasks. Saturation threshold to make sure tasks offloaded from the big domain can keep being serviced. Effects of enabling small task packing: CPU operating point may increase CPUfreq governor will kick in. Wakeup latency of task may increase more tasks to run.
23 Key Things to Remember Load balancing at the CPU domain level is disabled to favour the GTS scheme. GTS works by comparing a task s runnable load ratio and migrating it to a different HMP domain if need be. There are 4 migration points: At creation time. At wakeup time. Every rebalance. When a CPU is about to become idle. Small task packing when CPU gating is possible.
24 One Last Remark GTS doesn t hotplug CPUs and is not concerned at all with hotplugging When hotplugging: It takes too long to bring a CPU in and out of service All smpboot threads need to be stopped. stop_machine threads suspend interrupts on all online CPUs. IRQs on the swapped CPU are diverted to another CPU. All processes in swapped CPU s runqueue are migrated. CPU is taken out of coherency. More CPUs means longer hotplug time per CPU. Very expensive to make a CPU coherent with the domain hierarchy again. The system needs intelligence to determine when CPUs will be swapped in and out.
25 GTS Tuning The GTS solution itself has a number of parameters that can be tuned. Examples: From /sys/kernel/hmp: up_threshold, down_threshold for task migration limits load_avg_period_ms and frequency_invariant_load_scale From the code: runqueue saturation when doing small task packing Amount of task on a runqueue to search when force migrating between domains
26 CPUFreq Governor Tuning Linaro and ARM have been using the interactive governor in their testing of the solution. Any governor can be used. b.l CPUfreq driver makes the architecture seamless to the governor. Example of interactive governor tuneables: hispeed_freq and go_hispeed_load target_loads timer_rate and min_sample_time above_hispeed_delay Governors will have tuneable parameters. Regardless of the governor used, there are parameters to adjust in order to yield the right behavior Default values are usually not what you want
27 MP Testing at Linaro As Linaro assimilate MP patches in the LSK, continuous integration testing is done daily to catch possible regressions. We run bbench with an audio track in the background good average test case. exercises both big and LITTLE clusters All automated in our LAVA environment and results verified each day. Full WA regression tests with each monthly release. TC2 is the only b.l platform being tested at Linaro - we d welcome other platforms.
28 Question and Acknowledgements Special thanks to: Chris Redpath (ARM) Robin Randhawa (ARM) Vincent Guittot (Linaro)
29 More about Linaro Connect: More about Linaro: More about Linaro engineering: Linaro members:
Power Management for Embedded Systems
Power Management for Embedded Systems Minsoo Ryu Hanyang University Why Power Management? Battery-operated devices Smartphones, digital cameras, and laptops use batteries Power savings and battery run
More informationPOWER MANAGEMENT AND ENERGY EFFICIENCY
POWER MANAGEMENT AND ENERGY EFFICIENCY * Adopted Power Management for Embedded Systems, Minsoo Ryu 2017 Operating Systems Design Euiseong Seo (euiseong@skku.edu) Need for Power Management Power consumption
More informationARM Vision for Thermal Management and Energy Aware Scheduling on Linux
ARM Vision for Management and Energy Aware Scheduling on Linux Charles Garcia-Tobin, Software Power Architect, ARM Thomas Molgaard, Director of Product Management, ARM ARM Tech Symposia China 2015 November
More informationTowards Power Management for FreeBSD
Towards Power Management for FreeBSD Robin Randhawa robin.randhawa@arm.com FreeBSD Developer Summit Computer Laboratory University of Cambridge August 2015 Agenda An overview of Energy Aware Scheduling
More informationò mm_struct represents an address space in kernel ò task represents a thread in the kernel ò A task points to 0 or 1 mm_structs
Last time We went through the high-level theory of scheduling algorithms Scheduling Today: View into how Linux makes its scheduling decisions Don Porter CSE 306 Lecture goals Understand low-level building
More informationScheduling. Don Porter CSE 306
Scheduling Don Porter CSE 306 Last time ò We went through the high-level theory of scheduling algorithms ò Today: View into how Linux makes its scheduling decisions Lecture goals ò Understand low-level
More informationEECS 750: Advanced Operating Systems. 01/29 /2014 Heechul Yun
EECS 750: Advanced Operating Systems 01/29 /2014 Heechul Yun 1 Administrative Next summary assignment Resource Containers: A New Facility for Resource Management in Server Systems, OSDI 99 due by 11:59
More informationò Paper reading assigned for next Tuesday ò Understand low-level building blocks of a scheduler User Kernel ò Understand competing policy goals
Housekeeping Paper reading assigned for next Tuesday Scheduling Don Porter CSE 506 Memory Management Logical Diagram Binary Memory Formats Allocators Threads Today s Lecture Switching System to CPU Calls
More informationA Study on C-group controlled big.little Architecture
A Study on C-group controlled big.little Architecture Renesas Electronics Corporation New Solutions Platform Business Division Renesas Solutions Corporation Advanced Software Platform Development Department
More informationMediaTek CorePilot. Heterogeneous Multi-Processing Technology. Delivering extreme compute performance with maximum power efficiency
MediaTek CorePilot Heterogeneous Multi-Processing Technology Delivering extreme compute performance with maximum power efficiency In July 2013, MediaTek delivered the industry s first mobile system on
More informationEnabling Arm DynamIQ support. Dan Handley (Arm) Ionela Voinescu (Arm) Vincent Guittot (Linaro)
Enabling Arm DynamIQ support Dan Handley (Arm) Ionela Voinescu (Arm) Vincent Guittot (Linaro) Agenda DynamIQ introduction DynamIQ and Arm Trusted Firmware OS Power Management with DynamIQ L3 partial power-down
More informationIntelligent Power Allocation for Consumer & Embedded Thermal Control
Intelligent Power Allocation for Consumer & Embedded Thermal Control Ian Rickards ARM Ltd, Cambridge UK ELC San Diego 5-April-2016 Existing Linux Thermal Framework Trip1 Trip0 Thermal trip mechanism using
More information238P: Operating Systems. Lecture 14: Process scheduling
238P: Operating Systems Lecture 14: Process scheduling This lecture is heavily based on the material developed by Don Porter Anton Burtsev November, 2017 Cooperative vs preemptive What is cooperative multitasking?
More informationHow to get realistic C-states latency and residency? Vincent Guittot
How to get realistic C-states latency and residency? Vincent Guittot Agenda Overview Exit latency Enter latency Residency Conclusion Overview Overview PMWG uses hikey960 for testing our dev on b/l system
More informationSoC Idling & CPU Cluster PM
SoC Idling & CPU Cluster PM Presented by Ulf Hansson Lina Iyer Kevin Hilman Date BKK16-410 March 10, 2016 Event Linaro Connect BKK16 SoC Idling & CPU Cluster PM Idle management of devices via runtime PM
More information<Insert Picture Here> Boost Linux Performance with Enhancements from Oracle
Boost Linux Performance with Enhancements from Oracle Chris Mason Director of Linux Kernel Engineering Linux Performance on Large Systems Exadata Hardware How large systems are different
More informationKEYNOTE FOR
THE OS SCHEDULER: A PERFORMANCE-CRITICAL COMPONENT IN LINUX CLUSTER ENVIRONMENTS KEYNOTE FOR BPOE-9 @ASPLOS2018 THE NINTH WORKSHOP ON BIG DATA BENCHMARKS, PERFORMANCE, OPTIMIZATION AND EMERGING HARDWARE
More informationLinux Plumber Conference Scheduler micro-conf
Linux Plumber Conference 2012 Scheduler micro-conf Topics How to keep CPU quiescent? Sharing information with other frameworks Tasks placement for asymmetric system RT scheduler
More informationCS 326: Operating Systems. CPU Scheduling. Lecture 6
CS 326: Operating Systems CPU Scheduling Lecture 6 Today s Schedule Agenda? Context Switches and Interrupts Basic Scheduling Algorithms Scheduling with I/O Symmetric multiprocessing 2/7/18 CS 326: Operating
More informationARM big.little Technology Unleashed An Improved User Experience Delivered
ARM big.little Technology Unleashed An Improved User Experience Delivered Govind Wathan Product Specialist Cortex -A Mobile & Consumer CPU Products 1 Agenda Introduction to big.little Technology Benefits
More informationKernel Korner What's New in the 2.6 Scheduler
Kernel Korner What's New in the 2.6 Scheduler When large SMP systems started spending more time scheduling processes than running them, it was time for a change. by Rick Lindsley As work began on the 2.5
More informationWho stole my CPU? Leonid Podolny Vineeth Remanan Pillai. Systems DigitalOcean
Who stole my CPU? Leonid Podolny Vineeth Remanan Pillai leonid@ vineeth@ Systems Engineering @ DigitalOcean 1 2 Introduction DigitalOcean Providing developers and businesses a reliable, easy-to-use cloud
More informationA Lightweight Pseudo CPU Hotplug Mechanism for Mobile Devices
2016 10th International Conference on Next Generation Mobile Applications, Security and Technologies A Lightweight Pseudo CPU Hotplug Mechanism for Mobile Devices Kyoung Don Jang, Dong Hyun Kang, Do Hyoung
More informationLoad Balancing. Minsoo Ryu. Department of Computer Science and Engineering. Hanyang University. Real-Time Computing and Communications Lab.
Load Balancing Minsoo Ryu Department of Computer Science and Engineering 2 1 Concepts of Load Balancing Page X 2 Load Balancing Algorithms Page X 3 Overhead of Load Balancing Page X 4 Load Balancing in
More informationOperating Systems Design 25. Power Management. Paul Krzyzanowski
Operating Systems Design 25. Power Management Paul Krzyzanowski pxk@cs.rutgers.edu 1 Power Management Goal: Improve the battery life of mobile devices 2 CPU Voltage & Frequency Scaling Dynamic CPU Frequency
More informationPOWER-AWARE SOFTWARE ON ARM. Paul Fox
POWER-AWARE SOFTWARE ON ARM Paul Fox OUTLINE MOTIVATION LINUX POWER MANAGEMENT INTERFACES A UNIFIED POWER MANAGEMENT SYSTEM EXPERIMENTAL RESULTS AND FUTURE WORK 2 MOTIVATION MOTIVATION» ARM SoCs designed
More informationScheduling in the Supermarket
Scheduling in the Supermarket Consider a line of people waiting in front of the checkout in the grocery store. In what order should the cashier process their purchases? Scheduling Criteria CPU utilization
More informationScheduling, part 2. Don Porter CSE 506
Scheduling, part 2 Don Porter CSE 506 Logical Diagram Binary Memory Formats Allocators Threads Today s Lecture Switching System to CPU Calls RCU scheduling File System Networking Sync User Kernel Memory
More informationDongjun Shin Samsung Electronics
2014.10.31. Dongjun Shin Samsung Electronics Contents 2 Background Understanding CPU behavior Experiments Improvement idea Revisiting Linux I/O stack Conclusion Background Definition 3 CPU bound A computer
More informationUnderstand Linux Components
Understand Linux Components Kill Bugs, and Fix Wasteful Code Klaas van Gend 1 Agenda Linux is not a single building block Buy, Build, Borrow Deploy vs. Debug Demo: Use GDB Lab: Kill a bug Power Management
More informationThe Embedded Linux Problem
The Embedded Linux Problem Mark.gross@intel.com Android-Linux kernel Architect February 2013 outline Little about me Intro History Environment Key questions Techniques Moving modules out of tree Summary
More informationAnalysis of the BFS Scheduler in FreeBSD
CS2106R Final Report Analysis of the BFS Scheduler in FreeBSD By Vaarnan Drolia Department of Computer Science School of Computing National University of Singapore 2011/12 CS2106R Final Report Analysis
More informationMediaTek CorePilot 2.0. Delivering extreme compute performance with maximum power efficiency
MediaTek CorePilot 2.0 Heterogeneous Computing Technology Delivering extreme compute performance with maximum power efficiency In July 2013, MediaTek delivered the industry s first mobile system on a chip
More informationRoadmap for This Lecture
Thread Scheduling 1 Roadmap for This Lecture Overview Priorities Scheduling States Scheduling Data Structures Quantum Scheduling Scenarios Priority Adjustments (boosts and decays) Multiprocessor Scheduling
More informationT. Cucinotta Real-Time Systems Lab (ReTiS) Scuola Superiore Sant'Anna Pisa Italy 1. Real-Time Scheduling on Linux and SCHED_DEADLINE
T. Cucinotta Real-Time Systems Lab (ReTiS) Scuola Superiore Sant'Anna Pisa Italy 1 Real-Time Scheduling on Linux and SCHED_DEADLINE Linux CPU Schedulers Scheduling classes and policies Classes listed in
More informationSFO The Linux Kernel Scheduler. Viresh Kumar (PMWG)
SFO17-421 The Linux Kernel Scheduler Viresh Kumar (PMWG) Topics CPU Scheduler The O(1) scheduler Current scheduler design Scheduling classes schedule() Scheduling classes and policies Sched class: STOP
More informationCourse Syllabus. Operating Systems
Course Syllabus. Introduction - History; Views; Concepts; Structure 2. Process Management - Processes; State + Resources; Threads; Unix implementation of Processes 3. Scheduling Paradigms; Unix; Modeling
More informationXen scheduler status. George Dunlap Citrix Systems R&D Ltd, UK
Xen scheduler status George Dunlap Citrix Systems R&D Ltd, UK george.dunlap@eu.citrix.com Goals for talk Understand the problem: Why a new scheduler? Understand reset events in credit1 and credit2 algorithms
More informationAutomatic NUMA Balancing. Rik van Riel, Principal Software Engineer, Red Hat Vinod Chegu, Master Technologist, HP
Automatic NUMA Balancing Rik van Riel, Principal Software Engineer, Red Hat Vinod Chegu, Master Technologist, HP Automatic NUMA Balancing Agenda What is NUMA, anyway? Automatic NUMA balancing internals
More informationCopyright 2017 ARM Limited or its affiliates. All rights reserved.
Page 1 of 33 Revision Information The following revisions have been made to this document. Date Version Confidentiality Change 31 March 2017 1.0 Non-confidential Initial version of the document 30 October
More informationUTILIZING A BIG.LITTLE TM SOLUTION IN AUTOMOTIVE
UTILIZING A BIG.LITTLE TM SOLUTION IN AUTOMOTIVE JUN. 20, 2018 YOSHIYUKI ITO AUTOMOTIVE INFORMATION SOLUTION BUSINESS DIVISION RENESAS ELECTRONICS CORPORATION Today s Topics & Goal Requirement for big.little
More informationGetting RCU Further Out Of The Way
Paul E. McKenney, IBM Distinguished Engineer, Linux Technology Center (Linaro) 31 August 2012 2012 Linux Plumbers Conference, Real Time Microconference RCU Was Once A Major Real-Time Obstacle rcu_read_lock()
More informationRed Hat Summit 2009 Rik van Riel
1 The Turtle And The Hare A Tale of Two Kernels Rik van Riel Senior Software Engineer, Red Hat September 3, 2009 2 The Turtle And The Hare A Tale of Two Kernels Rik van Riel Senior Software Engineer, Red
More informationTimers 1 / 46. Jiffies. Potent and Evil Magic
Timers 1 / 46 Jiffies Each timer tick, a variable called jiffies is incremented It is thus (roughly) the number of HZ since system boot A 32-bit counter incremented at 1000 Hz wraps around in about 50
More informationReview of the Stable Realtime Release Process
Review of the Stable Realtime Release Process An unscientific, slightly opinionated stab at the current status... With the intent of generating some discussion. Frank Rowand, Sony Network Entertainment
More informationAbstract. Testing Parameters. Introduction. Hardware Platform. Native System
Abstract In this paper, we address the latency issue in RT- XEN virtual machines that are available in Xen 4.5. Despite the advantages of applying virtualization to systems, the default credit scheduler
More informationThread Scheduling. in FreeBSD September 2004 QUEUE rants:
Thread Scheduling 58 September 2004 QUEUE rants: feedback@acmqueue.com MARSHALL KIRK McKUSICK, CONSULTANT GEORGE V. NEVILLE-NEIL, CONSULTANT A busy system makes thousands of scheduling decisions per second,
More informationMulti-Level Feedback Queues
CS 326: Operating Systems Multi-Level Feedback Queues Lecture 8 Today s Schedule Building an Ideal Scheduler Priority-Based Scheduling Multi-Level Queues Multi-Level Feedback Queues Scheduling Domains
More informationEvaluation of Real-time Performance in Embedded Linux. Hiraku Toyooka, Hitachi. LinuxCon Europe Hitachi, Ltd All rights reserved.
Evaluation of Real-time Performance in Embedded Linux LinuxCon Europe 2014 Hiraku Toyooka, Hitachi 1 whoami Hiraku Toyooka Software engineer at Hitachi " Working on operating systems Linux (mainly) for
More informationPyTimechart practical. Pierre Tardy Software Engineer - UMG October 2011
PyTimechart practical Pierre Tardy Software Engineer - UMG October 2011 Intel Employee since 2009 Working on Intel s phone platforms Meego Android Power Management Tools (pytimechart, buildbot) Open-Source
More informationProcess Concepts. CSC400 - Operating Systems. 3. Process Concepts. J. Sumey
CSC400 - Operating Systems 3. Process Concepts J. Sumey Overview Concurrency Processes & Process States Process Accounting Interrupts & Interrupt Processing Interprocess Communication CSC400 - Process
More informationCPU Scheduling. Operating Systems (Fall/Winter 2018) Yajin Zhou ( Zhejiang University
Operating Systems (Fall/Winter 2018) CPU Scheduling Yajin Zhou (http://yajin.org) Zhejiang University Acknowledgement: some pages are based on the slides from Zhi Wang(fsu). Review Motivation to use threads
More informationScheduling the Intel Core i7
Third Year Project Report University of Manchester SCHOOL OF COMPUTER SCIENCE Scheduling the Intel Core i7 Ibrahim Alsuheabani Degree Programme: BSc Software Engineering Supervisor: Prof. Alasdair Rawsthorne
More informationAnnouncements. Reading. Project #1 due in 1 week at 5:00 pm Scheduling Chapter 6 (6 th ed) or Chapter 5 (8 th ed) CMSC 412 S14 (lect 5)
Announcements Reading Project #1 due in 1 week at 5:00 pm Scheduling Chapter 6 (6 th ed) or Chapter 5 (8 th ed) 1 Relationship between Kernel mod and User Mode User Process Kernel System Calls User Process
More informationPAGE REPLACEMENT. Operating Systems 2015 Spring by Euiseong Seo
PAGE REPLACEMENT Operating Systems 2015 Spring by Euiseong Seo Today s Topics What if the physical memory becomes full? Page replacement algorithms How to manage memory among competing processes? Advanced
More informationUnderstanding Real Time Linux. Alex Shi
Understanding Real Time Linux Alex Shi Agenda What s real time OS RTL project status RT testing and tracing Reasons of latency and solutions for them Resources Summary What s real time OS Real time and
More informationQoS Handling with DVFS (CPUfreq & Devfreq)
QoS Handling with DVFS (CPUfreq & Devfreq) MyungJoo Ham SW Center, 1 Performance Issues of DVFS Performance Sucks w/ DVFS! Battery-life Still Matters More Devices (components) w/ DVFS More Performance
More informationPer-entity Load Tracking
Per-entity Load Tracking Hyunmin Yoon 어코드사업단 리눅스 CFS 와로드밸런서 교육 2 Per-entity Load Tracking Purpose Fair and responsive scheduling Maximizing system throughput Minimizing power consumption Problem of previous
More informationEnhancing Linux Scheduler Scalability
Enhancing Linux Scheduler Scalability Mike Kravetz IBM Linux Technology Center Hubertus Franke, Shailabh Nagar, Rajan Ravindran IBM Thomas J. Watson Research Center {mkravetz,frankeh,nagar,rajancr}@us.ibm.com
More informationMultiprocessor Systems. Chapter 8, 8.1
Multiprocessor Systems Chapter 8, 8.1 1 Learning Outcomes An understanding of the structure and limits of multiprocessor hardware. An appreciation of approaches to operating system support for multiprocessor
More informationCFS-v: I/O Demand-driven VM Scheduler in KVM
CFS-v: Demand-driven VM Scheduler in KVM Hyotaek Shim and Sung-Min Lee (hyotaek.shim, sung.min.lee@samsung.com) Software R&D Center, Samsung Electronics 2014. 10. 16 Problem in Server Consolidation 2/16
More informationCS Computer Systems. Lecture 6: Process Scheduling
CS 5600 Computer Systems Lecture 6: Process Scheduling Scheduling Basics Simple Schedulers Priority Schedulers Fair Share Schedulers Multi-CPU Scheduling Case Study: The Linux Kernel 2 Setting the Stage
More informationCase Study: Challenges and Benefits in Integrating Real Time patch in PowerPc Based Media System
Case Study: Challenges and Benefits in Integrating Real Time patch in PowerPc Based Media System Manikandan Ramachandran Infosys Technologies Limited Electronic City, Hosur Road, Bengaluru 560100,India
More informationA case for bad big.little switching: How to scale power-performance in SI-HMP
A case for bad big.little switching: How to scale power-performance in SI-HMP Seehwan Yoo seehwan.yoo@mobileos.dankook.ac.kr Sang-Ah Lee sanga13@mobileos.dankook.ac.kr YoonSeok Shim sys11@mobileos.dankook.ac.kr
More informationW4118: advanced scheduling
W4118: advanced scheduling Instructor: Junfeng Yang References: Modern Operating Systems (3 rd edition), Operating Systems Concepts (8 th edition), previous W4118, and OS at MIT, Stanford, and UWisc Outline
More informationBy Arjan Van De Ven, Senior Staff Software Engineer at Intel.
Absolute Power By Arjan Van De Ven, Senior Staff Software Engineer at Intel. Abstract: Power consumption is a hot topic from laptop, to datacenter. Recently, the Linux kernel has made huge steps forward
More informationKeeping up with LTS Linux Kernel Functional Testing on Devices
Keeping up with LTS Linux Kernel Functional Testing on Devices Tom Gall Director, Linaro Mobile Group Who is Linaro? Linaro is leading software collaboration in the ARM ecosystem Instead of duplicating
More informationHelio X20: The First Tri-Gear Mobile SoC with CorePilot 3.0 Technology
Helio X20: The First Tri-Gear Mobile SoC with CorePilot 3.0 Technology Tsung-Yao Lin, g-hsien Lee, Loda Chou, Clavin Peng, Jih-g Hsu, Jia-g Chen, John-CC Chen, Alex Chiou, Artis Chiu, David Lee, Carrie
More informationResource Containers. A new facility for resource management in server systems. Presented by Uday Ananth. G. Banga, P. Druschel, J. C.
Resource Containers A new facility for resource management in server systems G. Banga, P. Druschel, J. C. Mogul OSDI 1999 Presented by Uday Ananth Lessons in history.. Web servers have become predominantly
More informationModule 18: "TLP on Chip: HT/SMT and CMP" Lecture 39: "Simultaneous Multithreading and Chip-multiprocessing" TLP on Chip: HT/SMT and CMP SMT
TLP on Chip: HT/SMT and CMP SMT Multi-threading Problems of SMT CMP Why CMP? Moore s law Power consumption? Clustered arch. ABCs of CMP Shared cache design Hierarchical MP file:///e /parallel_com_arch/lecture39/39_1.htm[6/13/2012
More informationProcess Time. Steven M. Bellovin January 25,
Multiprogramming Computers don t really run multiple programs simultaneously; it just appears that way Each process runs to completion, but intermixed with other processes Process 1 6 ticks Process 2 Process
More informationEnergy Efficiency in Operating Systems
Devices Timer interrupts CPU idling CPU frequency scaling Energy-aware scheduling Energy Efficiency in Operating Systems Björn Brömstrup Arbeitsbereich Wissenschaftliches Rechnen Fachbereich Informatik
More informationMiAMI: Multi-Core Aware Processor Affinity for TCP/IP over Multiple Network Interfaces
MiAMI: Multi-Core Aware Processor Affinity for TCP/IP over Multiple Network Interfaces Hye-Churn Jang Hyun-Wook (Jin) Jin Department of Computer Science and Engineering Konkuk University Seoul, Korea {comfact,
More informationARM Intelligent Power Allocation
ARM Intelligent Power Allocation 1 Agenda Background and Motivation What is ARM Intelligent Power Allocation? Results Status and Conclusions 2 Power Consumption Scenarios The illustration to the right
More informationEnergy Efficiency Analysis of Heterogeneous Platforms: Early Experiences
Energy Efficiency Analysis of Heterogeneous Platforms: Early Experiences Youhuizi Li, Weisong Shi, Congfeng Jiang, Jilin Zhang and Jian Wan Key Laboratory of Complex Systems Modeling and Simulation, Hangzhou
More informationWhen the OS gets in the way
When the OS gets in the way (and what you can do about it) Mark Price @epickrram LMAX Exchange Linux When the OS gets in the way (and what you can do about it) Mark Price @epickrram LMAX Exchange It s
More informationIntegrating CPU and GPU, The ARM Methodology. Edvard Sørgård, Senior Principal Graphics Architect, ARM Ian Rickards, Senior Product Manager, ARM
Integrating CPU and GPU, The ARM Methodology Edvard Sørgård, Senior Principal Graphics Architect, ARM Ian Rickards, Senior Product Manager, ARM The ARM Business Model Global leader in the development of
More informationPerformance Tools for Technical Computing
Christian Terboven terboven@rz.rwth-aachen.de Center for Computing and Communication RWTH Aachen University Intel Software Conference 2010 April 13th, Barcelona, Spain Agenda o Motivation and Methodology
More informationCS370 Operating Systems
CS370 Operating Systems Colorado State University Yashwant K Malaiya Fall 2017 Lecture 10 Slides based on Text by Silberschatz, Galvin, Gagne Various sources 1 1 Chapter 6: CPU Scheduling Basic Concepts
More informationNative POSIX Thread Library (NPTL) CSE 506 Don Porter
Native POSIX Thread Library (NPTL) CSE 506 Don Porter Logical Diagram Binary Memory Threads Formats Allocators Today s Lecture Scheduling System Calls threads RCU File System Networking Sync User Kernel
More informationECE 669 Parallel Computer Architecture
ECE 669 Parallel Computer Architecture Lecture 9 Workload Evaluation Outline Evaluation of applications is important Simulation of sample data sets provides important information Working sets indicate
More informationProcesses and Threads. Processes and Threads. Processes (2) Processes (1)
Processes and Threads (Topic 2-1) 2 홍성수 Processes and Threads Question: What is a process and why is it useful? Why? With many things happening at once in a system, need some way of separating them all
More informationEECS 482 Introduction to Operating Systems
EECS 482 Introduction to Operating Systems Winter 2018 Harsha V. Madhyastha Monitors vs. Semaphores Monitors: Custom user-defined conditions Developer must control access to variables Semaphores: Access
More informationMaintaining Linux Long Term & Adding Specific Features in Telecom Systems. Keika Kobayashi NEC Communication Systems Sep 29, Japan2010
Maintaining Linux Long Term & Adding Specific Features in Telecom Systems Keika Kobayashi NEC Communication Systems Sep 29, 2010@LinuxCon Japan2010 OUTLINE 1. Background 2. What we did 1. Keep kernel stable.
More informationOperating Systems. Process scheduling. Thomas Ropars.
1 Operating Systems Process scheduling Thomas Ropars thomas.ropars@univ-grenoble-alpes.fr 2018 References The content of these lectures is inspired by: The lecture notes of Renaud Lachaize. The lecture
More information- information for users and developers - Dominik Brodowski some additions and corrections by Nico Golde
1 von 5 11.10.2016 10:03 CPU frequency and voltage scaling code in the Linux(TM) kernel L i n u x C P U F r e q C P U F r e q G o v e r n o r s - information for users and developers - Dominik Brodowski
More informationQ&A updates 2 Question 1: Question 2: Question 3:
Q&A updates 2 Question 1: I am the member of asc15. I encounter a problem when I execute a mic problem. The compile is right, but when I execute it, it appears the wrong message that "On the remote process,
More informationPROCESS SCHEDULING Operating Systems Design Euiseong Seo
PROCESS SCHEDULING 2017 Operating Systems Design Euiseong Seo (euiseong@skku.edu) Histogram of CPU Burst Cycles Alternating Sequence of CPU and IO Processor Scheduling Selects from among the processes
More informationMotivation. Threads. Multithreaded Server Architecture. Thread of execution. Chapter 4
Motivation Threads Chapter 4 Most modern applications are multithreaded Threads run within application Multiple tasks with the application can be implemented by separate Update display Fetch data Spell
More informationBig.LITTLE Processing with ARM Cortex -A15 & Cortex-A7
Big.LITTLE Processing with ARM Cortex -A15 & Cortex-A7 Improving Energy Efficiency in High-Performance Mobile Platforms Peter Greenhalgh, ARM September 2011 This paper presents the rationale and design
More informationState of the Linux Kernel
State of the Linux Kernel Timothy D. Witham Chief Technology Officer Open Source Development Labs, Inc. 1 Agenda Process Performance/Scalability Responsiveness Usability Improvements Device support Multimedia
More informationSMD149 - Operating Systems
SMD149 - Operating Systems Roland Parviainen November 3, 2005 1 / 45 Outline Overview 2 / 45 Process (tasks) are necessary for concurrency Instance of a program in execution Next invocation of the program
More informationAdventures In Real-Time Performance Tuning, Part 2
Adventures In Real-Time Performance Tuning, Part 2 The real-time for Linux patchset does not guarantee adequate real-time behavior for all target platforms. When using real-time Linux on a new platform
More informationI/O and virtualization
I/O and virtualization CSE-C3200 Operating systems Autumn 2015 (I), Lecture 8 Vesa Hirvisalo Today I/O management Control of I/O Data transfers, DMA (Direct Memory Access) Buffering Single buffering Double
More informationint $0x32 // call interrupt number 50
Kernel Programming: Process isolation, goal to make programs run fast and reliably o Processes should not affect others, unless there s a specific and allowed communication channel o Each process can act
More informationDistributed Systems 27. Process Migration & Allocation
Distributed Systems 27. Process Migration & Allocation Paul Krzyzanowski pxk@cs.rutgers.edu 12/16/2011 1 Processor allocation Easy with multiprocessor systems Every processor has access to the same memory
More informationAkaros. Barret Rhoden, Kevin Klues, Andrew Waterman, Ron Minnich, David Zhu, Eric Brewer UC Berkeley and Google
Akaros Barret Rhoden, Kevin Klues, Andrew Waterman, Ron Minnich, David Zhu, Eric Brewer UC Berkeley and Google High Level View Research OS, made for single nodes Large-scale SMP / many-core architectures
More informationIntroduction to Embedded Systems. Lab Logistics
Introduction to Embedded Systems CS/ECE 6780/5780 Al Davis Today s topics: lab logistics interrupt synchronization reentrant code 1 CS 5780 Lab Logistics Lab2 Status Wed: 3/11 teams have completed their
More informationARM instruction sets and CPUs for wide-ranging applications
ARM instruction sets and CPUs for wide-ranging applications Chris Turner Director, CPU technology marketing ARM Tech Forum Taipei July 4 th 2017 ARM computing is everywhere #1 shipping GPU in the world
More informationScheduling Mar. 19, 2018
15-410...Everything old is new again... Scheduling Mar. 19, 2018 Dave Eckhardt Brian Railing Roger Dannenberg 1 Outline Chapter 5 (or Chapter 7): Scheduling Scheduling-people/textbook terminology note
More information