21-01-2013, 12:45 PM
Grid Computing: the Current State and Future Trends
1Grid Computing.pdf (Size: 103.55 KB / Downloads: 52)
Introduction
The term `Grid Computing' is relatively new and means a lot of dierent things to a lot of dif-
ferent people[19]. It has been used as a buzzword for any new technology to do with computing,
especially computer networking, and therefore it has been over-hyped as the solution to just about
every computing problem. One of the goals of this paper is to give a clear denition of what Grid
Computing is and why it is required.
Grid Computing, or Network Computing, is intended to provide computational power that is
accessible in the same way that electricity is available from the electricity grid - you simply plug
into it and do not need to worry about where the power is coming from or how it got there. The
idea of Grid Computing is the same - if more computing power is required, spare cycles on other
computers are used. This means that super-computer type power is accessible without the huge
costs of super-computing, and that CPU cycles that would otherwise be wasted are put to good
use. In fact, one of the major researchers into Grid Computing, Ian Foster from the University of
Chicago says \grids are above all a mechanism for sharing resources", [13]. This means primarily
sharing CPU time but also other things such as data les. Although this description sounds simple
there are a number of problems with creating Grid systems - how do you access computers with
dierent operating systems, how do you nd those computers to access and how do you make sure
that you can trust others to run code on your machine? In fact, how do you encourage people to
let others run code on their machines in the rst place? These questions, and many others, need
to be answered for Grid Computing to succeed and they are also discussed in this paper.
Why Do We Need Grid Computing?
Although the amount of computing power available to both researchers and businesses is growing
at an amazing rate, and has been growing quickly for some time, the demand for computing power
is never satised. New projects in business and in the sciences require unprecedented amounts of
computing power that, even given Moore's Law, will not be fullled in the near future. The rate
of increase in network bandwidth is increasing at a rate faster than that of processor speed which
means that the way to make best use of computing power is to network many computers together
in an ecient fashion[17]. Grid Computing is currently seen as the best way to do this.
The New York Times recently published an article which argued that \All Science Is Com-
puter Science". This claim was made because every traditional science - Physics, Chemistry,
Mathematics, Biology, Astronomy, and many others - is relying more and more on computers and
computational power. Although new insights are still needed to generate new research in these
elds, the limiting factor in many of the experiments is computational power. Grid Computing is
therefore seen as the computing technology enabling the advancement of all sciences.
Advantages Over Traditional Supercomputers
Based on the above arguments, it could be said that all that is needed are bigger supercomput-
ers. However, Grids have several advantages over traditional supercomputers. When purchasing
a supercomputer it is hard to know how much power to purchase. If too much is purchased it will
cost more but the supercomputer will be under-utilised. If not enough supercomputing power is
purchased the advantages of supercomputing will not be fully realised. If the supercomputer will
be used at its peak rate only for short periods of time, it will be even harder to decide what to
buy because either the programs will run too slowly when they are running or you will pay more
when most of the time the extra power is not being used. Grid Computing is better than a super-
computer because its size can be changed dynamically - computers can be added or removed once
the Grid has been deployed - and because dynamic sharing is available with other organisations.
Whilst with a supercomputer you can allow others to use it, with a Grid they can use it while you
are not but then when you do want to access it you can do so straightaway. This is because you
could set up your computing resources so that your Virtual Organisations (see section 3.2) have
higher priority than others.
Virtual Organisations
The idea of a Virtual Organisation (VO) is that on, say, a university campus-wide Grid, members
of the Physics and Biology departments could be working on a project together so they could form
a Virtual Organisation for that project where they could all access the data for that project and
each other's computing resources. However, those who are not members of the research group
would not be members of the VO so would not be able to access the resources. Members of the
Computer Science department - who would not be part of the other VO - may be working on
a dierent project however could have separate projects running with separate access rights for
a dierent set of resources. Note that dierent projects within the same departments could also
have separate Virtual Organisations so keep some of their data separate but allow projects from
both VOs to use the compute resources.
4 Current Grids and Grid Products
There are a number of tools available to help create Computational Grids, both free, open-source
ones and commercial products. There is also a standards body which seeks to put forward `rec-
ommendations' about how best to do Grid Computing. This section gives an overview of these,
and details about several of the many Grids in existence today.
The Grid versus Many Grids
A distinction must be made between the idea of a single, worldwide, ubiquitous grid and the idea
of many separate grids located in businesses and on university campuses. The original intention
of Grid Computing was that it would follow the same architecture as the electricity grid. This
means that whenever and wherever you needed compute power you would simply \plug in" to The
Grid and the processing would be done. There would be no need to know where the computing
was being done - just as there is no need for me to know where the power that is lighting this
room is coming from - only that it was being done. In the same way that I don't need to know
whether the electricity lighting this room is coming from a hydro-electric power plant in Fiordland
or a wind turbine in Wellington, I wouldn't care if my complicated simulation were being run
on a spare machine next door or on an idle server somewhere on the other side of the world. In
fact,The Grid could be viewed as a Grid of Grids, in much the same way as the Internet is a
network of networks. Although work is still being done toward creating a single Grid, it is already
the case that there are many disparate grids worldwide that are all completely isolated from each
other. Having many separate Grids makes issues like authentication and Virtual Organisations
much simpler, which is one of the reasons that The Grid has not emerged. It also eliminates the
need for some sort of global billing system, which is discussed further in Section 5.3.