Current postgraduate taught students
COMP60022: Grid Computing and eScience (2007-2008)
Grid computing and eScience are two major areas of growth in the field of distributed systems. The Grid concept refers to the virtualisation of computing resource in the sense that end-users should have the illusion of using a single source of ``computing power'' without knowing the locality of the computation. Examples of this virtualisation are the use of digital certificates to access systems on behalf of the user, third party file transfer between machines authenticated via certificates, client tools for workflow composition with the workflow being consigned by agents such as brokers. There is a growing movement of convergence with the Web services community and this is attracting the interest of major companies such as IBM. HP, SUN., SGI, who see their future business increasingly involving the provision of an infrastructure where computing services are traded between providers rather than individual groups within an organistation having their ``own'' machines.The course will introduce the concepts and develop lab exercises based on job submission and monitoring on a local Grid.The course tutors are all active in the Open Grid Forum which is becoming the body for determining Grid standards, thus this course will be informed by the very latest developments in this highly dynamic field. E-Science is allied to the Grid concept, it refers to new methods of utilising Grid and other forms of distributed computation with a particular emphasis on collaborative working by geographically distributed teams. Much academic and industrial research and development is increasingly utilising the e-Science model, which also goes under the title of ``Cyberinfrastructure'' (the latter term being used in the US).
This course unit aims to:
explain the concept of e-Science and its importance in future problem solving IT infrastructure.
explain the concept of Grid computing and its relation to e-Science,
familiarise students with the key abstractions underpinning the Grid concept,
outline current Grid solutions and how they are intended to evolve,
give a more in-depth view of a widely used Grid middleware system UNICORE,
give lab sessions in running Grid computing jobs using the UNICORE GUI based job composition and submission method,
provide a mini-project to explore some particular aspects of Grid computing, e.g. resource discovery, application plugins, workflow composition.
A student successfully completing this course unit should:
Have an understanding of the concepts of Grid computing and e-Science and why they have assumed such current prominence. In particular to have an understanding of the importance of standards and protocols in Grid computing (A),
Understand the architecture of the UNICORE middleware and how this relates to the emerging Open Grid Services Architecture proposals and standards (A,B)
Be able to utilise UNICORE to submit both simple and multistage computing jobs onto a local Grid (A,B,C),
Understand the use of different models of distributed computing, e.g. Web Services, Representational State Transfer (REST) as a basis for building different kinds of Grid. Understand the importance of international standards in developing reliable systems (A,C).
Assessment of Learning outcomesLearning outcomes (1) and (2) are assessed by examination, learning outcome (3) is assessed by laboratory reports, learning outcome (4) is assessed by mini-project.
Contribution to Programme Learning OutcomesA1, A2, B2, B3, C1, C3, D1, D5.
First we define the lecture syllabus. Each lecture will be of one hour duration. Each topic will have 3 lectures devoted to it making 12 lectures in all. The rest of the time will be devoted to the laboratory classes listed below.
The metacomputing problem: forerunner to the Grid. Exploring the convergence of exploitation of high speed networks, exploitation of architectural affinity, work on coupled multiphysics problems, e.g. Climate Models importance of locality requirements to minimise flow of data across wide area networks.
Grid computing: a persistent metacomputing environment. Digital certificates as a persistent and scalable form of authorisation, Virtualisation of resources, hiding of complexity of metacomputing environment from user.
Role of middleware in Grid computing. Necessity for abstractions in a heterogeneous environment, differing OS's, resource management systems, programming languages. Interoperability achieved via tiered middleware architectures.
Abstract modelling approach to middleware problem - UNICORE Concept of an Abstract Job Object and its relation to workflow composition and enactment. Concept of Incarnation from abstract resource space to concrete resource space. Vertical integration in UNICORE, difference between a tiered and a layered model.
Approaches to distributed computing, Web Services and REST.
The laboratory sessions will cover the rest of the time:
Use of UNICORE GUI to compose a Grid workflow.
Submission and monitoring of the job via the UNICORE client.
Dealing with job termination and tidy up.
Architecture extension: plugins at client and server level.
Creation of Web Services
Grid computing is so dynamic that most books are either not written or are out of date. The original and most influential book is.
UNICORE documents are available at:
Core TextTitle: Grid: blueprint for a new computing infrastructure (2nd edition)
Author: Foster, Ian and Carl Kesselman (eds.).
Publisher: Morgan Kaufmann
This is the original and most influential text for Grid Computing.
Supplementary TextTitle: Workflows for e-Science
Author: I.J. Taylor, E. Deelman, D.B. Gannon, M. Shields