1 / 82

Scheduling for Grid Computing

Scheduling for Grid Computing. 龚 斌 山东大学计算机科学与技术学院 山东省高性能计算中心. Reference. Fangpeng Dong and Selim G.Akl : Scheduling Algorithms for Grid Computing : State of the Art and Open Problems Yanmin ZHU : A Survey on Grid Scheduling Systems Peter Gradwell : Overview of Grid Scheduling Systems

milt
Télécharger la présentation

Scheduling for Grid Computing

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Scheduling for Grid Computing 龚 斌 山东大学计算机科学与技术学院 山东省高性能计算中心

  2. Reference • Fangpeng Dong and Selim G.Akl :Scheduling Algorithms for Grid Computing : State of the Art and Open Problems • Yanmin ZHU : A Survey on Grid Scheduling Systems • Peter Gradwell : Overview of Grid Scheduling Systems • Alain Andrieux et al : Open Issues in Grid Scheduling • Jia yu and Rajkumar Buyya : A Taxonomy of Workflow Systems for Grid Computing

  3. 什么是网格? 网格(Grid)是构筑在Internet上的一组新兴技术,它将高速互联网、高性能计算机、大型数据库、传感器、远程设备等融为一体,为科技人员和普通老百姓提供更多的资源。Internet主要为人们提供E-mail、网页浏览等通信功能,而网格功能更多更强,能让人们透明地使用计算、存储、信息处理等其他资源。 1998, The Grid: Blueprint for a New Computing Infrastructure. Ian Foster :美国阿岗国家实验室资深 科学家、美国计算网格项目负责人

  4. The Definition of Grid • A type of parallel and distributed system that enables the sharing, selection, and aggregation of geographically distributed autonomous and heterogeneous resources dynamically at runtime depending on their availability, capability, performance, cost and users’ quality-of-service requirements

  5. Characteristics of Grid Computing • Exploiting underutilized resources • Distributed supercomputing capability • Virtual organization for collaboration • Resource balancing • Reliability

  6. Class of Grid Computing • Function: • Computing Grid • Data Grid • Service Grid • Size: • IntraGrid • ExtraGrid • InterGrid

  7. Traditional Parallel Scheduling Systems • System: • SMP : 对称多处理,共享内存 • Cluster:机群 • CC-NUMA: SGI • Scheduling Systems: • OpenPBS, LSF, SGE,Loadlevel, Condor,etc…

  8. Cluster Scheduling

  9. The Assumption Underlying Tradition Systems • All resources reside within a single administrative domain. • To provide a single system image, the scheduler controls all of the resources. • The resource pool is invariant. • Contention caused by incoming application can be managed by the scheduler according to some policies, so that its impact on the performance that the site can provide to each application can be well predicted. • Computation and their data reside in the same site or data staging is a highly predictable process, usually from a predetermined source to a predetermined destination, which can be viewed as constant overhead.

  10. Characteristics of Cluster Scheduling • Homogeneity of resource and application • Dedicated resource • Centralized scheduling architecture • High-speed interconnection network • Monotonic performance goal

  11. 年代

  12. The Terms of Grid Scheduling • A task is an atomic unit to be scheduled by the scheduler and assigned to a resource. • The properties of a task are parameters like CPU/memory requirement, deadline, priority, etc. • A job (or metatask, or application) is a set of atomic tasks that will be carried out on a set of resources. Job can have a recursive structure, meaning that jobs are composed of sub-jobs and /or tasks, and sub-jobs can themselves be decomposed further into atomic tasks. • A resource is something that is required to carry out an operation, for example: a processor for data processing, a data storage device, or a network link for data transporting. • A site (or node) is an autonomous entity composed of one or multiple resources. • A task scheduling is the mapping of tasks to a selected group of resources which may be distributed in administrative domains.

  13. Three Stages of Scheduling Process • Resource discovering and filtering • Resource selecting and scheduling according to certain objectives • Job submission

  14. Stages of SuperScheduling • Resource Discovery • Authorization Filtering • Application requirement definition • Minimal requirement filtering • System Selection • Gathering information (query) • Select the system (s) to run on • Run Job • (optional) Make an advance reservation • Submit job to resources • Preparation Tasks • Monitor progress (maybe go back to System Selection) • Find out J is done • Completion tasks

  15. Grid Scheduling framework • Application Model • Extracts the characteristics of applications to be scheduled. • Resource Model • Describes the characteristics of the underlying resources in Grid systems. • Performance Model • Responsible for behavior of a specific job on a specific computation resource. • Scheduling Policy • Responsible for deciding how applications should be executed and how resources should be utilized.

  16. Applications Classification • Batch vs. Interactive • Real-time vs. Non real-time • Priority

  17. Resources Classification • Time-shared vs. Non time-shared • Dedicated vs. Non-dedicated • Preemptive vs. Non-preemptive

  18. Performance Estimation • Simulation • Analytical Modeling • Historical Data • On-line Learning • Hybrid

  19. Scheduling Policy • Application-centric • Execution Time : the time duration spent executing the job • Wait Time : the time duration spent waiting in the ready queue • Speedup : the ratio of time spent executing the job on the original platform to time spent executing the job on the Grid. • Turnaround Time : also called response time. It is defined as the sum of waiting time and executing time. • Job Slowdown : it is defined as the ratio of the response time of a job to its actual run time. • System-centric • Throughput : the number of jobs completed in one unit of time, such as per hour or per day. • Utilization : the percent of time a resource is busy. • Flow Time : the flow time of a set of jobs is the sum of completion time of all jobs. • Average Application performance.

  20. Scheduling Strategy • Performance-driven • Market-driven • Trust-driven • Security policy • Accumulated reputation • Self-defense capability • Attack history • Site vulnerability(弱点、攻击)

  21. A logical Grid scheduling architecture Broken lines : resource or application information flows Real lines : task or task scheduling command flows

  22. Grid Scheduler • Grid Scheduler (GS) receives application from Grid users, select feasible resources for these application according to acquired information from the Grid Information Service module, and finally generates application-to-resource mappings based on certain objective functions and predicted resource performance. • GS usually cannot control Grid resources directly, but work like broker or agents • Metascheduler, SuperScheduler • Is not an indispensable component in the Grid infrastructure. Not included in the Globus Tookit • In reality multiple such schedulers might be deployed, and organized to form different structures (centralized, hierarchical and decentralized) according to different concerns, such as performance or scalability.

  23. Grid Information Service (GIS) • To provide such information to Grid schedulers • GIS is responsible for collecting and predicting the resource state information, such as CPU capacities, memory size, network bandwidth, software availabilities and load of a site in a particular period. • GIS can answer queries for resource information or push information subscribers • Globus : Monitoring and Discovery System (MDS) • Application profiling (AP) is used to extract properties of applications • Analogical Benchmarking (AB) provides a measure of how well a resource can perform a given type of job.

  24. Launching and Monitoring (LM) • Binder • Implements a finally-determined schedule by submitting applications to selected resources, staging input data and executables if necessary, and monitoring the execution of the applications • Globus :Grid Resource Allocation and Management, GRAM

  25. Local Resource Manager (LRM) • Is mainly responsible for two jobs: local scheduling inside a resource domain, where not only jobs from exterior Grid users, but also jobs from the domain’s local users are executed, and reporting resource information to GIS. • Open PBS, Condor,LSF,SGE,etc • NWS : Network Weather Service, Hawkeye, Ganglia

  26. Evaluation Criteria for Grid Scheduling Systems • Application Performance Promotion • System Performance Promotion • Scheduling Efficiency • Reliability • Scalability • Applicability to Application and Grid Environment

  27. Scheduler Organization • Centralized • Decentralized • Hierarchical

  28. Centralized Scheduling

  29. Decentralized Scheduling

  30. Hierarchical Scheduling

  31. Existing Grid Scheduling Systems • Information Collection Systems • MDS (Meta Directory Service) • NWS (Network Weather Service) • Condor • Condor-G • AppLeS • Nimrod-G • GRaDS • Etc…

  32. Characteristics of scheduling for Grid Computing • Heterogeneity and Autonomy • Does not have full control of the resources • Hard to estimate the exact cost of executing a task on different sites. • Is required to be adaptive to different local policies • Performance Dynamism • Grid resources are not dedicated to a Grid application • Performance fluctuation, compared with traditional system • Some methods: QoS negotiation, resource reservation, rescheduling • Resource Selection and Computation-Data Separation • In tradition systems, executable codes of application and input/output data are usually in the same site, or the input sources and output destinations determined before the application is submitted, The cost of data staging can be neglected. • Application Diversity

  33. Grid Scheduling Algorithms • The Complexity of a general scheduling problem is NP-Complete. • The scheduling problem becomes more challenging because of some unique characteristics belonging to Grid computing.

  34. A Hierarchical taxonomy for scheduling algorithm

  35. A Taxonomy of Grid Scheduling Algorithm • Local vs. Global • Grid scheduling falls into the global scheduling. • Static vs. Dynamic • Both static and dynamic scheduling are widely adopted in Grid computing

  36. Static Scheduling • Every task comprising the job is assigned once to a resource, the placement of an application is static, and a firm estimate of the cost of the computation can be made in advance of the actual execution. • Easier to program from a scheduler’s point of view • Rescheduling mechanism are introduced for task migration. • Another side-effect is that the gap between static scheduling and dynamic scheduling becomes less important.

  37. Dynamic Scheduling • Online Scheduling • Two Major components : system state estimation , decision making. • Advantage : the system need not be aware of the run-time behavior of the application before execution • The primary performance : maximizing resource utilization, rather than minimizing runtime for individual jobs. • Four basic approaches: • Unconstrained FIFO • Balance-constrained techniques • Cost-constrained techniques • Hybrid of static and dynamic techniques

  38. Unconstrained FIFO • The resource with the currently shortest waiting queue or the smallest waiting queue time is selected for the incoming task • Opportunistic Load Balancing (OLB), or myopic ( 近视) algorithm • Simplicity, but far from optimal

  39. Balance-constrained • Attempts to rebalance the loads on all resources by periodically shifting waiting tasks from one waiting queue to another. • The rebalance only happens inside a “neighborhood” where all resources are better interconnected. • Advantages: • The initial loads can be quickly distributed to all resources and started quickly • The rebalancing process is distributed and scalable • The communication delay of rebalancing can be reduced since task shifting only happens among the resources that are “close” to each other

  40. Cost-constrained • Not only considers the balance among resources but also the communication cost between tasks • Instead of doing a task exchange periodically, tasks will be checked before their move. • This approach is more efficient than the previous one when the communication costs among resources are heterogeneous and communication cost to execute the application is the main consideration • It is also flexible, and can be used with other cost factors such as seeking lowest memory size or lowest disc drive activity, and so on.

  41. Hybrid • A further improvement is the static-dynamic hybrid scheduling • Is to take the advantages of static schedule and at the same time capture uncertain behaviors of applications and resources. • For example, in those cases where there are special QoS requirements in some tasks, the static phase can be used to map those task with QoS requirements, and dynamic scheduling can be used for the remaining tasks.

  42. A Taxonomy of Grid Scheduling Algorithm (cont.) • Optimal vs. Suboptimal • Some criterion : minimum makespan , maximum resource utilization • Makespan : is the time spent from the beginning of the first task in a job to the end of the last task of the job. • The NP-Complete nature of scheduling algorithms • Current research tries to find suboptimal solutions

  43. A Taxonomy of Grid Scheduling Algorithm (cont.) • Approximate vs. Heuristic • Approximate • Use formal computational models, but instead of searching the entire solution space for an optimal solution • The factor: • Availability of a function to evaluate a solution • The time required to evaluate a solution • The ability to judge the value of an optimal solution according to some metric. • Availability of a mechanism for intelligently pruning the solution space. • Heuristic • Represents the class of algorithms which make the most realistic assumptions about a priori knowledge concerning process and system loading characteristics. • are more adaptive to the Grid scenarios where both resources and applications are highly diverse and dynamic

  44. A Taxonomy of Grid Scheduling Algorithm (cont.) • Distributed vs. Centralized • The centralized strategy has the advantage of ease of implementation, but suffers from the lack of scalability, fault tolerance and the possibility of becoming a performance bottleneck.

  45. A Taxonomy of Grid Scheduling Algorithm (cont.) • Cooperative vs. Non-cooperative • In the non-cooperative case, individual schedulers act alone as autonomous entities and arrive at decisions regarding their own optimum objects independent of the effects of the decision on the rest of system. • In the cooperative case, each Grid scheduler has the responsibility to carry out its own portion of the scheduling task, but all schedulers are working toward a common system-wide goal.

  46. Objective Functions • The two major parties in Grid computing • Resource consumers who submit various application • Resources Providers who share their resources • Application Centric • Makespan • Economic Cost • Resource Centric • Resource Utilization • Economic Profit

  47. Application-Centric • Aim to optimize the performance of each individual application, as application-level schedulers do. • time : makespan • Grid economic model : economic cost • QoS : Quality of Services

  48. Resource-Centric • Aim to optimize the performance of the resources • Throughput : which is the ability of a resource to process a certain number of jobs in a given period. • Utilization : which is the percentage of time a resource is busy • Grid economic Model : Economic Profit • TPCC : Total Processor Cycle Consumption, which is the total number of instructions the grid could compute from the starting time of executing the schedule to the completion. • Represents the total computing power consumed by an application • Advantage : it can be little affected by the variance of resource performance, yet still related to the makespan.

  49. Adaptive Scheduling • The demand for scheduling adaptation comes from: • The heterogeneity of candidate resources • The dynamism of resource performance • The diversity of applications • Resource Adaptation • Dynamic Performance Adaptation • Application Adaptation

More Related