Presentation on theme: "1 GridSim Toolkit 3.1: Modelling and Simulation of Global Grids Dr. Rajkumar Buyya Fellow of Grid Computing Grid Computing and Distributed Systems (GRIDS)"— Presentation transcript:
1 GridSim Toolkit 3.1: Modelling and Simulation of Global Grids Dr. Rajkumar Buyya Fellow of Grid Computing Grid Computing and Distributed Systems (GRIDS) Lab. Dept. of Computer Science and Software Engineering The University of Melbourne, Australia WW Grid
3 Performance Evaluation: With Large Scenarios Varying the number of Resources (1 to 100s..1000s..). 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 ?
4 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.
5 GridSim Toolkit GridSim 1.0 released in Dec GridSim and GridBroker. GridSim 2.0 released in Nov. SC Improvements in GridSim and GridBroker. Add Visual Modeler. Few functionalities of GridSim: Allows modelling of heterogeneous of resources & users. Supports simulation of both static & dynamic schedulers. Simulates applications with different parallel models.
6 System Architecture Basic Discrete Event Simulation Infrastructure Virtual Machine (Java, cJVM, RMI) PCs Clusters Workstations... SMPs Distributed Resources GridSim Toolkit Application Modeling Information Services Resource Allocation Grid Resource Brokers or Schedulers Statistics Resource Modeling and Simulation (with Time and Space shared schedulers) Job Management ClustersSingle CPUReservationSMPsLoad Pattern Application Configuration Resource Configuration Visual Modeler Grid Scenario Network SimJavaDistributed SimJava Resource Entities Output Application, User, Grid Scenarios Input and Results
7 GridSim Entities Jobs Appli cation Scheduler User #i Broker #i Output Input Output Input Resource #j Job In Queue Job Out Queue Process Queue Resource List Information Service Internet Report Writer #i Statistics Recorder #i Shutdown Signal Manager #i Input Output
9 GridSim Resource Extensibility GridResource AllocPolicy TimeSharedSpaceSharedARPolicy ARSpaceShared GridSim AdvanceReservation New architecture allows flexibility to add new scheduling policies for AR and non-AR resources....
10 EAEA Output_E A Input_E A EBEB Output_E B Input_E B body() Send(output, data, E B ) … body() … … … … Receive(input, data, E A ) … Timed Event Delivery data, t2 (Deliver t2) GridSim Entities Communication Model
11 Time Shared: Multitasking and Multiprocessing PE1 PE2 G1 G2 G3 G1 G2 G3 P1-G2 P1-G1 P3-G2P1-G3P2-G3 Time G1 G1: Gridlet1 Arrives G1FG3 G1F: Gridlet1 Finishes G2G2FG3F Gridlet1 (10 MIs) Gridlet2 (8.5 MIs) Gridlet3 (9.5 MIs) P2-G2: Gridlet2 finishes at the 2 nd prediction time. P1-G2: Gridlet2 didnt finish at the 1 st prediction time. Tasks on PEs/CPUs P2-G2
12 Space Shared: Multicomputing G1 G2 G3 G1G3 G2G3 P1-G1 P1-G2P1-G3 Time G1 G1: Gridlet1 Arrives G1FG3 G1F: Gridlet1 Finishes G2G2FG3F Gridlet1 (10 MIs) Gridlet2 (8.5 MIs) Gridlet3 (9.5 MIs) P1-G2: Gridlet2 finishes as per the 1 st Predication Tasks on PEs/CPUs PE1 PE2
13 Visual Modeler Available in GridSim 2.0 Functionalities: Create and delete many users and resources. Able to save and load the model file (XML format). Generate Java source code.
14 Main Window of Visual Modeler
15 View User Property Dialog
16 View Resource Property Dialog
17 GridSim with AR capability GridSim 3.0 has the framework to handle: 1. Creation of a new reservation 2. Commitment of a new resevation 3. Activation of a reservation once it is started 4. Modification of an existing reservation 5. Cancellation of an existing reservation 6. Query of an existing reservation
18 State Transition Diagram for AR Request Rejected Accepted Change Request Committed CancelledActive CompletedTerminated Request Accepted Request Rejected Commit Expired Cancellation Request Change Specification Change Accepted / Rejected Finish Time Start Time Termination Request Commit Accepted
19 1. Create a New Reservation Required information: 1. Start time 2. Duration time or Finish time 3. Number of Processing Elements (PEs) 4. Designated resource id If successful: returns booking id (resID_reservID) e.g. 8_1 & expiry time If not successful: returns approx. busy time interval (1, 5, 15, 30, 45 seconds or minutes)
20 Steps of making a reservation Create a Request Request Result Send to Resource Generate Reservation Booking ID Check for conflicts Receive Request NO YES Add to List User or BrokerAllocPolicy
21 Finding Empty Slots If (reservation list is empty) then accept reservation & put into the list Else 1. Find the begin and end interval in the list 2. Find the exact slot for a new reservation 3. Find empty slot 1. Remove redundant reservations 2. Calculate total PE used during the interval
22 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: 1. Booking ID 2. Job or a list of jobs
23 3. Activation of a Reservation Once a reservation has committed: Put the job(s) into a queue list Set the timer Send event to itself Once the time is up: If PEs are full, then: Remove unreserved jobs Remove reserved jobs that run longer than duration Look through the queue list and move into execution list
24 4. Modification of a Reservation Required information: 1. Start time 2. Duration time or Finish time 3. Number of Processing Elements (PEs) 4. Booking ID At the moment, only able to reduce reservation Important: If modification fails, the original reservation must not be lost.
25 5. Cancellation of a Reservation Required information: Booking ID Resource ID Cancellation issues: Before a reservation has been committed Before a reservation has been activated During an active After a reservation has been finished
26 6. Query of a Reservation Required information: Booking ID Resource ID Status: NOT_STARTED ACTIVE FINISHED CANCELED EXPIRED
27 GridSim 3.1: Advanced Networking
28 GrangeNet and Grid Modelling
29 Selected GridSim Users
30 Contributors 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
31 Conclusion GridSim toolkit is suitable for application scheduling simulations in Grid computing environment. GridSim is available to download: