Scheduling task with heavy tail distributions Eddie Aronovich.

Slides:



Advertisements
Similar presentations
CMPT 401 Summer 2007 Dr. Alexandra Fedorova Lecture III: OS Support.
Advertisements

© Janice Regan, CMPT 128, CMPT 371 Data Communications and Networking Socket Programming 0.
1 Size-Based Scheduling Policies with Inaccurate Scheduling Information Dong Lu *, Huanyuan Sheng +, Peter A. Dinda * * Prescience Lab, Dept. of Computer.
1 Routing and Scheduling in Web Server Clusters. 2 Reference The State of the Art in Locally Distributed Web-server Systems Valeria Cardellini, Emiliano.
University of Pennsylvania 10/24/00CSE 3801 Disk Scheduling CSE 380 Lecture Note 11a Insup Lee.
Dynamic Process Allocation in Apache Server Yu Cai.
Internet Traffic Patterns Learning outcomes –Be aware of how information is transmitted on the Internet –Understand the concept of Internet traffic –Identify.
Socket Programming.
Page: 1 Director 1.0 TECHNION Department of Computer Science The Computer Communication Lab (236340) Summer 2002 Submitted by: David Schwartz Idan Zak.
CS 3013 & CS 502 Summer 2006 Scheduling1 The art and science of allocating the CPU and other resources to processes.
OS Fall ’ 02 Performance Evaluation Operating Systems Fall 2002.
Looking at the Server-side of P2P Systems Yi Qiao, Dong Lu, Fabian E. Bustamante and Peter A. Dinda Department of Computer Science Northwestern University.
1 Connection Scheduling in Web Servers Mor Harchol-Balter School of Computer Science Carnegie Mellon
Performance Evaluation
An Introduction to Internetworking. Why distributed systems - Share resources (devices & CPU) - Communicate people (by transmitting data)
Wk 2 – Scheduling 1 CS502 Spring 2006 Scheduling The art and science of allocating the CPU and other resources to processes.
Dynamic Process Allocation in Apache Server Yu Cai.
OS Fall ’ 02 Performance Evaluation Operating Systems Fall 2002.
1 Mor Harchol-Balter Carnegie Mellon University Joint work with Bianca Schroeder.
Network Programming Eddie Aronovich mail:
Understanding Factors That Influence Performance of a Web Server Presentation CS535 Project By Thiru.
Computer Networks IGCSE ICT Section 4.
1 Content Distribution Networks. 2 Replication Issues Request distribution: how to transparently distribute requests for content among replication servers.
5 Copyright © 2008, Oracle. All rights reserved. Configuring the Oracle Network Environment.
5 Copyright © 2007, Oracle. All rights reserved. Configuring the Oracle Network Environment.
Efficient Scheduling of Heterogeneous Continuous Queries Mohamed A. Sharaf Panos K. Chrysanthis Alexandros Labrinidis Kirk Pruhs Advanced Data Management.
11 Copyright © 2005, Oracle. All rights reserved. Configuring the Oracle Network Environment.
Chapter 4 Processor Management
11 Copyright © 2005, Oracle. All rights reserved. Configuring the Oracle Network Environment.
1 Mor Harchol-Balter Carnegie Mellon University Computer Science Heavy Tails: Performance Models & Scheduling Disciplines.
Google File System Simulator Pratima Kolan Vinod Ramachandran.
Block I/O. 2 Definition Any I/O operation in which the unit of data is several words, not just one word or byte.
Hardware Definitions –Port: Point of connection –Bus: Interface Daisy Chain (A=>B=>…=>X) Shared Direct Device Access –Controller: Device Electronics –Registers:
© Wiley Inc All Rights Reserved. MCSE: Windows Server 2003 Active Directory Planning, Implementation, and Maintenance Study Guide, Second Edition.
Jozef Goetz, Application Layer PART VI Jozef Goetz, Position of application layer The application layer enables the user, whether human.
Chapter 6 Scheduling. Basic concepts Goal is maximum utilization –what does this mean? –cpu pegged at 100% ?? Most programs are I/O bound Thus some other.
Assignment 5/9 – 2005 INF 5070 – Media Servers and Distribution Systems:
임규찬. 1. Abstract 2. Introduction 3. Design Goals 4. Sample-Based Scheduling for Parallel Jobs 5. Implements.
1 The Effect of Heavy-Tailed Job Size Distributions on System Design Mor Harchol-Balter MIT Laboratory for Computer Science.
Background: Operating Systems Brad Karp UCL Computer Science CS GZ03 / M th November, 2008.
Scheduling. Main Points Scheduling policy: what to do next, when there are multiple threads ready to run – Or multiple packets to send, or web requests.
The Client-Server Model And the Socket API. Client-Server (1) The datagram service does not require cooperation between the peer applications but such.
OPERATING SYSTEMS CS 3530 Summer 2014 Systems and Models Chapter 03.
CSI 3125, Preliminaries, page 1 Networking. CSI 3125, Preliminaries, page 2 Networking A network represents interconnection of computers that is capable.
Code Development for High Performance Servers Topics Multithreaded Servers Event Driven Servers Example - Game Server code (Quake) A parallelization exercise.
1 Task Assignment with Unknown Duration Mor Harchol-Balter Carnegie Mellon.
1 Mor Harchol-Balter Carnegie Mellon with Nikhil Bansal with Bianca Schroeder with Mukesh Agrawal.
Zeta: Scheduling Interactive Services with Partial Execution Yuxiong He, Sameh Elnikety, James Larus, Chenyu Yan Microsoft Research and Microsoft Bing.
Modeling and Evaluation of Fibre Channel Storage Area Networks
OPERATING SYSTEMS CS 3502 Fall 2017
Scheduling of Non-Real-Time Tasks in Linux (SCHED_NORMAL/SCHED_OTHER)
Port Connection Status
Load Balancing and Data centers
Operating Systems Disk Scheduling A. Frank - P. Weisberg.
Net 323 D: Networks Protocols
Introduction to Operating Systems
B.Ramamurthy Appendix A
Providing QoS through Active Domain Management
Net 323 D: Networks Protocols
Task-Farm Distributed Computing
A tool for locating QoS failures on an Internet path
Multiple-resource Request Scheduling. for Differentiated QoS
Motivation, Terminology, Layered systems (and other random stuff)
Scheduling of Regular Tasks in Linux
An Introduction to Internetworking
Size-Based Scheduling Policies with Inaccurate Scheduling Information
An Introduction to Internetworking
Performance-Robust Parallel I/O
Operating Systems Disk Scheduling A. Frank - P. Weisberg.
Scheduling of Regular Tasks in Linux
Presentation transcript:

Scheduling task with heavy tail distributions Eddie Aronovich

Heavy tail dist.

Some properties… Infinitive variance (for infinitive mean) Infinitive variance (for infinitive mean) Tiny fraction (usually < 1%) requests comprise over half of total load ! Tiny fraction (usually < 1%) requests comprise over half of total load !

Some more properties Expectation paradox: E[X|X>k] ~ k (declining hazard rate) Expectation paradox: E[X|X>k] ~ k (declining hazard rate) Mass-count disparity (for n>2) Mass-count disparity (for n>2)

What is it good for ? Files size (in both – file systems & web) & data files transferred over the net Files size (in both – file systems & web) & data files transferred over the net I/O traces of fs, disk etc. I/O traces of fs, disk etc. Process time, Session time Process time, Session time Name servers & popularity of web sites Name servers & popularity of web sites

Why are they difficult to deal with ? M/G/1 queue length is proportional to second moment of service time. M/G/1 queue length is proportional to second moment of service time. Have no closed form Laplace transformation => systems must be numerically evaluated Have no closed form Laplace transformation => systems must be numerically evaluated

Some implementations… Scheduling web servers Scheduling web servers Routing & Switching Routing & Switching Load sensitive routing Load sensitive routing

How web server works ? Name resolution Name resolution Session establishments Session establishments Request Request Reply Reply End of session End of session The network is the bottleneck !

Some important knowledge Each computer is identified by address. Each computer is identified by address. Each application is a computer is identified by port number Each application is a computer is identified by port number Socket = {ip-addr, port number} Session = source socket : dest socket File descriptor – identifies socket / session

Default Linux model Socket1 {process} Socket2 {process} Socket3 {process} Socket4 {process} fairly feed single priority queue NIC

Shortest Remaining Processing Time (proposed model) Socket1 {process} {1 st prio. Que.} Socket2 {process} {2 nd prio. Que.} Socket3 {process} Socket4 {process} {3 rd prio. Que.} feed first feed third feed second NIC

Size cut-offs The following are rules-of-thumb: 50% of request <= X 1 50% of request <= X 1 1%-5% of requests > X n 1%-5% of requests > X n The middle cut are less important The middle cut are less important

Evaluated metrics Mean response time Mean response time Mean slowdown (normalized response time) Mean slowdown (normalized response time) Mean response time as a function of request size Mean response time as a function of request size

Some results….

Why does it work ? We know the file size (reply) a-priory We know the file size (reply) a-priory Short requests should wait short time Short requests should wait short time Linux is easy to be changed Linux is easy to be changed

What is next ? Distributed processing Distributed processing Task assigment Task assigment TAGS TAGS