• 沒有找到結果。

In chapter 4.1 we will introduce GridSim simulation tool; 4.2 will introduce the simulation environment, models, and three types of jobs used in the experiment.

4.1 Introduction of GridSim

The GridSim simulation tool is based on SimJava, and it is a discrete-event simulation package implemented in Java language. It is designed as a layered architecture, and it allows users to add a new component or a new layer into GridSim. Fig. 4-1 displays the architecture of GridSim. Every layer in the architecture is responsible for its work, such as the first layer at the bottom is controlled by SimJava for handling interactions of events within GridSim components; the second layer displays the fundamental components of GridSim; the third and fourth layers are modeling and simulating Computational Grids and Data Grids respectively;

the fifth and sixth layers allow users to make additional extension if needed [26], [27].

There are many simulation tools used in Grid researches [28], such as SimOS [33], SimJava [13], [23], NS-2 [32], GridSim [31], SimGrid [37], and etc. In this study, we choose GridSim simulation tool to construct our experimental environment. Because GridSim has some advantages listed as following [2], [27]:

¾ Users can define computing capabilities of resources, and it is allowed to model heterogeneous resources with different feature and types.

¾ Resources can be located at different time zones.

¾ Users can set the communication speed between resources.

¾ It enables simulation of workload traces.

¾ There is no restriction with the number of jobs users submitted to resources.

¾ Multi users can submit jobs to the sane resource concurrently, and the PE’s operation model of resources can be under Space- or Time-Shared.

¾ Resources can be reserved for resource allocation.

¾ It has the ability to process with compute- and data-intensive jobs.

¾ It supports simulation with static and dynamic schedulers.

¾ It provides clear and well-define interfaces to implement different resources allocation algorithms.

¾ It allows users to model different GIS components.

¾ GridSim statistic analysis methods can be used to analysis and statistic.

Figure 4-1. GridSim Architecture [26], [27]

4.2 Simulation Environment

There are five models in the simulation environment, it includes: the “Grid Resource”, the “Grid User and Gridlet”, the “Grid-Scheduler”, the “Simulation Program with Scheduling Algorithms”, and the “Experimental Results”. Fig. 4-2 displays the simulation environment.

Grid Resource Brokers or Schedulers

SimJava Simulation Kernel

Grid Scenario User Requirements … Application Configuration

Date Set

Reservation

Grid Information

Service

Replica Catalogue

Job Description Resource Allocation

Replica Manager

Workload Traces

Resource (Clusters, SMPs) Traffic generator … … … Network

User Code

Date Grid

Compu-tational Grid Core Elements

Figure 4-2. Simulation Environment

The arguments of computing resources in the Grid system, such as computing power and communication speed, are produced by the “Grid Resource” model. A heterogeneous meta-computer system can be represented asM =

(

U1,U2K,Um

)

. U denotes the amounts j of job time units of a resource, for 1≤ jm. In the experiment, the augments of the meta-computer system is according to reference [17]. For example, the meta-computer of

“Equal” has eight resources with their sizes are

(

P1,K,P8

) (

= 128,128,128,128,128,128,128,128

)

. In this study, the meta-computer of “Equal” is resized to

(

P1,K,P8

) (

= 8,8,8,8,8,8,8,8

)

. Another difference is the experiment environment is modified from homogeneous to heterogeneous.

The augments of the experiment environment is refer to WWG testbed [2], [38], such as the PE’s MIPS Rating.

The “Grid User and Gridlet” model is used to generate users and the jobs requested by users. Every user has a different ID, different amounts of jobs, and etc. Every job includes length, file_size, and output_size. The augments of length and file_size of a job is referred to class S of CG in the NAS Parallel Benchmarks problem size [1]. Different types of jobs is presented in different ways, such as “computation-intensive jobs”, the job is represent as length=1400, and file_size=14. The standard format of a job is presented as “Gridlet gridlet = new Gridlet(id, length, file_size, output_size)”. Then, the parameter of numPE is generated in the random method to make every job to be different in length and file_size. The augment of output_size is set to 1, because of the result of processing is not considered in this study. This means the result can return back in a short time or can be ignored.

The “Grid-Scheduler” model is a job scheduler used to receive jobs submitted by users in Simulation Program with

Scheduling Algorithms Grid-Scheduler

Grid User and Gridlet Grid Resource

Experimental Results

the grid system. In this model, the scheduler is responsible for receiving jobs in order, and adding an id to a job when a job is received. Then, jobs will be processed in the “Simulation program with scheduling algorithms” model.

The “Simulation Program with Scheduling Algorithms” model is a simulation environment for the “Grid resource”, the “Grid User and Gridlet”, and the “Grid-Scheduler”

models to operate the job process. In this model, the “Grid-Scheduler” will process jobs requested by users according to different initial job orderings, different job scheduling algorithms, and different processor allocation algorithms. For example, a job may be processed in the initial job ordering uses LJF, the job scheduling algorithm uses LS, and the processor allocation algorithm uses MEET. In this model, jobs are dispatched to suitable resources through the process results of combining different kinds of algorithms. The

“Experimental Results” model displays experimental results in the text mode. Finally, some diagrams are produced from the collection of all results, and then different combinations of different algorithms are compared and analyzed via these diagrams.

In this study, there are three different types of jobs used to analysis job scheduling and processor allocation algorithms in the experiment. They include: (1) computation-intensive jobs, (2) communication-intensive jobs, (3) both computation- and communication-intensive jobs. The computation-intensive jobs such as the CFD problems, the Quantum Mechanics, and the computing grid; the communication-intensive jobs are like the data grid; however, both computation- and communication-intensive jobs are the mix of computation-intensive jobs and communication-intensive jobs. Other examples such as the NAS Grid Benchmarks(NGB).

相關文件