 Escalonamento e Migração de Recursos e Balanceamento de carga 27-04-20151 Carlos Ferrão Lopes nº M6935 Bruno Simões nº M6082 Celina Alexandre nº M6807.

Slides:



Advertisements
Similar presentations
CPU Scheduling.
Advertisements

Exploiting Deadline Flexibility in Grid Workflow Rescheduling Wei Chen Alan Fekete Young Choon Lee.
Energy-efficient Task Scheduling in Heterogeneous Environment 2013/10/25.
Scheduling in Distributed Systems Gurmeet Singh CS 599 Lecture.
Resource Management §A resource can be a logical, such as a shared file, or physical, such as a CPU (a node of the distributed system). One of the functions.
Using Parallel Genetic Algorithm in a Predictive Job Scheduling
ISE480 Sequencing and Scheduling Izmir University of Economics ISE Fall Semestre.
Distributed Process Scheduling Summery Distributed Process Scheduling Summery BY:-Yonatan Negash.
Adaptive Scheduling with QoS Satisfaction in Hybrid Cloud Environment 研究生:李羿慷 指導老師:張玉山 老師.
A Grid Resource Broker Supporting Advance Reservations and Benchmark- Based Resource Selection Erik Elmroth and Johan Tordsson Reporter : S.Y.Chen.
Scheduling in Batch Systems
CS 3013 & CS 502 Summer 2006 Scheduling1 The art and science of allocating the CPU and other resources to processes.
Design and Performance Evaluation of Queue-and-Rate-Adjustment Dynamic Load Balancing Policies for Distributed Networks Zeng Zeng, Bharadwaj, IEEE TRASACTION.
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.
Fault-tolerant Adaptive Divisible Load Scheduling Xuan Lin, Sumanth J. V. Acknowledge: a few slides of DLT are from Thomas Robertazzi ’ s presentation.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 6: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms.
High Performance Computing 1 Parallelization Strategies and Load Balancing Some material borrowed from lectures of J. Demmel, UC Berkeley.
1 Introduction to Load Balancing: l Definition of Distributed systems. Collection of independent loosely coupled computing resources. l Load Balancing.
Wk 2 – Scheduling 1 CS502 Spring 2006 Scheduling The art and science of allocating the CPU and other resources to processes.
Distributed Process Management1 Learning Objectives Distributed Scheduling Algorithms Coordinator Elections Orphan Processes.
Summary :- Distributed Process Scheduling Prepared BY:- JAYA KALIDINDI.
1 Reasons for parallelization Can we make GA faster? One of the most promising choices is to use parallel implementations. The reasons for parallelization.
Authors: Weiwei Chen, Ewa Deelman 9th International Conference on Parallel Processing and Applied Mathmatics 1.
 Scheduling  Linux Scheduling  Linux Scheduling Policy  Classification Of Processes In Linux  Linux Scheduling Classes  Process States In Linux.
