Unit outline_

COMP4426: Parallel and Distributed Computing

Semester 1, 2026 [Normal evening] - Camperdown/Darlington, Sydney

This unit is intended to introduce and motivate the study of high performance computer systems. The student will be presented with the foundational concepts pertaining to the different types and classes of high performance computers. The student will be exposed to the description of the technological context of current high performance computer systems. Students will gain skills in evaluating, experimenting with, and optimising the performance of high performance computers. The unit also provides students with the ability to undertake more advanced topics and courses on high performance computing.

Unit details and rules

Academic unit Computer Science
Credit points 6
Prerequisites
? 
DATA3888 or COMP3888 or COMP3988 or CSEC3888 or ISYS3888 or SOFT3888 or ENGG3112 or SCPU3001
Corequisites
? 
Enrolment in a thesis unit. INFO4001 or INFO4911 or INFO4991 or INFO4992 or AMME4111 or BMET4111 or CHNG4811 or CIVL4022 or ELEC4712 or COMP4103 or SOFT4103 or DATA4103 or ISYS4103
Prohibitions
? 
COMP5426 or OCMP5426
Assumed knowledge
? 

A major in a computer science area

Available to study abroad and exchange students

Yes

Teaching staff

Coordinator Albert Zomaya, albert.zomaya@sydney.edu.au
The census date for this unit availability is 31 March 2026
Type Description Weight Due Length Use of AI
Written exam Final exam
Closed book written exam
60% Formal exam period 2 hours AI prohibited
Outcomes assessed: LO3 LO1 LO2 LO4 LO5 LO6
Written work Assignment 1
parallel algorithm design, implementation, performance evaluation, testing and report
20% Week 08
Due date: 26 Apr 2026 at 23:59

Closing date: 26 Apr 2026
several tasks AI allowed
Outcomes assessed: LO4 LO6 LO1 LO2 LO3 LO5
Written work Assignment 2
parallel and/or distributed algorithm design, implementation, performance evaluation testing and report
20% Week 13
Due date: 31 May 2026 at 23:59

Closing date: 31 May 2026
several tasks AI allowed
Outcomes assessed: LO1 LO2 LO4 LO6 LO3 LO5

Assessment summary

There are two programming assignments, and one final exam.

To pass the unit a student must score (1) an overall score of 50 or better and (2) at least 40% of the available marks on the final exam.

Assessment criteria

The University awards common result grades, set out in the Coursework Policy 2014 (Schedule 1).

As a general guide, a high distinction indicates work of an exceptional standard, a distinction a very high standard, a credit a good standard, and a pass an acceptable standard.

Result name

Mark range

Description

High distinction

85 - 100

 

Distinction

75 - 84

 

Credit

65 - 74

 

Pass

50 - 64

 

Fail

0 - 49

When you don’t meet the learning outcomes of the unit to a satisfactory standard.

For more information see guide to grades.

Use of generative artificial intelligence (AI)

You can use generative AI tools for open assessments. Restrictions on AI use apply to secure, supervised assessments used to confirm if students have met specific learning outcomes.

Refer to the assessment table above to see if AI is allowed, for assessments in this unit and check Canvas for full instructions on assessment tasks and AI use.

If you use AI, you must always acknowledge it. Misusing AI may lead to a breach of the Academic Integrity Policy.

Visit the Current Students website for more information on AI in assessments, including details on how to acknowledge its use.

Late submission

In accordance with University policy, these penalties apply when written work is submitted after 11:59pm on the due date:

  • Deduction of 5% of the maximum mark for each calendar day after the due date.
  • After ten calendar days late, a mark of zero will be awarded.

This unit has an exception to the standard University policy or supplementary information has been provided by the unit coordinator. This information is displayed below:

1. For every calendar day up to and including ten calendar days after the due date, a penalty of 5% of the maximum awardable marks will be applied to late work. 2. For work submitted more than ten calendar days after the due date a mark of zero will be awarded. The marker may elect to, but is not required to, provide feedback on such work.

Academic integrity

The University expects students to act ethically and honestly and will treat all allegations of academic integrity breaches seriously.

Our website provides information on academic integrity and the resources available to all students. This includes advice on how to avoid common breaches of academic integrity. Ensure that you have completed the Academic Honesty Education Module (AHEM) which is mandatory for all commencing coursework students

Penalties for serious breaches can significantly impact your studies and your career after graduation. It is important that you speak with your unit coordinator if you need help with completing assessments.

Visit the Current Students website for more information on AI in assessments, including details on how to acknowledge its use.

Simple extensions

If you encounter a problem submitting your work on time, you may be able to apply for an extension of five calendar days through a simple extension.  The application process will be different depending on the type of assessment and extensions cannot be granted for some assessment types like exams.

Special consideration

If exceptional circumstances mean you can’t complete an assessment, you need consideration for a longer period of time, or if you have essential commitments which impact your performance in an assessment, you may be eligible for special consideration or special arrangements.

Special consideration applications will not be affected by a simple extension application.

Using AI responsibly

Co-created with students, AI in Education includes lots of helpful examples of how students use generative AI tools to support their learning. It explains how generative AI works, the different tools available and how to use them responsibly and productively.

