Grid Sim Toolkit 3 1 Modelling and Simulation

  • Slides: 31
Download presentation
Grid. Sim Toolkit 3. 1: Modelling and Simulation of Global Grids Dr. Rajkumar Buyya

Grid. Sim Toolkit 3. 1: Modelling and Simulation of Global Grids Dr. Rajkumar Buyya WW Grid Fellow of Grid Computing and Distributed Systems (GRIDS) Lab. Dept. of Computer Science and Software Engineering The University of Melbourne, Australia www. gridbus. org/gridsim/ 1

Presentation Outline • • • Motivation System Architecture Grid. Sim Entities Visual Modeller Advanced

Presentation Outline • • • Motivation System Architecture Grid. Sim Entities Visual Modeller Advanced Reservation Summary 2

Performance Evaluation: With Large Scenarios • Varying the number of ü ü ü ü

Performance Evaluation: With Large Scenarios • Varying the number of ü ü ü ü Resources (1 to 100 s. . 1000 s. . ). Resource capability. Cost (Access Price). Users. Deadline and Budget. Workload. Different Time (Peak and Off-Peak). • We need a repeatable and controllable environment. • Can this be achieved on Real Grid testbed ? 3

Grid Environment • Dynamic: 1. Resource and User Properties vary with time. § Experiment

Grid Environment • Dynamic: 1. Resource and User Properties vary with time. § Experiment cannot be repeated. 2. Resources are distributed and owned by different organisations. Heterogeneous users. § It is hard to create a controllable environment. • Grid testbed size is limited. • Also, creating testbed infrastructure is time consuming and expensive. • Hence, grid computing researchers turn to modelling and simulation. 4

Grid. Sim Toolkit • Grid. Sim 1. 0 released in Dec. 2001 ü Grid.

Grid. Sim Toolkit • Grid. Sim 1. 0 released in Dec. 2001 ü Grid. Sim and Grid. Broker. • Grid. Sim 2. 0 released in Nov. 2002 @ SC 2002. ü Improvements in Grid. Sim and Grid. Broker. ü Add Visual Modeler. • Few functionalities of Grid. Sim: ü Allows modelling of heterogeneous of resources & users. ü Supports simulation of both static & dynamic schedulers. ü Simulates applications with different parallel models. 5

System Architecture Application, User, Grid Scenario’s Input and Results Application Configuration Resource Configuration Visual

System Architecture Application, User, Grid Scenario’s Input and Results Application Configuration Resource Configuration Visual Modeler Grid Scenario . . . Output Grid Resource Brokers or Schedulers Grid. Sim Toolkit Application Modeling Resource Entities Information Services Job Management Resource Allocation Statistics Resource Modeling and Simulation (with Time and Space shared schedulers) Single CPU SMPs Clusters Load Pattern Network Reservation Basic Discrete Event Simulation Infrastructure Sim. Java Distributed Sim. Java Virtual Machine (Java, c. JVM, RMI) PCs Workstations SMPs Clusters Distributed Resources 6

Grid. Sim Entities n #i w er do ag ut an Sh M al

Grid. Sim Entities n #i w er do ag ut an Sh M al gn Si User #i Broker #i Output Scheduler Job Out Queue Jobs Internet Job In Queue Input Process Queue Input Output t or #i ep r R rite W Resource List Information Service R Sta ec tis or ti de cs r# i Applic ation Output Resource #j 7

Grid. Sim Entities Relationship Grid. Sim communication Grid. Information. Service Grid. Resource registration Broker

Grid. Sim Entities Relationship Grid. Sim communication Grid. Information. Service Grid. Resource registration Broker Resource. Characteristics message passing 8

Grid. Sim Resource Extensibility Grid. Resource Grid. Sim Alloc. Policy Advance. Reservation . .

Grid. Sim Resource Extensibility Grid. Resource Grid. Sim Alloc. Policy Advance. Reservation . . . Space. Shared ARPolicy ARSpace. Shared Time. Shared . . . New architecture allows flexibility to add new scheduling policies for AR and non-AR resources. 9

