Author Utility-Based Scheduling for Bulk Data Transfers between Distributed Computing Facilities Xin Wang, Wei Tang, Raj Kettimuthu,

Slides:



Advertisements
Similar presentations
Hadi Goudarzi and Massoud Pedram
Advertisements

CH 5. CPU Scheduling Basic Concepts F CPU Scheduling  context switching u CPU switching for another process u saving old PCB and loading.
CPU Scheduling Questions answered in this lecture: What is scheduling vs. allocation? What is preemptive vs. non-preemptive scheduling? What are FCFS,
Kangaroo: Video Seeking in P2P Systems Xiaoyuan Yang †, Minas Gjoka ¶, Parminder Chhabra †, Athina Markopoulou ¶, Pablo Rodriguez † † Telefonica Research.
Silberschatz, Galvin and Gagne ©2013 Operating System Concepts Essentials – 2 nd Edition Chapter 6a: CPU Scheduling.
 Basic Concepts  Scheduling Criteria  Scheduling Algorithms.
Scheduling of parallel jobs in a heterogeneous grid environment Scheduling of parallel jobs in a heterogeneous grid environment Each site has a homogeneous.
Chap 5 Process Scheduling. Basic Concepts Maximum CPU utilization obtained with multiprogramming CPU–I/O Burst Cycle – Process execution consists of a.
Chapter 5 CPU Scheduling. CPU Scheduling Topics: Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling.
Ceng Operating Systems Chapter 2.2 : Process Scheduling Process concept  Process scheduling Interprocess communication Deadlocks Threads.
Chapter 3: CPU Scheduling
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition, Chapter 5: CPU Scheduling.
Scheduling in Batch Systems
Chapter 6: CPU Scheduling. 5.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts – 7 th Edition, Feb 2, 2005 Chapter 6: CPU Scheduling Basic.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 6: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms.
Cs238 CPU Scheduling Dr. Alan R. Davis. CPU Scheduling The objective of multiprogramming is to have some process running at all times, to maximize CPU.
What we will cover…  CPU Scheduling  Basic Concepts  Scheduling Criteria  Scheduling Algorithms  Evaluations 1-1 Lecture 4.
Chapter 5-CPU Scheduling
An Adaptive Multi-Objective Scheduling Selection Framework For Continuous Query Processing Timothy M. Sutherland Bradford Pielech Yali Zhu Luping Ding.
Job scheduling Queue discipline.
A. Frank - P. Weisberg Operating Systems CPU Scheduling.
02/11/2004CSCI 315 Operating Systems Design1 CPU Scheduling Algorithms Notice: The slides for this lecture have been largely based on those accompanying.
Operating System Process Scheduling (Ch 4.2, )
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 6: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms.
Chapter 5: CPU Scheduling. 5.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts – 7 th Edition, Feb 2, 2005 Basic Concepts Maximum CPU utilization.
CPU Scheduling Chapter 6 Chapter 6.
Chapter 6: CPU Scheduling
CS212: OPERATING SYSTEM Lecture 3: Process Scheduling 1.
Network Aware Resource Allocation in Distributed Clouds.
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.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 6: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms.
Scheduling. Alternating Sequence of CPU And I/O Bursts.
CPU Scheduling CSCI 444/544 Operating Systems Fall 2008.
Modeling and Adaptive Scheduling of Large-Scale Wide-Area Data Transfers Raj Kettimuthu Advisors: Gagan Agrawal, P. Sadayappan.
Silberschatz and Galvin  Operating System Concepts Module 5: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor.
CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Thread Scheduling Multiple-Processor Scheduling Operating Systems Examples Algorithm.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 6: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms.
Chapter 5: CPU Scheduling. 5.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts Chapter 5: CPU Scheduling Basic Concepts Scheduling Criteria.
Service-oriented Resource Broker for QoS-Guaranteed in Grid Computing System Yichao Yang, Jin Wu, Lei Lang, Yanbo Zhou and Zhili Sun Centre for communication.
Chapter 5: Process Scheduling. 5.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts Basic Concepts Maximum CPU utilization can be obtained.
Operating Systems 1 K. Salah Module 2.2: CPU Scheduling Scheduling Types Scheduling Criteria Scheduling Algorithms Performance Evaluation.
1 11/29/2015 Chapter 6: CPU Scheduling l Basic Concepts l Scheduling Criteria l Scheduling Algorithms l Multiple-Processor Scheduling l Real-Time Scheduling.
Chapter 5: CPU Scheduling. 5.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts – 7 th Edition, Feb 2, 2005 Chapter 5: CPU Scheduling Basic.
Silberschatz and Galvin  Operating System Concepts Module 5: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor.
1 CS.217 Operating System By Ajarn..Sutapart Sappajak,METC,MSIT Chapter 5 CPU Scheduling Slide 1 Chapter 5 CPU Scheduling.
6.1 CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling Algorithm Evaluation.
Zeta: Scheduling Interactive Services with Partial Execution Yuxiong He, Sameh Elnikety, James Larus, Chenyu Yan Microsoft Research and Microsoft Bing.
Chapter 4 CPU Scheduling. 2 Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling Algorithm Evaluation.
BDTS and Its Evaluation on IGTMD link C. Chen, S. Soudan, M. Pasin, B. Chen, D. Divakaran, P. Primet CC-IN2P3, LIP ENS-Lyon
Lecture 4 CPU scheduling. Basic Concepts Single Process  one process at a time Maximum CPU utilization obtained with multiprogramming CPU idle :waiting.
CPU Scheduling G.Anuradha Reference : Galvin. CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time.
CPU scheduling.  Single Process  one process at a time  Maximum CPU utilization obtained with multiprogramming  CPU idle :waiting time is wasted 2.
1 Module 5: Scheduling CPU Scheduling Scheduling Algorithms Reading: Chapter
Basic Concepts Maximum CPU utilization obtained with multiprogramming
3. CPU Scheduling. CPU Scheduling Process execution – a cycle of CPU execution and I/O wait – figure Preemptive Non-Preemptive.
1 Lecture 5: CPU Scheduling Operating System Fall 2006.
1 Chapter 5: CPU Scheduling. 2 Basic Concepts Scheduling Criteria Scheduling Algorithms.
CPU Scheduling Scheduling processes (or kernel-level threads) onto the cpu is one of the most important OS functions. The cpu is an expensive resource.
Chapter 2.2 : Process Scheduling
Chapter 6: CPU Scheduling
CPU Scheduling G.Anuradha
Module 5: CPU Scheduling
3: CPU Scheduling Basic Concepts Scheduling Criteria
Chapter 6: CPU Scheduling
A Characterization of Approaches to Parrallel Job Scheduling
Chapter 6: CPU Scheduling
Module 5: CPU Scheduling
Scheduling 21 May 2019.
Chapter 6: CPU Scheduling
Module 5: CPU Scheduling
Presentation transcript:

Author Utility-Based Scheduling for Bulk Data Transfers between Distributed Computing Facilities Xin Wang, Wei Tang, Raj Kettimuthu, Zhiling Lan

Author Content Motivation Problem statement Utility optimization model Experiments Conclusions Future work

Author Motivation Data movement over wide-area network is increasingly needed WAN bandwidths grow at a slower pace – shared and limited resources Lacking coordination for multi-user bulk data transfers causes problems – Network contentions – Bandwidth waste

Author Background - GridFTP R. Kettimuthu, G. Vardoyan, G. Agrawal, P. Sadayappan, “Modeling and optimizing large-scale wide-area data transfers,” in Proc. of CCgrid’ 14, In GridFTP transfers, two key performance-tuning mechanisms include: – Parallelism – Concurrency

Author Problem Context A scheduler inside the source host will make following decisions at each scheduling iteration: – when to start which jobs – how many TCP connections to assign to each job

Author Goals A scheduler coordinates data transfer requests (jobs) from one source host to multiple destination hosts – queue prioritization (temporal) – connection allocation (spatial) Improve system performance and user satisfaction – minimizing job turnaround time – maximizing aggregate job utility

Author Background – Utility Function User satisfaction can be measured by utility function Maximizing aggregate job utility is consistent with an enhanced overall user satisfaction regarding job turnaround. Utility function is a function of job turnaround time and can be used to represent the value (utility) that the user attaches to the job completion.

Author Base Methods FCFS: First-come, first-served – scheduler will pick the job with oldest submission time in order to maintain fairness regarding job arrival order. SJF: Short (small) job first – jobs are sorted based on the ratio of waiting time and job size. – larger (longer) jobs can tolerate longer waiting time than smaller (shorter) jobs.

Author Utility-based Data Transfer Scheduling

Author Algorithm Description Step 1: Bandwidth Allocation – Allocate the shared bandwidth for different destination – Use max-min fairness approach – Assign the number of TCP connections to different destinations to resolve bandwidth allocation The lowest demand is maximized; only after the lowest demand on the network resource has been satisfied will the second-lowest demand be maximized; and so on.

Author Algorithm description Step 2: Job Prioritizing and Selection – Base job prioritizing methods: First-come, first-serve (FCFS) Short-job-first (SJF) – Use sliding window to select the first W (window size) jobs in the head of queue as candidates for scheduling

Author Algorithm description Step 3: Utility-Based Connection Allocation -Assign each candidate job certain TCP connections to achieve maximum aggregate utility by solving equations: U j (T w +T e ) defines the estimated utility of assigning C j TCP connections to job j, where:

Author Greedy algorithm for connection allocation Initially evenly distribute the total available connections to each job

Author Greedy algorithm for connection allocation Initially evenly distribute the total available connections to each job Conduct connection exchange repeatedly, at which reduce one connection from a job and add it to another job to increase aggregate utility +4

Author Greedy algorithm for connection allocation Initially evenly distribute the total available connections to each job Conduct connection exchange repeatedly, at which reduce one connection from a job and add it to another job to increase aggregate utility Stop when the aggregate utility cannot be increased any more

Author Dsim: Simulation Framework

Author Experiment Setup Simulating 2 hour real job traces from data transfer node(DTN) at Stampede to three different destination DTNs. Categorize jobs into small jobs(≤1G) and large jobs(>1G) Conduct experiments with different numbers of maximum TCP connections varying from 10 to 50. Define equal utility function for each job within category

Author Experiment Setup Scheduling Policies: – FCFS – FCFS-U – SJF – SJF-U Evaluation metrics: – Response time – Data transfer time – Aggregate job utility

Author Experimental results The utility optimization model considerably improves job response time, transfer time and aggregate utility. 34% 48% 64% 52% 74% 12% 149% 54%

Author CDF of Response Time The utility optimization model improves the response time for both small jobs and large jobs

Author CDF of Transfer Time The utility optimization model improves the transfer time except for some small jobs with SJF policy 51%

Author CDF of utility small jobs are more sensitive to the utility decay, the utility optimization model substantially decreases the percentage of zero utility for small jobs

Author Conclusion Designed a utility-based data transfer scheduler to coordinate multiple data transfer requests to improve system performance and overall user satisfactions. Implemented our algorithms in an open-source data transfer scheduling simulator and conducted trace-based simulations using real job traces collected from production computing facilities. The experimental results demonstrate that our utility optimization model considerably improves job response time, transfer time and aggregate utility.

Author Future Work Diverse job types (interactive, batch and real-time jobs with deadlines) Various utility functions for different job types More complex network topology Introducing dynamic external loads

Author Thank You!