Support for students

The Support for Students Policy reflects the University’s commitment to supporting students in their academic journey and making the University safe for students. It is important that you read and understand this policy so that you are familiar with the range of support services available to you and understand how to engage with them.

The University uses email as its primary source of communication with students who need support under the Support for Students Policy. Make sure you check your University email regularly and respond to any communications received from the University.

Learning resources and detailed information about weekly assessment and learning activities can be accessed via Canvas. It is essential that you visit your unit of study Canvas site to ensure you are up to date with all of your tasks.

If you are having difficulties completing your studies, or are feeling unsure about your progress, we are here to help. You can access the support services offered by the University at any time:

Support and Services (including health and wellbeing services, financial support and learning support)
Course planning and administration
Meet with an Academic Adviser

WK Topic Learning activity Learning outcomes
Week 01 Introduction and issues in high performance computing, Intro to C Programming, function pointers in C, Multithreading in C using pthread_create and pthread_join, thread synchronization Lecture (3 hr) LO1 LO4 LO5 LO6
Week 02 Parallel and Distributed-memory architectures, Multicore, Pipelining, Computer clusters and GPUs, Interconnection Networks, race conditions, synchronization, Mutex Lecture (3 hr) LO1 LO2 LO3 LO4 LO5 LO6
Week 03 Parallel architectures, SIMD, GPU, Shared-Memory Multiprocessor, Distributed-Memory Multicomputer, Performance Optimisation, Computational Intensity, Loop Unrolling, Producer and consumer problem, Mutex, Semaphores, Condition variables Lecture (3 hr) LO1 LO2 LO3 LO4 LO5 LO6
Week 04 Parallel algorithm design and Performance Optimization, Matrix Multiplication, CPU Cache hierarchy, Temporal/Spatial Locality Lecture (3 hr) LO2 LO3 LO5 LO6
Week 05 Parallel algorithm design for shared memory machines, Computation Intensity, OpenMP, Deadlock in Synchronization, Scan Operation Cache Optimization Lecture (3 hr) LO1 LO2 LO3 LO5 LO6
Week 06 Parallel algorithm design for shared memory machines, Parallel Computing Architectures, Parallel Scan, Performance Models, Amdahl’s Law Task-Dependency Graph, Matrix Partitioning, SIMD arch Lecture (3 hr) LO1 LO2 LO4 LO5 LO6
Week 07 GPU programming (1) Lecture (3 hr) LO2 LO4 LO5 LO6
Week 08 GPU programming (2) Lecture (3 hr) LO4 LO5 LO6
Week 09 Analytical modeling of parallel systems, Race Conditions and Critical Sections, Mutex, Semaphores, Condition Variables, Reduction Operations, Producer-Consumer Problem, Deadlock in Synchronization Lecture (3 hr) LO2 LO3 LO4 LO5 LO6
Week 10 Parallel algorithm design for distributed memory machines, Thread Synchronization and Coordination, Producer-Consumer Problem, Deadlock in Synchronization Lecture (3 hr) LO2 LO3 LO4 LO5 LO6
Week 11 Parallel algorithm design for distributed memory machines (2), BLAS and LIBPACK, Gaussian Elimination, MPI Groups and Communication Contexts, MPI Process Topologies Lecture (3 hr) LO1 LO2 LO3 LO4 LO5 LO6
Week 12 Consistency Models in Shared Memory Cache Coherency, Coherence Protocols, OpenMP, Synchronization, and Reduction Operations Lecture (3 hr) LO1 LO2 LO3 LO4 LO5 LO6
Week 13 Review Lecture (3 hr) LO1 LO2 LO3 LO4 LO5 LO6

Attendance and class requirements

Each week, students will attend a 2-hour lecture and a 1-hour tutorial.

Study commitment

Typically, there is a minimum expectation of 1.5-2 hours of student effort per week per credit point for units of study offered over a full semester. For a 6 credit point unit, this equates to roughly 120-150 hours of student effort in total.

Required readings

- Lecture Notes

References:

- W. Gropp, Using MPI: Portable Parallel Programming with the Message-Passing Interface, 3rd ed. MIT Press, 2014.

- Lewis, B., & Berg, D. J. (1998). PThreads primer: A guide to multithreaded programming. Prentice Hall

- A. Grama, A. Gupta, G. Karypis, and V. Kumar, Introduction to Parallel Computing, Second Edition, Addison Wesley, 2003

- Michael J. Quinn, Parallel Programming in C with MPI and OpenMP, Mcgraw-Hill, 2003

- David B. Kirk and Wen-mei W. Hwu, Programming Massively Parallel Processors: A Hands-on Approach, 3nd edition, Morgan Kaufmann, 2016

- Kirk, D. B., Hwu, W.-M. W., & El Hajj, I. (2022). Programming massively parallel processors (4th ed.). Morgan Kaufmann.

- Soyata, T. (2018). GPU parallel program development using CUDA. CRC Press.

- Nemirovsky, M., & Tullsen, D. M. (2013). Multithreading architecture Morgan & Claypool Publishers.

