Grid Sim

31
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 www.gridbus.org/gridsim/ WW Grid

Transcript of Grid Sim

Page 1: Grid Sim

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 EngineeringThe University of Melbourne, Australia

www.gridbus.org/gridsim/

WW Grid

Page 2: Grid Sim

2

Presentation Outline

• Motivation• System Architecture• GridSim Entities• Visual Modeller• Advanced Reservation• Summary

Page 3: Grid Sim

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 ?

Page 4: Grid Sim

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.

Page 5: Grid Sim

5

GridSim Toolkit• GridSim 1.0 released in Dec. 2001

GridSim and GridBroker.

• GridSim 2.0 released in Nov. 2002 @ SC 2002. 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.

Page 6: Grid Sim

6

System Architecture

Basic Discrete Event Simulation Infrastructure

Virtual Machine (Java, cJVM, RMI)

PCs ClustersWorkstations

. . .

SMPs Distributed Resources

GridSim Toolkit

Application Modeling

InformationServices

Resource Allocation

Grid Resource Brokers or Schedulers

Statistics

Resource Modeling and Simulation (with Time and Space shared schedulers)

Job Management

ClustersSingle CPU ReservationSMPs Load Pattern

Application Configuration

Resource Configuration

Visual Modeler

Grid Scenario

Network

SimJava Distributed SimJava

Resource Entities

Output

Application, User, Grid Scenario’s Input and Results

Page 7: Grid Sim

7

GridSim Entities

JobsApplication

Scheduler

User #i Broker #i Output

Input

Output

Input

Resource #j

Job In Queue

Job Out QueueProcess Queue

Resource List

InformationService

Internet

Report

Writer #i

Statis

tics

Recor

der #i

Shutdown

Signal Manager #i

InputOutput

Page 8: Grid Sim

8

GridSim Entities Relationship

GridSimGridInformationService

GridResource

ResourceCharacteristics

Broker

communication

registration

message passing

Page 9: Grid Sim

9

GridSim Resource Extensibility

GridResource

AllocPolicy

TimeSharedSpaceShared ARPolicy

ARSpaceShared

GridSim

AdvanceReservation

New architecture allows flexibility to add new scheduling policies for AR and non-AR resources.

. . .

. . .

Page 10: Grid Sim

10

EA

Output_EA

Input_EA

EB

Output_EB

Input_EB

body()

Send(output, data, EB)……

body()

body()

…body() …

body()

body()

Receive(input, data, EA)……

Timed Event Delivery

data, t2

(Deliver data @ t2)

GridSim Entities Communication Model

Page 11: Grid Sim

11

Time Shared: Multitasking and Multiprocessing

PE1

PE2

G1

G2

G3

G1

G2G2

G2

G3G3

P1-G2P1-G1 P3-G2 P1-G3P2-G3

TimeG1

G1: Gridlet1 Arrives

G1FG3

G1F: Gridlet1 Finishes

G2 G2F G3F

Gridlet1 (10 MIs)

Gridlet2 (8.5 MIs)

Gridlet3 (9.5 MIs) P2-G2: Gridlet2 finishes at the 2nd prediction time.

P1-G2: Gridlet2 didn’t finish at the 1st prediction time.

Tasks onPEs/CPUs

2 6 9 12 16 19 2622

P2-G2

Page 12: Grid Sim

12

Space Shared: Multicomputing

G1

G2

G3

G1 G3

G2 G3

P1-G1 P1-G2 P1-G3

TimeG1

G1: Gridlet1 Arrives

G1FG3

G1F: Gridlet1 Finishes

G2 G2F G3F

Gridlet1 (10 MIs)

Gridlet2 (8.5 MIs)

Gridlet3 (9.5 MIs)P1-G2: Gridlet2 finishes as per the 1st Predication

Tasks onPEs/CPUs

2 6 9 12 16 19 2622

PE1

PE2

Page 13: Grid Sim

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.

Page 14: Grid Sim

14

Main Window of Visual Modeler

Page 15: Grid Sim

15

View User Property Dialog

Page 16: Grid Sim

16

View Resource Property Dialog

Page 17: Grid Sim

17

GridSim with AR capability

GridSim 3.0 has the framework to handle:

1. Creation of a new reservation2. Commitment of a new resevation3. Activation of a reservation once it is

started4. Modification of an existing reservation5. Cancellation of an existing reservation6. Query of an existing reservation

Page 18: Grid Sim

18

State Transition Diagram for AR

Request

Rejected Accepted

Change RequestCommitted

CancelledActive

Completed Terminated

Request Accepted

Request Rejected

Commit Expired

Cancellation

Request

Change Specification

Change Accepted / Rejected

Finish Time

Start Time

Termination Request

Commit Accepted

Page 19: Grid Sim

19

1. Create a New Reservation Required information:

1. Start time2. Duration time or Finish time3. 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)

Page 20: Grid Sim

20

Steps of making a reservation

Create a Request

Request Result

Send to Resource

GenerateReservation Booking ID

Check for conflicts

Receive Request

NO

YES

Add to List

User or Broker AllocPolicy

Page 21: Grid Sim

21

Finding Empty SlotsIf (reservation list is empty) then accept

reservation & put into the listElse

1. Find the begin and end interval in the list2. Find the exact slot for a new reservation3. Find empty slot

1. Remove redundant reservations2. Calculate total PE used during the interval

Page 22: Grid Sim

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 ID2. Job or a list of jobs

Page 23: Grid Sim

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

Page 24: Grid Sim

24

4. Modification of a Reservation

Required information:1. Start time2. Duration time or Finish time3. 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.

Page 25: Grid Sim

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

Page 26: Grid Sim

26

6. Query of a Reservation

Required information: Booking ID Resource ID

Status: NOT_STARTED ACTIVE FINISHED CANCELED EXPIRED

Page 27: Grid Sim

27

GridSim 3.1: Advanced Networking

Page 28: Grid Sim

28

GrangeNet and Grid Modelling

Page 29: Grid Sim

29

Selected GridSim Users

Page 30: Grid Sim

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

Page 31: Grid Sim

31

Conclusion

• GridSim toolkit is suitable for application scheduling simulations in Grid computing environment.

• GridSim is available to download:www.gridbus.org