OPERATING SYSTEM: DESIGN AND IMPLEMENT FINAL PROPOSAL SCHEDULER 499410007 周長毅, 499410055 周榆豐.

Slides:



Advertisements
Similar presentations
What is Hardware? Hardware is the physical parts of the computer system – the parts that you can touch and see. A motherboard, a CPU, a keyboard and a.
Advertisements

Implementing Parallel Graph Algorithms Spring 2015 Implementing Parallel Graph Algorithms Lecture 1: Introduction Roman Manevich Ben-Gurion University.
BFS: Brain F*ck Scheduler Jacob Chan. Objectives  Brain F*ck Scheduling  What it is  How it works  Features  Scalability  Limitations  Definition.
VSphere vs. Hyper-V Metron Performance Showdown. Objectives Architecture Available metrics Challenges in virtual environments Test environment and methods.
KMemvisor: Flexible System Wide Memory Mirroring in Virtual Environments Bin Wang Zhengwei Qi Haibing Guan Haoliang Dong Wei Sun Shanghai Key Laboratory.
MCITP Guide to Microsoft Windows Server 2008 Server Administration (Exam #70-646) Chapter 11 Windows Server 2008 Virtualization.
Accurate and Efficient Replaying of File System Traces Nikolai Joukov, TimothyWong, and Erez Zadok Stony Brook University (FAST 2005) USENIX Conference.
Virtual Machines Measure Up John Staton Karsten Steinhaeuser University of Notre Dame December 15, 2005 Graduate Operating Systems, Fall 2005 Final Project.
Hyper Threading By Jeffrey Rodriguez. What is Hyper Threading? Intel’s implementation of Symmetric Multithreading (SMT) Two threads executing concurrently.
1 SOFTWARE TECHNOLOGIES BUS Abdou Illia, Spring 2007 (Week 2, Thursday 1/18/2007)
Introduction to Computer Terminology
Cambodia-India Entrepreneurship Development Centre - : :.... :-:-
I Information Systems Technology Ross Malaga 3 "Part I Understanding Information Systems Technology" Copyright © 2005 Prentice Hall, Inc. 3-1 SOFTWARE.
Dr. José M. Reyes Álamo 1.  Course website  Syllabus posted.
1 MASTERING (VIRTUAL) NETWORKS A Case Study of Virtualizing Internet Lab Avin Chen Borokhovich Michael Goldfeld Arik.
Welcome! Computer 101 Session 2 With Laura Crichton.
Linux Basics. What is an Operating System (OS)? An Operating System (OS) is an interface between hardware and user which is responsible for the management.
Using Virtualization in the Classroom. Using Virtualization in the Classroom Session Objectives Define virtualization Compare major virtualization programs.
Week 6 Operating Systems.
Tanenbaum 8.3 See references
Parts of a Computer Why Use Binary Numbers? Source Code - Assembly - Machine Code.
Testing Virtual Machine Performance Running ATLAS Software Yushu Yao Paolo Calafiura LBNL April 15,
DIY: Your First VMware Server. Introduction to ESXi, VMWare's free virtualization Operating System.
1 ITSK 2611 Welcome. 2 Operating System 3 What is an OS Resource Manager –Disk –Memory –CPU Device Manager –Printers –Video Card –Sound Card Utility.
Lecture 0. Course Introduction Prof. Taeweon Suh Computer Science Education Korea University ECM586 Special Topics in Embedded Systems.
DELL PowerEdge 6800 performance for MR study Alexander Molodozhentsev KEK for RCS-MR group meeting November 29, 2005.
Virtualization. ABCs Special software: hypervisors or virtual machine managers Guest OS (virtual machine) sits on top of host OS (Win 7 in our case) We.
Introduction to Hardware. What is binary? We use the decimal (base 10) number system Binary is the base 2 number system Ten different numbers are used.
Computing Labs CL5 / CL6 Multi-/Many-Core Programming with Intel Xeon Phi Coprocessors Rogério Iope São Paulo State University (UNESP)
Using Virtualization in the Classroom. Using Virtualization in the Classroom Session Objectives Define virtualization Compare major virtualization programs.
Virtual Machine Scheduling for Parallel Soft Real-Time Applications
Improving Network I/O Virtualization for Cloud Computing.
Operating Systems CSE 411 Multi-processor Operating Systems Multi-processor Operating Systems Dec Lecture 30 Instructor: Bhuvan Urgaonkar.
Computer Guts and Operating Systems CSCI 101 Week Two.
Mrs. Ulshafer August, 2013 Java Programming Chapter 1.
CSNB334 Advanced Operating Systems Course Introduction Lecturer: Abdul Rahim Ahmad.
Operating System What is an Operating System? A program that acts as an intermediary between a user of a computer and the computer hardware. An operating.
BFSBFS by Con KolivasCon Kolivas Guruprasad Aphale. Real Time Lunch, 10/21/ Guruprasad Aphale.
What is the best laptop configuration? Video Ability.
Computers & Operating Systems
VTurbo: Accelerating Virtual Machine I/O Processing Using Designated Turbo-Sliced Core Embedded Lab. Kim Sewoog Cong Xu, Sahan Gamage, Hui Lu, Ramana Kompella,
Introduction to virtualization
The Kernel: Overview of the Operating System. Find the 5 places they differ.
Virtualization Supplemental Material beyond the textbook.
Chapter 9: Networking with Unix and Linux. Objectives: Describe the origins and history of the UNIX operating system Identify similarities and differences.
An Efficient Threading Model to Boost Server Performance Anupam Chanda.
Running Mantevo Benchmark on a Bare-metal Server Mohammad H. Mofrad January 28, 2016
Computer Performance. Hard Drive - HDD Stores your files, programs, and information. If it gets full, you can’t save any more. Measured in bytes (KB,
S. Pardi Frascati, 2012 March GPGPU Evaluation – First experiences in Napoli Silvio Pardi.
 This work confers an application which makes possible to use a Bluetooth enabled mobile phone to remote control home appliances such electric fan, LEDs.
UNIX U.Y: 1435/1436 H Operating System Concept. What is an Operating System?  The operating system (OS) is the program which starts up when you turn.
Multicore Applications in Physics and Biochemical Research Hristo Iliev Faculty of Physics Sofia University “St. Kliment Ohridski” 3 rd Balkan Conference.
This courseware is copyrighted © 2016 gtslearning. No part of this courseware or any training material supplied by gtslearning International Limited to.
NFV Compute Acceleration APIs and Evaluation
Matt Lemons Nate Mayotte
Current Generation Hypervisor Type 1 Type 2.
Hardware specifications
Server pschiu.
System Software EIT, © Author Gay Robertson, 2016.
Heterogeneous Computation Team HybriLIT
تدريس يار: ميثم نظرياني
OS Virtualization.
Practical Rootkit Detection with RAI
HP’S BEST-SELLING PERFORMANCE WORKSTATION
Introduction to Hardware
SOFTWARE TECHNOLOGIES
HP’S BEST-SELLING PERFORMANCE WORKSTATION
A Virtual Machine Monitor for Utilizing Non-dedicated Clusters
Sarah Diesburg Operating Systems CS 3430
Presentation transcript:

OPERATING SYSTEM: DESIGN AND IMPLEMENT FINAL PROPOSAL SCHEDULER 周長毅, 周榆豐

Outline  Motivation  Purpose  Theory  O(1) Scheduler  CFS, Complete Fair Scheduler  BFS, Brain Fuck Scheduler  Testing - Linux  Result

Motivation  Wish to enhance smartphone’s performance by modifying operating system’s kernel.  But we encountered some problem when patching kernel.  So testing platform move to Linux on PC from Android on HTC Evo 3D.  Still use regular benchmark to test performance.

Purpose  More familiar with Operating System’s Scheduler we use in common.  Compare the special feature, pros and cons in actual use.

Theory  O(1) Scheduler  CFS, Complete Fair Scheduler  BFS, Brain Fuck Scheduler

O(1) Scheduler ActiveExpired Task1 Task2Task3 Task4Task5Task6 Go to Blank Page

CFS Go to Blank Page

BFS Key Point : jiffies + (prio_ratio * rr_interval) Go to Blank Page

Testing – Machine  Testing Machine :  CPU = Intel Xeon E v2 (3.3GHz, 4C8T)  RAM = 8GB DDR x4  MB = Gigabyte GA-PH67-UD3-B3  HDD = Hitachi HDS723020BLA642 (2TB 7200rpm)  Virtual Machine software = Vmware Player  Testing Software = Phoronix Test Suite v5.2.0  8 threads and 12GB RAM are allocated for guest system

Testing – How to play with BFS?  You need to prepare  Kernel Source Code from kernel.org  BFS patch that support your kernel’s version from BFS’s author.  Other component you need to compile Linux kernel.  Time, of course.

Testing – How to play with BFS?  Use “Patch” command to patch BFS into kernel.  You will see option about BFS in “make menuconfig” if no error is encountered.

Testing – How to play with BFS?  If you encountered errors you may see like this.  That’s why we can’t test on HTC Evo 3D.  But some foreign programmer DID this on other Android devices.  And the most exaggerated is you can’t patch the kernel version on kernel.org.

Testing – Testing software  Becouse we are not familiar with Linux and don’t know how to benchmark in Linux, so we use “Phoronix Test Suite” to benchmark.  “Phoronix Test Suite” has tons of options we can choose, but we don’t know So we use ”Run Complex System Test” in main menu to benchmark

Testing – Testing option  In ”Run Complex System Test”, it will benchmark 4 item, they are:  PostMark: Simulate a small server and test about it.  RAMspeed SMP: Benchmark the memory bandwidch.  C-Ray: Bench the performance of CPU’s flouting point calculation.  Apache Benchmark: Simulate some environments and test the response performance about Apache.

Result Completely Fair SchedulerBrain Fuck Scheduler

Result  But CFS’s performance is 32% highter than BFS in “Apache Benchmark”  BFS’s performance is 11% highter than CFS in “PostMark”.

END That’s all.

O(1)O(1) CFS BFSCFSBFS