- V. Eijkhout, Parallel Programming in MPI and OpenMP: The Art of HPC, Volume 2, 2022

- Behrooz Parhami, Introduction to Parallel Processing: algorithms and Architectures, Plenum Press, 1999

- Parallel Programming in C with MPI and OpenMP, Michael J. Quinn, McGraw-Hill, 2004.
- MPI Programming Model: Desert Islands Analogy, Henry Neeman, University of Oklahoma Supercomputing Center.
- An Introduction to MPI, William Gropp and Ewing Lusk, Argonne National Laboratory.
- Introduction to High-Performance Scientific Computing, Victor Eijkhout, 2016.
- Parallel Computing for Science and Engineering, Victor Eijkhout, 2017.
- Designing and Building Parallel Programs, Ian Foster, 1995.
- Introduction to Parallel Computing Tutorial, HPC@LLNL, https://hpc.llnl.gov.
- Programming on Parallel Machines Norm Matloff. University of California, Davis
- Manual Pages for MPI on Linux.
- A Primer on Memory Consistency and Cache Coherence, 2nd Ed., Vijay Nagarajan, Daniel J. Sorin, Mark D. Hill, and
David A. Wood.
- Shared-Memory Synchronization. M. L. Scott. , Synthesis Lectures on Computer Architecture. Morgan & Claypool
Publishers

- Many related materials are available on the Internet

Learning outcomes are what students know, understand and are able to do on completion of a unit of study. They are aligned with the University's graduate qualities and are assessed as part of the curriculum.

At the completion of this unit, you should be able to:

  • LO1. Design, analyse, and optimization of parallel and distributed high performance computing algorithms
  • LO2. understand standard concepts of high performance parallel and distributed computing such as Performance Optimization, Pin Affinity, Computation Intensity, deadlock, Amdahl’s Law, Prefix Sum Operations, Synchronous vs. Asynchronous; Blocking vs. Non-Blocking Communication, BLAS and LIBPACK, Consistency Models, Cache Coherency, Cache Efficiency
  • LO3. efficiently implement and optimize deadlock-free high performance computing (parallel and distributed) algorithms using various methods (Multithread programming, pthreads, OpenMP and MPI) and Synchronization Mechanisms (Mutexes, Condition variables, Semaphores)
  • LO4. demonstrate knowledge of various high performance computing architectures (Parallel Architectures, Multicore, Cluster, GPU, Interconnection Networks, SIMD, Distributed-Memory Multicomputer, Shared-Memory Multiprocessor, Vector Processing Unit)
  • LO5. demonstrate technical writing to communicate complex ideas clearly
  • LO6. understand the significance of high performance computing and its impact on the whole computer systems

Graduate qualities

The graduate qualities are the qualities and skills that all University of Sydney graduates must demonstrate on successful completion of an award course. As a future Sydney graduate, the set of qualities have been designed to equip you for the contemporary world.

GQ1 Depth of disciplinary expertise

Deep disciplinary expertise is the ability to integrate and rigorously apply knowledge, understanding and skills of a recognised discipline defined by scholarly activity, as well as familiarity with evolving practice of the discipline.

GQ2 Critical thinking and problem solving

Critical thinking and problem solving are the questioning of ideas, evidence and assumptions in order to propose and evaluate hypotheses or alternative arguments before formulating a conclusion or a solution to an identified problem.

GQ3 Oral and written communication

Effective communication, in both oral and written form, is the clear exchange of meaning in a manner that is appropriate to audience and context.

GQ4 Information and digital literacy

Information and digital literacy is the ability to locate, interpret, evaluate, manage, adapt, integrate, create and convey information using appropriate resources, tools and strategies.

GQ5 Inventiveness

Generating novel ideas and solutions.

GQ6 Cultural competence

Cultural Competence is the ability to actively, ethically, respectfully, and successfully engage across and between cultures. In the Australian context, this includes and celebrates Aboriginal and Torres Strait Islander cultures, knowledge systems, and a mature understanding of contemporary issues.

GQ7 Interdisciplinary effectiveness

Interdisciplinary effectiveness is the integration and synthesis of multiple viewpoints and practices, working effectively across disciplinary boundaries.

GQ8 Integrated professional, ethical, and personal identity

An integrated professional, ethical and personal identity is understanding the interaction between one’s personal and professional selves in an ethical context.

GQ9 Influence

Engaging others in a process, idea or vision.

Outcome map

Learning outcomes Graduate qualities
GQ1 GQ2 GQ3 GQ4 GQ5 GQ6 GQ7 GQ8 GQ9

This section outlines changes made to this unit following staff and student reviews.

Lecture content has been expanded with additional details. Assignment descriptions have been clarified, including expected outcomes and updated due dates.

Additional costs

There are no additional costs for this unit.

Site visit guidelines

There are no site visit guidelines for this unit.

Disclaimer

Important: the University of Sydney regularly reviews units of study and reserves the right to change the units of study available annually. To stay up to date on available study options, including unit of study details and availability, refer to the relevant handbook.

To help you understand common terms that we use at the University, we offer an online glossary.