Grid. Sim Entities Communication Model EA EB body() Send(output, data, EB) … … Receive(input,

Grid. Sim Entities Communication Model EA EB body() Send(output, data, EB) … … Receive(input, data, E A) … … Input_EA body() Input_EB … body() … Output_EA Output_EB body() … er eliv data 2) @t body() … (D data, t 2 Timed Event Delivery 10

Time Shared: Multitasking and Multiprocessing Tasks on PEs/CPUs P 1 -G 1 P 1

Time Shared: Multitasking and Multiprocessing Tasks on PEs/CPUs P 1 -G 1 P 1 -G 2 P 3 -G 2 PE 2 G 2 PE 1 G 1 G 2 Gridlet 1 (10 MIs) P 1 -G 3 G 2 6 2 G 1 G 3 G 2 P 2 -G 3 P 2 -G 2 9 G 3 12 G 1 F 16 G 2 F 19 22 G 3 F 26 Time G 1: Gridlet 1 Arrives G 1 F: Gridlet 1 Finishes G 2 Gridlet 2 (8. 5 MIs) P 1 -G 2: Gridlet 2 didn’t finish at the 1 st prediction time. G 3 Gridlet 3 (9. 5 MIs) P 2 -G 2: Gridlet 2 finishes at the 2 nd prediction time. 11

Space Shared: Multicomputing Tasks on PEs/CPUs P 1 -G 1 P 1 -G 2

Space Shared: Multicomputing Tasks on PEs/CPUs P 1 -G 1 P 1 -G 2 P 1 -G 3 G 2 PE 1 G 3 G 1 6 2 G 1 G 3 G 2 Gridlet 1 (10 MIs) 9 G 3 12 G 1 F G 2 F 16 19 22 G 3 F 26 Time G 1: Gridlet 1 Arrives G 1 F: Gridlet 1 Finishes G 2 G 3 Gridlet 2 (8. 5 MIs) P 1 -G 2: Gridlet 2 finishes as per the 1 st Predication Gridlet 3 (9. 5 MIs) 12

Visual Modeler • Available in Grid. Sim 2. 0 • Functionalities: ü Create and

Visual Modeler • Available in Grid. Sim 2. 0 • Functionalities: ü Create and delete many users and resources. ü Able to save and load the model file (XML format). ü Generate Java source code. 13

Main Window of Visual Modeler 14

Main Window of Visual Modeler 14

View User Property Dialog 15

View User Property Dialog 15

View Resource Property Dialog 16

View Resource Property Dialog 16

Grid. Sim with AR capability n Grid. Sim 3. 0 has the framework to

Grid. Sim with AR capability n Grid. Sim 3. 0 has the framework to handle: 1. 2. 3. 4. 5. 6. Creation of a new reservation Commitment of a new resevation Activation of a reservation once it is started Modification of an existing reservation Cancellation of an existing reservation Query of an existing reservation 17

State Transition Diagram for AR Request Accepted Request Rejected Commit Expired Rejected Accepted Commit

State Transition Diagram for AR Request Accepted Request Rejected Commit Expired Rejected Accepted Commit Accepted Change Specification Committed Change Request Change Accepted / Rejected Start Time Cancellation Request Active Cancelled Finish Time Termination Request Completed Terminated 18

1. Create a New Reservation Required information: n 1. 2. 3. 4. n n

1. Create a New Reservation Required information: n 1. 2. 3. 4. n n Start time Duration time or Finish time Number of Processing Elements (PEs) Designated resource id If successful: returns booking id (res. ID_reserv. ID) e. g. 8_1 & expiry time If not successful: returns approx. busy time interval (1, 5, 15, 30, 45 seconds or minutes) 19

Steps of making a reservation Create a Request Send to Resource YES Receive Request

Steps of making a reservation Create a Request Send to Resource YES Receive Request Check for conflicts NO Generate Reservation Booking ID Request Result User or Broker Add to List Alloc. Policy 20

Finding Empty Slots If (reservation list is empty) then accept reservation & put into

Finding Empty Slots If (reservation list is empty) then accept reservation & put into the list Else Find the begin and end interval in the list Find the exact slot for a new reservation Find empty slot 1. 2. 3. 1. 2. Remove redundant reservations Calculate total PE used during the interval 21

2. Commit a Reservation If a request for reservation has been successful, then need

2. Commit a Reservation If a request for reservation has been successful, then need to commit or to confirm it before an expiry time When committing a reservation, need to submit: n n 1. 2. Booking ID Job or a list of jobs 22

3. Activation of a Reservation n Once a reservation has committed: n n Put

3. Activation of a Reservation n Once a reservation has committed: n n Put the job(s) into a queue list Set the timer Send event to itself Once the time is up: n If PEs are full, then: n n n Remove unreserved jobs Remove reserved jobs that run longer than duration Look through the queue list and move into execution list 23

4. Modification of a Reservation n Required information: 1. 2. 3. 4. n n

4. Modification of a Reservation n Required information: 1. 2. 3. 4. n n Start time Duration time or Finish time Number of Processing Elements (PEs) Booking ID At the moment, only able to reduce reservation Important: If modification fails, the original reservation must not be lost. 24

5. Cancellation of a Reservation n Required information: n n n Booking ID Resource

5. Cancellation of a Reservation n Required information: n n n Booking ID Resource ID Cancellation issues: n n Before a reservation has been committed Before a reservation has been activated During an active After a reservation has been finished 25

6. Query of a Reservation n Required information: n n n Booking ID Resource

6. Query of a Reservation n Required information: n n n Booking ID Resource ID Status: n n n NOT_STARTED ACTIVE FINISHED CANCELED EXPIRED 26

Grid. Sim 3. 1: Advanced Networking 27

Grid. Sim 3. 1: Advanced Networking 27

Grange. Net and Grid Modelling 28

Grange. Net and Grid Modelling 28

Selected Grid. Sim Users 29

Selected Grid. Sim Users 29

Contributors n n n n Rajkumar Buyya (Melbourne) Manzur Murshed (Monash) Anthony Sulistio (Melbourne)

Contributors n n n n Rajkumar Buyya (Melbourne) Manzur Murshed (Monash) Anthony Sulistio (Melbourne) - maintainer Chee Shin Yeo (Melbourne) Chen-Khong Tham (Singapore) Gokul Poduval (Singapore) A student Slovenia – Data Grid 30

Conclusion • Grid. Sim toolkit is suitable for application scheduling simulations in Grid computing

Conclusion • Grid. Sim toolkit is suitable for application scheduling simulations in Grid computing environment. • Grid. Sim is available to download: www. gridbus. org 31