Postgraduate Course: Extreme Computing (INFR11088)
Course Outline
School | School of Informatics |
College | College of Science and Engineering |
Credit level (Normal year taken) | SCQF Level 11 (Year 4 Undergraduate) |
Availability | Available to all students |
SCQF Credits | 10 |
ECTS Credits | 5 |
Summary | Extreme 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-requisites | Visiting 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:
- 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).
- 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).
- 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.
- 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.
- 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 |
Contacts
Course organiser | Dr Volker Seeker
Tel: (0131 6)50 5191
Email: |
Course secretary | Miss Clara Fraser
Tel: (0131 6)51 4164
Email: |
|
|