Sie sind auf Seite 1von 31

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

www.gridbus.org/gridsim/

Presentation Outline
Motivation System Architecture GridSim Entities Visual Modeller Advanced Reservation Summary

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 ?
3

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.

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.
5

System Architecture
Application, User, Grid Scenarios Input and Results
Application Configuration Resource Configuration Visual Modeler Grid Scenario

...

Output

Grid Resource Brokers or Schedulers GridSim 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


SimJava Distributed SimJava

Virtual Machine (Java, cJVM, RMI)


PCs Workstations
SMPs Clusters Distributed Resources

GridSim Entities

User #i Broker #i Output


Scheduler Appli cation
Jobs

Output Resource #j
Job Out Queue

Internet Input Input

Job In Queue

Process Queue

Output
Resource List

Input

Information Service

GridSim Entities Relationship


GridSim communication GridInformationService

GridResource registration Broker ResourceCharacteristics

message passing
8

GridSim Resource Extensibility


GridSim GridResource

AllocPolicy AdvanceReservation

...
SpaceShared ARPolicy TimeShared ARSpaceShared

...
9

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

GridSim Entities Communication Model


EA
body() Send(output, data, EB) Input_EA

EB
body()
Receive(input, data, EA) Input_EB body()

body()

Output_EA body() Output_EB body()

data, t2 Timed Event Delivery

10

Time Shared: Multitasking and Multiprocessing


Tasks on PEs/CPUs
P1-G1 P1-G2 P3-G2 P2-G3 P2-G2 P1-G3

PE2 PE1
2 G1 G2

G2 G1
6 G3

G3 G2 G2
9 G1F 12

G3

16 G2F

19 G3F

22

26

Time

G1 G2 G3

Gridlet1 (10 MIs)

G1: Gridlet1 Arrives G1F: Gridlet1 Finishes

Gridlet2 (8.5 MIs) Gridlet3 (9.5 MIs)

P1-G2: Gridlet2 didnt finish at the 1st prediction time. P2-G2: Gridlet2 finishes at the 2nd prediction time.

11

Space Shared: Multicomputing


Tasks on PEs/CPUs
P1-G1 P1-G2 P1-G3

PE2 PE1
2 G1 G2 Gridlet1 (10 MIs)

G2 G1
6 G3 9 G1F 12 G2F

G3 G3
16 19 G3F 22 26

Time

G1 G2 G3

G1: Gridlet1 Arrives G1F: Gridlet1 Finishes

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

12

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.

13

Main Window of Visual Modeler

14

View User Property Dialog

15

View Resource Property Dialog

16

GridSim with AR capability

GridSim 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
Request Rejected

Request Accepted

Commit Expired

Rejected
Commit Accepted

Accepted

Change Specification

Committed
Change Accepted / Rejected
Start Time Cancellation Request

Change Request

Active
Finish Time Termination Request

Cancelled

Completed

Terminated
18

1. Create a New Reservation

1. 2.

Required information:
Start time Duration time or Finish time Number of Processing Elements (PEs) Designated resource id

3.
4.

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)

19

Steps of making a reservation


Create a Request Send to Resource Receive Request

YES

Check for conflicts

NO
Generate Reservation Booking ID

Request Result

Add to List

User or Broker

AllocPolicy

20

Finding Empty Slots


If (reservation list is empty) then accept reservation & put into the list Else
1.

2.
3.
1.

Find the begin and end interval in the list Find the exact slot for a new reservation Find empty slot
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 to commit or to confirm it before an expiry time When committing a reservation, need to submit:
1. 2.

Booking ID Job or a list of jobs

22

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
23

4. Modification of a Reservation

Required information:
1. 2. 3. 4.

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

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
25

6. Query of a Reservation

Required information:

Booking ID Resource ID

Status:

NOT_STARTED ACTIVE FINISHED CANCELED EXPIRED


26

GridSim 3.1: Advanced Networking

27

GrangeNet and Grid Modelling

28

Selected GridSim Users

29

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
30

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

31

Das könnte Ihnen auch gefallen