Operating Systems Operating System Support for Multimedia.

Slides:



Advertisements
Similar presentations
Application Performance in the QLinux Multimedia Operating System Jun Wang Jun Wang.
Advertisements

CS 443 Advanced OS Fabián E. Bustamante, Spring 2005 Resource Containers: A new Facility for Resource Management in Server Systems G. Banga, P. Druschel,
Multimedia Systems As Presented by: Craig Tomastik.
Chapter 20: Multimedia Systems Silberschatz, Galvin and Gagne ©2005 Operating System Concepts Chapter 20: Multimedia Systems What is Multimedia.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Chapter 20: Multimedia Systems.
PlanetLab Operating System support* *a work in progress.
Distributed Multimedia Systems
Institute of Networking and Multimedia, National Taiwan University, Jun-14, 2014.
XENMON: QOS MONITORING AND PERFORMANCE PROFILING TOOL Diwaker Gupta, Rob Gardner, Ludmila Cherkasova 1.
1 Web Server Performance in a WAN Environment Vincent W. Freeh Computer Science North Carolina State Vsevolod V. Panteleenko Computer Science & Engineering.
Fast Paths in Concurrent Programs Wen Xu, Princeton University Sanjeev Kumar, Intel Labs. Kai Li, Princeton University.
End-to-End Analysis of Distributed Video-on-Demand Systems Padmavathi Mundur, Robert Simon, and Arun K. Sood IEEE Transactions on Multimedia, February.
Fair Scheduling in Web Servers CS 213 Lecture 17 L.N. Bhuyan.
Differentiated Multimedia Web Services Using Quality Aware Transcoding S. Chandra, C.Schlatter Ellis and A.Vahdat InfoCom 2000, IEEE Journal on Selected.
Operating Systems Operating System Support for Continuous Media.
Adaptive Content Delivery for Scalable Web Servers Authors: Rahul Pradhan and Mark Claypool Presented by: David Finkel Computer Science Department Worcester.
School of Information Technologies IP Quality of Service NETS3303/3603 Weeks
Computer Science Surplus Fair Scheduling: A Proportional-Share Scheduling Algorithm for Symmetric Multiprocessors Abhishek Chandra Micah Adler Pawan Goyal.
1 Robust Processing Rate Allocation with Feedback Control for Proportional Slowdown Differentiation Xiaobo Zhou Department of Computer Science University.
Locality-Aware Request Distribution in Cluster-based Network Servers Presented by: Kevin Boos Authors: Vivek S. Pai, Mohit Aron, et al. Rice University.
Xen and the Art of Virtualization. Introduction  Challenges to build virtual machines Performance isolation  Scheduling priority  Memory demand  Network.
Using Standard Industry Benchmarks Chapter 7 CSE807.
Computer Science 1 Resource Overbooking and Application Profiling in Shared Hosting Platforms Bhuvan Urgaonkar Prashant Shenoy Timothy Roscoe † UMASS Amherst.
Ch 7. Multimedia Networking Myungchul Kim
9/14/2015B.Ramamurthy1 Operating Systems : Overview Bina Ramamurthy CSE421/521.
Implementation and Performance Analysis of a Delay Based Packet Scheduling Algorithm for an Embedded Open Source Router Master’s Thesis Presentation June.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 1: Introduction What is an Operating System? Mainframe Systems Desktop Systems.
Virtual Machine Scheduling for Parallel Soft Real-Time Applications
XE33OSA Chapter 20: Multimedia Systems. 20.2XE33OSA Silberschatz, Galvin and Gagne ©2005 Chapter 20: Multimedia Systems What is Multimedia Compression.
Chapter 5: Summary r principles behind data link layer services: m error detection, correction m multiple access protocols m link layer addressing, ARP.
EFFECTS OF LOCALITY, CONTENT AND JAVA RUNTIME ON VIDEO PERFORMANCE Vikram Chhabra, Akshay Kothare, Mark Claypool Computer Science Department Worcester.
A Comparative Study of the Linux and Windows Device Driver Architectures with a focus on IEEE1394 (high speed serial bus) drivers Melekam Tsegaye
Operating System Concepts Chapter One: Introduction What is an operating system? Simple Batch Systems Multiprogramming Systems Time-Sharing Systems Personal-Computer.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition, Multimedia Systems.
A Measurement Based Memory Performance Evaluation of High Throughput Servers Garba Isa Yau Department of Computer Engineering King Fahd University of Petroleum.
A Cyclic-Executive-Based QoS Guarantee over USB Chih-Yuan Huang,Li-Pin Chang, and Tei-Wei Kuo Department of Computer Science and Information Engineering.
Computer Science 1 Resource Overbooking and Application Profiling in Shared Hosting Platforms Bhuvan Urgaonkar Prashant Shenoy Timothy Roscoe † UMASS Amherst.
1 Evaluation of Cooperative Web Caching with Web Polygraph Ping Du and Jaspal Subhlok Department of Computer Science University of Houston presented at.
Distributed Multimedia Systems Resource management and Stream Adaptation Arun A Tharuvai CSC8530 October 21, 2003.
Cello A Disk Scheduling Framework for Next Generation Operating Systems – Prashant J. Shenoy and Harrick M. Vin Presented by Evan Clark September 8, 2003.
Operating System Principles And Multitasking
1 Computer Systems II Introduction to Processes. 2 First Two Major Computer System Evolution Steps Led to the idea of multiprogramming (multiple concurrent.
Measuring the Capacity of a Web Server USENIX Sympo. on Internet Tech. and Sys. ‘ Koo-Min Ahn.
Application Performance in the QLinux Multimedia Operating System Sundaram, A. Chandra, P. Goyal, P. Shenoy, J. Sahni and H. Vin Umass Amherst, U of Texas.
Advanced Operating Systems Introduction and Overview.
NUS.SOC.CS5248 Ooi Wei Tsang 1 Course Matters. NUS.SOC.CS5248 Ooi Wei Tsang 2 Make-Up Lecture This Saturday, 23 October TR7, 1-3pm Topic: “CPU scheduling”
Introduction Contain two or more CPU share common memory and peripherals. Provide greater system throughput. Multiple processor executing simultaneous.
CS4315A. Berrached:CMS:UHD1 Introduction to Operating Systems Chapter 1.
Providing Differentiated Levels of Service in Web Content Hosting J ussara Almeida, Mihaela Dabu, Anand Manikutty and Pei Cao First Workshop on Internet.
1 Evaluation of Cooperative Web Caching with Web Polygraph Ping Du and Jaspal Subhlok Department of Computer Science University of Houston presented at.
Chapter 20: Multimedia Systems
Multimedia Systems Operating System Presentation On
Chapter 20: Multimedia Systems
Operating Systems : Overview
Memory Management for Scalable Web Data Servers
Chapter 20: Multimedia Systems
Operating Systems : Overview
Jason Neih and Monica.S.Lam
Operating Systems : Overview
Introduction to Operating Systems
Operating Systems : Overview
Operating Systems : Overview
Operating Systems : Overview
Multithreaded Programming
Chapter 20: Multimedia Systems
Chapter 20: Multimedia Systems
Chapter 1: Introduction
Chapter 20: Multimedia Systems
Xing Pu21 Ling Liu1 Yiduo Mei31 Sankaran Sivathanu1 Younggyun Koh1
Presentation transcript:

Operating Systems Operating System Support for Multimedia

Why Study Multimedia? Improvements: –Telecommunications –Environments –Communication –Fun Outgrowth from industry –telecommunications –consumer electronics –television

Continuous Media Subset of multimedia Includes timing relationship between server and client Stream: –video: mpeg, H.261, avi, QuickTime, MediaPlayer –audio: MP3, µ-law

Multimedia Resource Requirements Bytes for 1 Page textgraphicscoloraudiovideo 38K 2K 300K 720K 7000K Step up in media requires more bytes But not as much as some applications! –Graphics or transaction processing

Influences on Quality Server Client S0S0 S2S2 S1S1 S3S3 time C0C0 C1C1 S4S4 C2C2 C3C3 t0t0 t0t0 Delay Jitter Data Loss

An End-To-End Problem Server Application Operating System Network Protocol Client Application Operating System Network Protocol Server Client Network Routers

Application Performance in the QLinux Multimedia Operating System Sundaram, A. Chandra, P. Goyal, P. Shenoy, J. Sahni and H. Vin UMass Amherst, U of Texas Austin In Proceedings of ACM Multimedia Conference November 2000

Introduction General purpose operating systems handling diverse set of tasks –Conventional best-effort with low response time +Ex: word processor –Throughput intensive applications +Ex: compilation –Soft real-time applications +Ex: streaming media Many studies show can do one at a time, but when do two or more grossly inadequate –MPEG-2 when compiling has a lot of jitter

Introduction Reason? Lack of service differentiation –Provide ‘best-effort’ to all Special-purpose operating systems are similarly inadequate for other mixes Need OS that: –Multiplexes resources in a predictable manner –Service differentiation to meet individual application requirements

Solution: QLinux Solution: QLinux (the Q is for Quality) –Enhance standard Linux –Hierarchical schedulers +classes of applications or individual applications –CPU, Network, Disk

Outline QLinux philosophy CPU Scheduler –Evaluation List of other topics in paper –Packet Scheduler –Disk Scheduler –Lazy Receiver Processing Conclusion

QLinux Design Principles Support for Multiple Service Classes –Interactive, Throughput-Intensive, Soft Real-time Predictable Resource Allocation –Priority not enough (starvation of others) –Ex: mpeg_decoder at highest can starve kernel –Not static partitioning since unused can be used by others

QLinux Design Principles Service Differentiation –Within a class, applications treated differently –Uses hierarchical schedulers Support for Legacy Applications –Support binaries of all existing applications (no special system calls required) –No worse performance (but may be better)

QLinux Components

Hierarchical Start-time Fair Queuing (H-SFQ) CPU Scheduler Uses a tree Each thread belongs to 1 leaf Each leaf is an application class Weights are of parent class Each node has own scheduler Uses Start-Time Fair Queuing at top for time for each (Typical OS?)

CPU Scheduler System Calls Nodes can be created on the fly Processes can move from node to node Defaults to top-level fair scheduler if not specified Utilities to do external from application  Allow support of legacy apps without modifying source

Experimental Setup Cluster of PCs –P2-350 MHz –64 MB RAM –RedHat 6.1 –QLinux based on Linux Network –100 Mb/s 3-Com Ethernet –3Com Superstack II switch (100 Mb/s) “Assume” machines and net lightly loaded

Experimental Workloads Inf: executes infinite loop –Compute-intensive, Best effort Mpeg_play: Berkeley MPEG-1 decoder –Compute-intensive, Soft real-time Apache Web Server and Client –I/O intensive, Best effort Streaming media server –I/O intensive, Soft real-time Dhrystone: measure CPU performance –Compute-instensive, Best effort

CPU Scheduler Evaluation-1 Two classes, run Inf for each Assign weights to each (ex: 1:1, 1:2, 1:4) Count the number of loops

CPU Scheduler Evaluation-1 Results “count” is proportional to CPU bandwidth allocated

CPU Scheduler Evaluation-2 Two classes, equal weights (1:1) Run two Inf Suspend one at t=250 seconds Restart at t=330 seconds Note count

CPU Scheduler Evaluation-2 Results (Counts twice as fast when other suspended)

CPU Scheduler Evaluation-3 Two classes: soft real-time & best effort (1:1) Run: –MPEG_PLAY in real-time (1.49 Mbps) –Dhrystone in best effort Increase Dhrystone’s from 1 to 2 to 3 … –Note MPEG bandwidth Re-run experiment with Vanilla Linux

CPU Scheduler Evaluation-3 Results

CPU Scheduler Evaluation-4 Explore another best-effort case Run two Web servers (representing, say 2 different domains) Have clients generate many requests See if CPU bandwidth allocation is proportional

CPU Scheduler Evaluation-4 Results

CPU Scheduler Overhead Evaluation Scheduler takes some overhead since recursively called Run Inf at increasing depth in scheduler hierarchy tree Record count for 300 seconds

CPU Scheduler Overhead Evaluation Results

QLinux Components Disk - Not evaluated Packets - Sending and “Lazy” Processing for Receiving

Conclusion Some improvement and some ideas Still Much work to be done –scheduling –memory management –network –disk M.S. Thesis –One piece in OS support puzzle