Information in the Degree Programme Tables may still be subject to change in response to Covid-19

University Homepage
DRPS Homepage
DRPS Search
DRPS Contact
DRPS : Course Catalogue : School of Informatics : Informatics

Postgraduate Course: Extreme Computing (INFR11088)

Course Outline
SchoolSchool of Informatics CollegeCollege of Science and Engineering
Credit level (Normal year taken)SCQF Level 11 (Year 4 Undergraduate) AvailabilityAvailable to all students
SCQF Credits10 ECTS Credits5
SummaryExtreme Computing deals with the principles, systems and algorithms behind Web-scale problem solving. This touches upon the technologies and techniques used by companies such as Google, Facebook, Amazon, and Microsoft, using warehouse-scale computing and massive datasets. The course will be in three parts: the principles behind extreme computing (cloud computing, scaling, performance, privacy etc.), supporting infrastructure (distributed file systems, replication, Web services etc.) and algorithms (Map/Reduce, case studies from Natural Language Processing, rudimentary data processing, machine learning, data streaming).
Course description The course is to be conceptually split into three main areas, with each area not necessarily accounting for an equal portion of the syllabus. The three areas and the material covered in each area are as follows:

* Background: Motivation for new computing paradigms; introduction and differences between cloud and cluster computing; scaling, performance, privacy, economics, security, software as service.

* Infrastructure: Distributed file systems; multi-tier systems, virtualisation; replication; fault tolerance; concurrent programming; web services.

* Data structures and algorithms: decentralised data structures (e.g., peer-to-peer systems); programming frameworks (e.g., Hadoop Map/Reduce); workflow languages (e.g., FlumeJava); design and implementation of Map/Reduce programs; dealing with massive amounts of data; case studies from natural language processing, data processing, machine and deep learning; and computation over infinite streams.

The course will also deal with the legal, social, ethical, and professional issues involved in remotely storing data in cloud deployments and will also deal with potential solutions to these problems
Entry Requirements (not applicable to Visiting Students)
Pre-requisites Co-requisites
Prohibited Combinations Other requirements This course is open to all Informatics students including those on joint degrees. For external students where this course is not listed in your DPT, please seek special permission from the course organiser (lecturer).

Maths background, including basic probability. Programming ability, and be familiar with Unix-like systems. Any programming language is fine; past students find that Python is sufficient.
Information for Visiting Students
Pre-requisitesVisiting students are required to have comparable background to that assumed by the course prerequisites listed in the Degree Regulations & Programmes of Study.
If in doubt, consult the course organiser (lecturer).
High Demand Course? Yes
Course Delivery Information
Not being delivered
Learning Outcomes
On completion of this course, the student will be able to:
  1. Demonstrate knowledge of the need for extreme computing by providing motivating examples of the scale of problems only computing at an extreme scale can solve (e.g., problems motivated by the use of large datasets and complex computation).
  2. Demonstrate knowledge of the problems associated with computing at an extreme scale, such us the need for multi-tier systems, programming models (with a focus on Map/Reduce), and workflow languages (e.g., FlumeJava).
  3. Demonstrate knowledge of the infrastructure necessary for computing at an extreme scale through enumerating different file system designs, virtualisation techniques, replication, fault-tolerance paradigms, and alternative system designs.
  4. Demonstrate knowledge of summary-based data structures (e.g., Bloom filters) that can be used to efficiently process large datasets; and cluster-based algorithms for data processing, machine learning, and low latency processing through the use of distributed programming paradigms.
  5. Demonstrate knowledge of large-scale distributed deep learning networks for the purposes of solving data mining and machine learning problems of extreme scale.
Reading List
Data Intensive Text Processing with MacReduce, Jimmy Linn & Chris Dyer
Hadoop: The Definitive Guide, Tom White, O'Reilly Media
Additional Information
Course URL
Graduate Attributes and Skills Not entered
KeywordsNot entered
Course organiserDr Volker Seeker
Tel: (0131 6)50 5191
Course secretaryMiss Clara Fraser
Tel: (0131 6)51 4164
Help & Information
Search DPTs and Courses
Degree Programmes
Browse DPTs
Humanities and Social Science
Science and Engineering
Medicine and Veterinary Medicine
Other Information
Combined Course Timetable
Important Information