Chapter 4 Processor Management
1 Distributed Operating Systems and Process Scheduling Brett O’Neill CSE 8343 – Group A6.
Network Aware Resource Allocation in Distributed Clouds.
ROBUST RESOURCE ALLOCATION OF DAGS IN A HETEROGENEOUS MULTI-CORE SYSTEM Luis Diego Briceño, Jay Smith, H. J. Siegel, Anthony A. Maciejewski, Paul Maxwell,
1 Distributed Process Scheduling: A System Performance Model Vijay Jain CSc 8320, Spring 2007.
© Oxford University Press 2011 DISTRIBUTED COMPUTING Sunita Mahajan Sunita Mahajan, Principal, Institute of Computer Science, MET League of Colleges, Mumbai.
A Survey of Distributed Task Schedulers Kei Takahashi (M1)
Stochastic DAG Scheduling using Monte Carlo Approach Heterogeneous Computing Workshop (at IPDPS) 2012 Extended version: Elsevier JPDC (accepted July 2013,
Silberschatz and Galvin  Operating System Concepts Module 5: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor.
Summary :-Distributed Process Scheduling Prepared By:- Monika Patel.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 6: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms.
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.
MROrder: Flexible Job Ordering Optimization for Online MapReduce Workloads School of Computer Engineering Nanyang Technological University 30 th Aug 2013.
Design Issues of Prefetching Strategies for Heterogeneous Software DSM Author :Ssu-Hsuan Lu, Chien-Lung Chou, Kuang-Jui Wang, Hsiao-Hsi Wang, and Kuan-Ching.
Dzmitry Kliazovich University of Luxembourg, Luxembourg
Static Process Scheduling
Pipelined and Parallel Computing Partition for 1 Hongtao Du AICIP Research Nov 3, 2005.
Ensieea Rizwani An energy-efficient management mechanism for large-scale server clusters By: Zhenghua Xue, Dong, Ma, Fan, Mei 1.
Genetic algorithms for task scheduling problem J. Parallel Distrib. Comput. (2010) Fatma A. Omara, Mona M. Arafa 2016/3/111 Shang-Chi Wu.
Distributed Scheduling Motivations: reduce response time of program execution through load balancing Goal: enable transparent execution of programs on.
Name : Mamatha J M Seminar guide: Mr. Kemparaju. GRID COMPUTING.
1 Performance Impact of Resource Provisioning on Workflows Gurmeet Singh, Carl Kesselman and Ewa Deelman Information Science Institute University of Southern.
Basic Concepts Maximum CPU utilization obtained with multiprogramming
Scheduling Algorithms Performance Evaluation in Grid Environments R, Zhang, C. Koelbel, K. Kennedy.
lecture 5: CPU Scheduling
Introduction to Load Balancing:
Conception of parallel algorithms
CS 425 / ECE 428 Distributed Systems Fall 2016 Nov 10, 2016
Ching-Chi Lin Institute of Information Science, Academia Sinica
Chapter 16: Distributed System Structures
Chapter 6: CPU Scheduling
Namyoon Woo and Heon Y. Yeom
CPU Scheduling G.Anuradha
Module 5: CPU Scheduling
3: CPU Scheduling Basic Concepts Scheduling Criteria
Chapter5: CPU Scheduling
Chapter 6: CPU Scheduling
Load Balancing/Sharing/Scheduling Part II
Chapter 6: CPU Scheduling
Chapter 5: CPU Scheduling
Research on Embedded Hypervisor Scheduler Techniques
Chapter 6: CPU Scheduling
Module 5: CPU Scheduling
Chapter 6: CPU Scheduling
Chapter 6: CPU Scheduling
Module 5: CPU Scheduling
Presentation transcript:

 Escalonamento e Migração de Recursos e Balanceamento de carga Carlos Ferrão Lopes nº M6935 Bruno Simões nº M6082 Celina Alexandre nº M6807 Paulo Cabral nº M6765 Quoc nº M6831 Tecnologias de Cloud e Datacenter Professor Doutor Nuno M. Garcia

Overview 1. Stagger 2. Migration 3. Load Balancing

Overview 1. Stagger 2. Scheduling Tasks 2.1. Algorithms Hetergeneous Earliest Finish Time (HEFT) 2.2. Algorithms Path Clustering Heuristic (PCH) 2.3 Scheduling algorithms for the comparison study

Overview (Cont.) 3. Scheduling Procedure 3.1. Process Scheduling in Distributed System

What is Scheduling?  A system that uses multi-programming processes compete for processing, as they require dividing the execution time of each

Scheduling problem  Problem workflow scheduling a set of dependent services:  Order of precedence of services;  Costs of performance of the services;  Communication costs between services;  Resource processing capabilities;  Data transmission capabilities of network connections, which interconnect these resources;

Scheduling algorithm Rating Rating scheduling methods

Scheduling tasks  dependent  independent

Heterogeneous Earliest Finish Time Algorithm (HEFT)  Algorithm Workflow escalation  Using an acyclic digraph (DAG 1 ) for a limited number of heterogeneous computers.  Task scheduling problem is NP-hard DAG - Directed acyclic graph 9

Heterogeneous Earliest Finish Time Algorithm (HEFT) (Cont.)  The HEFT consists of two main phases:  Prioritization phase  Selection phase

Prioritization phase  Each task should be prioritized considering the length of the critical path;  The list of tasks to be performed is then sorted in descending order of the critical path length;  A topological sorting is produced tasks, preserving the precedence constraints of the DAG;

Selection Phase  To select which processor will perform a given task, calculating the earliest time of completion of a given task. With HEFT algorithm, the search for a vacant time slot on a processor P starts from the moment that the processor P becomes vacant

Path Heuristic Clustering Algorithm (PCH)  Clustering uses the technique to create groups (clusters) tasks;  Groups the ways of the DAG, thus reducing communication costs between tasks;  The tasks of the same cluster are scheduled on the same resource;

Path Heuristic Clustering Algorithm (PCH) (Cont.)  Uses some attributes calculated for each task, estimating the start times (DS = Earliest Start Time) and end (EFT - Estimated Finish Time) of tasks and process;  EST and EFT are calculated using information that is provided by the middleware and the programming model;

Path Heuristic Clustering Algorithm (PCH) (Cont.) Example scheduling using the PCH

Scheduling algorithms for the comparison study  Applications used:  Application Montage 1  Application Epigenomics is used to generate personalized sky mosaics using multiple points of input images. 2 is used to mapping of epigenetic state of human cells on a large scale genomics. 16

Analysis Applications Representation of epigenomics application used in the simulation. Representation of montage application used in the simulation.

Architecture  Were also specified two sets: homogeneous and heterogeneous;  Have been implemented in addition to the scheduling algorithms HEFT, CPOP and PCH, a FIFO type of scheduling;

Architecture (Cont.) Architecture

Architecture (Cont.) Computing power table

Experimental Results  Applications to the Montage  We observed that the FIFO strategy only performs well in homogeneous architecture.  The PCH algorithm does not perform well in both architectures.  The algorithms HEFT and CPOP perform well in both architectures with an almost negligible difference

Analysis Applications Workload simulation result Montage with a set Homogeneous Workload simulation result Montage with a set Heterogeneous Makespan – The time difference between the beginning and end of a sequence of jobs or tasks 22

Experimental Results  Applications to Epigenomics  The PCH algorithm improves performance in this type of application.  The CPOP algorithm preserves the good performance in both architectures.  The HEFT algorithm performs well in heterogeneous architecture, but in the homogeneous architecture not

Analysis Applications Workload simulation result Epigenomics with a set Homogeneous Workload simulation result Epigenomics with a set Heterogeneous Makespan – The time difference between the beginning and end of a sequence of jobs or tasks 24

Conclusions  A FIFO strategy is appropriate only in homogeneous architectures.  In heterogeneous architectures it takes a study of both computational resources and tasks.  The HEFT and CPOP algorithms showed good performance and at the same time like in Montage application, while SHP not.  In applications with equipment that prevents the performance in a continuous process, such as montage application, it is not convenient grouping of tasks

Scheduling Procedure  A multi-programming computer has multiple processes running simultaneously, however, that all processes can not access the CPU at a time and so there is a fair way of implementation of these processes, an algorithm was created to organize tasks

Process Scheduling in Distributed System  Heterogeneity of the nodes prevents equal distribution;  In addition to the tasks to be performed it is necessary to:  Processing power;  Unemployment level;  If you are in possession of information:  Weight of tasks;  Estimated processing time;

Information nodes  Physical characteristics: speed, memory, processor type  Degree of idleness of each node: the processing power is being used;

Measure the level of unemployment  Average waiting time in the run queue  Problem: Priority difference of tasks;  Generate CPU utilization rate  Problem: to test specific process from time to time;

Measure the level of unemployment (Cont.)  Problem General: update frequency  Excessive Update: scheduling algorithm becomes main consumer;  Insufficient Update: wrong choice of a node;  Algorithms:  Static scheduling;  Scheduling dynamic  Adaptive scheduling;

Scheduling static  Assessment of conditions of the nodes is done once;  Data are used during the entire process;

Dynamic Scheduling  Constant analysis of the nodes characteristics:  Waiting time in the CPU queue: little processing;  CPU Utilization: Small background processes making continuous testing;

Adaptive Scheduling:  Dynamic Scheduling special case;  You can adjust the intensity of CPU consumption:  May fail to perform some tests

Overhead  Distributed memory: high cost in exchange of information between nodes;  Can occur over communications and performance problems:  Nodes are communicating longer than processing;

Algorithms of classification according to the policy  You can sort scheduling algorithms under policies:  Transfer policy: determining a suitable node to receive tasks;  Selection Policy: determine the most appropriate task to be sent to a node;  Location Policy: determine the most appropriate node to receive a given task;  Information Policy: determine storage location of information and frequency of update

Transfer Policy  Determine a receiver node: node is working below its processing capacity;  Is defined maximum load supported by each node;

Transfer Policy (Cont.)  Problem: donor sends a task to a receiver that immediately becomes a donor:  Task switching is done indefinitely.  Is defined maximum load supported by each node;  Solution: Consider a donor node whose load is less than the limit and will continue to be less than or equal after receiving the task;

Selection Policy  Determine a task to be sent when a node is overloaded or eligible to receive;  In an overloaded node:  Select the task that caused the overload;

Selection Policy (Cont.)  Preemptive scheduling:  A task already running can be transferred to another node;  High transfer costs of the task context (ex.: data in memory);  Usually picks up recently started tasks;  Non-Preemptive Scheduling:  Only tasks that have not yet implemented can be transferred;

Location Policy  Select node to receive a task;  Random method (most commonly used):  Node randomly chooses another node;  Problem: chances of choosing a node in the same situation;  Immediate solution: test if selected node is receiver;  Solution "better": vote between selected nodes. Generates excessive communication

Information Policy  Corresponds to the exchange of information on their status across multiple nodes:  Local storage: a specific node receives all the status messages of others.  Broadcast: each node sends to others;  Sub-demand: each node has information about you. Information about others only when it becomes donor or recipient

Scheduling algorithms  Started by the donor:  The node that has a donor in accordance with the transfer policy utilized, looking for a receiver;  Algorithm Random (most common), making the choice of a single receptor twice.  Sub-demand: each node has information about you. Information about others only when it becomes donor or recipient

Scheduling algorithms (Cont.)  Started by the receiver:  The receiver node calls tasks to process;  Most advantageous approach: unoccupied node has more time to choose a suitable donor;