GridSim
Releases Java-based Grid Computing Toolkit
By Chris Nerney
An Australia-based grid research project team has
released a Java-based software toolkit designed to support modeling and
simulation of worldwide grids.
GridSim Toolkit 1.0 enables users to conduct design and performance
evaluations of scheduling algorithms and systems, according to GridSim
Project team member Rajkumar Buyya, a Ph.D. student at the School of Computer
Science and Software Engineering at Monash University in Melbourne.
Buyya said the toolkit provides concurrent entities for creating
application tasks, mapping of these tasks to resources and their management.
It also allows users to create representations for Grid resources, Grid
Information Service, Grid statistics and multiple Grid users. Sample implementations
are included in the GridSim 1.0 download on the GridSim
Project Web site. Source code also is included in the download.
In a technical report published last October, Buyya and fellow
GridSim team members Manzur Murshed and David Abramson said the primary
objective of the GridSim Project is to create simulated grid environments
that reflect real-world scenarios involving a "varying number of resources
and users with different (policy) requirements." The simulations are used
to test resource allocation techniques and the effectiveness of resource
brokers and scheduling algorithms.
Many IT professionals and researchers may be more familiar with the
grid toolkit developed by the five-year-old Globus Project. Globus is a
collaboration involving several universities, public organizations and
corporations such as IBM and Microsoft.
But Buyya said comparing the two toolkits is like "comparing apples
and oranges."
"GridSim is a tool for design and evaluation of scheduling applications
on Grid machines (by simulation), whereas Globus is a middleware for submitting
and executing jobs/programs to real remote machines uniformly," Buyya said.
"Globus is a low-level middleware for Grid systems," Buyya said. "A
machine that wants to submit jobs to a remote machine can use the Globus
facility to do so. That means you need to have Globus loaded on both machines.
If you have many machines loaded with Globus, then you can run jobs on
those machines parallelly using the Nimrod-G job scheduler."
However, there are limits to how many machines can run grid jobs simultaneously.
"With luck you may be able to get 20 machines," Buyya said. "But
for scientific design and investigation of scheduling algorithms you need
to explore for many thousands of machines, many different load conditions,
many different kinds of user scenarios."
Using a simulator developed for the toolkit, he said, one "can create
millions of simulated machines, users, and application scenarios for evaluation
of Grid scheduling systems."
|