Grid Computing (M)
This course is no longer offered. The following information is retained for historical interest only.
Rationale
Increasing interest from both the scientific and the more general large-scale information processing communities motivates the study of large-scale distributed systems. This module provides both a practically-oriented introduction to current technologies, focussing on Grid toolkits, and a principled overview of the deep underlying issues that arise in supporting large-scale multi-organisation computation.
Aims
To provide the participants with:
- Detailed understanding of the key problems and issues that arise when attempting large-scale distributed computation, both within organisations and across organisational boundaries
- Insight into the architectural implications of Grid-scale computation
- Awareness of current research issues in:
- Grid architecture and infrastructure
- Scalable distributed computation
- Integration of applications across autonomous organisations
- Practical experience of current Grid technologies and the associated standards
- Skills in utilising current Grid tools and technologies
- Appreciation of the weaknesses of existing tools and technologies, and potential areas for improvement
Objectives
By the end of this module, participants should be able to:
- Critically discuss and reason about large-scale distributed system architectures, infrastructures and technologies
- Articulate research challenges in multi-organisational distributed computing, including Grid computing
- Design and implement Grid computing applications using Globus or similar toolkits
- Justify the applicability, or non-applicability, of Grid technologies for a specific application
Module Content
The module consists of 20 lectures and 10 tutorial & laboratory sessions. Additional time will be required for reading, and at least 30 hours of unscheduled practical work will be expected.
The first two weeks of the module will consist of six lectures, providing a review of general distributed systems issues, web services and XML, networking and communications technology, and an introduction to large-scale systems architecture.
In weeks 3 to 10 of the module there will be a weekly tutorial on current Grid-related technologies, along with associated reading and practical work, focussed on system design and implementation using Globus or a similar technology. In parallel with the practical activities, there will be a further 14 lectures covering:
- systems architectures;
- scheduling, accounting and resource management;
- scalability;
- systems modelling and simulation; and
- security
in the specific settings of large-scale multi-organisational distributed computing and large-scale cluster computing.
A detailed timetable follows:
| Week | Session | Title |
|---|---|---|
| 1 | Lecture 1 | Networking and Communications |
| Lecture 2 | Remote Procedure Calls | |
| Lecture 3 | Distributed Systems | |
| 2 | Lecture 4 | Systems Architecture |
| Lecture 5 | Markup languages and XML | |
| Lecture 6 | Web Services | |
| 3 | Lecture 7 | Large Scale Systems Architecture (1) |
| Lecture 8 | Large Scale Systems Architecture (2) | |
| Tutorial 1 | Introduction to Globus | |
| 4 | Lecture 9 | Security (1) |
| Lecture 10 | Security (2) | |
| Tutorial 2 | Developing With Globus | |
| 5 | Lecture 11 | Resource Management (1) |
| Lecture 12 | Resource Management (2) | |
| Tutorial 3 | Globus Development | |
| 6 | Lecture 13 | Resource Management (3) |
| Lecture 14 | Resource Management (4) | |
| Tutorial 4 | Introduction to Condor | |
| 7 | Tutorial 5 | Permis and SAML |
| Tutorial 6 | Portal Technologies | |
| Tutorial 7 | Q & A on Programming Assignment | |
| 8 | Lecture 15 | Scalability and Heterogeneity (1) |
| Lecture 16 | Scalability and Heterogeneity (2) | |
| Lecture 17 | Scalability and Heterogeneity (3) | |
| 9 | Tutorial 8 | OGSA-DAI |
| Lecture 18 | Systems Performance Evaluation (1) | |
| Lecture 19 | Systems Performance Evaluation (2) | |
| 10 | Tutorial 9 | Example Systems |
| Lecture 20 | Review and Future Directions | |
| Tutorial 10 | Assignment Demonstrations |
Pre-requisites
Students are expected to have studied operating systems, distributed algorithms and systems, communications and networks, databases, and Internet technologies to the level of detail covered in a computing science or related degree course. This corresponds to some of the material covered in the OS3, NSA3, DAS4, NCT4 and DBIT4 modules of a Glasgow Computing Science degree. The introductory lectures in the module will rapidly revise these essentials, to aid those who have an incomplete background in the pre-requisite topics. Practical work will require the use of Java, and possibly some C programming, in a Unix environment. Students should be familiar with both languages, the engineering principles underpinning non-trivial system construction, the implementation of systems using large code libraries, and software development on a Unix platform.
Credits
This is a 10-credit, level M module, which is an elective component of the Advanced MSc in Computing Science and the MSci in Computing Science. It may also be taken as a fourth year elective by single, combined and joint honours students in Computing Science, Software Engineering, Electronics & Software Engineering and related degrees.
Course Text
There is no set text for this module. Research papers will be distributed as required, and technical manuals and related documentation will be issued as part of the practical activities.
Assessment
70% examination (focussing on the lectured material), 30% coursework (focussing on the practical activities and tutorial material).
The coursework will comprise three small exercises and one large programming assignment. The small exercises will be set during the first three weeks of the module on the following topics:
- Socket programming in C
- Java RMI programming
- Introduction to the Globus toolkit
Students will be awarded a mark of 0 or 1 for each small exercise. The mark assigned for the programming exercise will be multiplied by the marks assigned for each of the small exercises.
Copies of examination papers from previous years are available: 2005, 2006, 2007.