- Student Records
Programme & Unit Catalogues


CM30225: Parallel computing

Follow this link for further information on academic years Academic Year: 2012/3
Follow this link for further information on owning departmentsOwning Department/School: Department of Computer Science
Follow this link for further information on credits Credits: 6
Follow this link for further information on unit levels Level: Honours (FHEQ level 6)
Follow this link for further information on period slots Period: Semester 1
Follow this link for further information on unit assessment Assessment: CW 25%, EX 75%
Follow this link for further information on supplementary assessment Supplementary Assessment: Like-for-like reassessment (where allowed by programme regulations)
Follow this link for further information on unit rules Requisites: Before taking this unit you must take CM20214 or equivalent.
Follow this link for further information on unit content Description: Aims:
To give students the ability to recognise and understand the problems and opportunities afforded by parallel systems; to recognise the differing types of parallelism available and make advised choices between them; and to take advantage of progress in technology as modern computers become ever more parallel.

Learning Outcomes:
Students will be able to:
1. write and debug simple parallel programs;
2. recognise the issues surrounding concurrent access to data;
3. Describe the various kinds of parallel hardware, parallel programming methodologies and the relationship between them.

Skills:
IT (T, A).

Content:
1. Basics: supercomputers and the consequences of Moore's Law; bandwidth vs latency; speedup, efficiency, scalability; Amdahl's & Gustafson's Laws; Flynn's taxonomy, SPMD; distributed, shared, NUMA and other memory architectures.
2. Shared memory computing: multicore systems (cache coherence and bottlenecks); mutual exclusion and critical regions; low level constructs including POSIX threads and synchronisation methods such as barriers, locks, semaphores, etc.; language-level support including monitors, OpenMP; vector and array (SIMD), HPF, Cn.
3. Distributed computing: clusters, message passing, MPI. Programming using MPI (PBS).
4. Parallel algorithms and data structures.
5. Topics in Parallel Computing: examples might include HPC; MapReduce; distributed file systems; the Grid; GPGPU and OpenCL; instruction level parallelism (SWAR,VLIW).
Follow this link for further information on programme availabilityProgramme availability:

CM30225 is Optional on the following programmes:

Department of Computer Science
  • USCM-AFB01 : BSc Computing (Full-time) - Year 3
  • USCM-AKB01 : BSc Computing (Full-time with Thick Sandwich Placement) - Year 4
  • USCM-AFB06 : BSc (hons) Computer Science (Full-time) - Year 3
  • USCM-AKB07 : BSc (hons) Computer Science (Full-time with Thick Sandwich Placement) - Year 4
  • USCM-AFB20 : BSc (hons) Computer Science and Mathematics (Full-time) - Year 3
  • USCM-AKB20 : BSc (hons) Computer Science and Mathematics (Full-time with Thick Sandwich Placement) - Year 4
  • USCM-AAB20 : BSc (hons) Computer Science and Mathematics with Study Year Abroad (Full-time with Study Year Abroad) - Year 4
  • USCM-AKB19 : BSc (hons) Computer Science (incl. ab initio Japanese Language & with Industrial Placement) (Full-time with Thick Sandwich Placement) - Year 4
  • USCM-AKB18 : BSc (hons) Computer Science (incl. ab initio Mandarin Chinese Lang & with Industrial Placement) (Full-time with Thick Sandwich Placement) - Year 4
  • USCM-AFB19 : BSc (hons) Computer Science (including ab initio Japanese Language) (Full-time) - Year 3
  • USCM-AFB18 : BSc (hons) Computer Science (including ab initio Mandarin Chinese Language) (Full-time) - Year 3
  • USCM-AFB09 : BSc (hons) Computer Science with Business (Full-time) - Year 3
  • USCM-AKB10 : BSc (hons) Computer Science with Business (Full-time with Thick Sandwich Placement) - Year 4
  • USCM-AAB10 : BSc (hons) Computer Science with Business with Study Year Abroad (Full-time with Study Year Abroad) - Year 4
  • USCM-AKB15 : BSc (hons) Computer Science with French Language (with Industrial Placement) (Full-time with Thick Sandwich Placement) - Year 4
  • USCM-AAB15 : BSc (hons) Computer Science with French Language (with Study Year Abroad) (Full-time with Study Year Abroad) - Year 4
  • USCM-AKB16 : BSc (hons) Computer Science with German Language (with Industrial Placement) (Full-time with Thick Sandwich Placement) - Year 4
  • USCM-AAB16 : BSc (hons) Computer Science with German Language (with Study Year Abroad) (Full-time with Study Year Abroad) - Year 4
  • USCM-AFB13 : BSc (hons) Computer Science with Mathematics (Full-time) - Year 3
  • USCM-AKB14 : BSc (hons) Computer Science with Mathematics (Full-time with Thick Sandwich Placement) - Year 4
  • USCM-AAB14 : BSc (hons) Computer Science with Mathematics with Study Year Abroad (Full-time with Study Year Abroad) - Year 4
  • USCM-AKB17 : BSc (hons) Computer Science with Spanish Language (with Industrial Placement) (Full-time with Thick Sandwich Placement) - Year 4
  • USCM-AAB17 : BSc (hons) Computer Science with Spanish Language (with Study Year Abroad) (Full-time with Study Year Abroad) - Year 4
  • USCM-AAB07 : BSc (hons) Computer Science with Study Year Abroad (Full-time with Study Year Abroad) - Year 4
  • USCM-AFM01 : MComp (hons) Computer Science (Full-time) - Year 3
  • USCM-AKM02 : MComp (hons) Computer Science (Full-time with Thick Sandwich Placement) - Year 4
  • USCM-AFM14 : MComp (hons) Computer Science and Mathematics (Full-time) - Year 3
  • USCM-AKM14 : MComp (hons) Computer Science and Mathematics with Industrial Placement (Full-time with Thick Sandwich Placement) - Year 4
  • USCM-AAM14 : MComp (hons) Computer Science and Mathematics with Study Year Abroad (Full-time with Study Year Abroad) - Year 4
  • USCM-AAM02 : MComp (hons) Computer Science with Study Year Abroad (Full-time with Study Year Abroad) - Year 4
Department of Electronic & Electrical Engineering
  • UEEE-AKB07 : BEng (hons) Computers Electronics and Communications (Full-time with Thick Sandwich Placement) - Year 4
  • UEEE-AFB13 : BEng (hons) Computer Systems Engineering (Full-time) - Year 3
  • UEEE-AKM07 : MEng (hons) Computers Electronics and Communications (Full-time with Thick Sandwich Placement) - Year 4
  • UEEE-AFM13 : MEng (hons) Computer Systems Engineering (Full-time) - Year 3

Notes:
* This unit catalogue is applicable for the 2012/13 academic year only. Students continuing their studies into 2013/14 and beyond should not assume that this unit will be available in future years in the format displayed here for 2012/13.
* Programmes and units are subject to change at any time, in accordance with normal University procedures.
* Availability of units will be subject to constraints such as staff availability, minimum and maximum group sizes, and timetabling factors as well as a student's ability to meet any pre-requisite rules.