ACS-43063 credit hours

Applied Parallel Programming

Applied Computer Science · 3 hrs Lecture | 1 hrs Lab

Offered: Fall Or Winter, Every Year

ACS-4306 prerequisites

9 courses appear in this chain, up to 5 levels deep. 2 are needed whichever route you take: ACS-2947ACS-3913

Show the chain

all of

ACS-2947Data Structures and Algorithmsmin C+

any one of

ACS-1904Programming Fundamentals II
ACS-1903Programming Fundamentals Imin C

any one of

Pre-Calculus Math 40S

Applied Math 40S

ACS-1805Introduction to Programmingmin C
ACS-1905Programming Fundamentalsmin C

all of

any one of

Computer Science 40S

equivalent

any one of

ACS-1805Introduction to Programmingmin C

Its prerequisites are shown above.

Pre-Calculus Math 40S

Applied Math 40S

ACS-3913Software Design and Architecturemin C

all of

any one of

ACS-2913Software Requirements Analysis and Design

any one of

ACS-1903Programming Fundamentals I

Its prerequisites are shown above.

ACS-1905Programming Fundamentalsmin C

Its prerequisites are shown above.

all of

ACS-2911not in the 2026-27 calendar
ACS-2912not in the 2026-27 calendar
ACS-2947Data Structures and Algorithmsmin C

Its prerequisites are shown above.

Add your completed courses to see which of these you've already done and what you could take next. They stay on this device.

Where ACS-4306 counts

Counts toward 2 more as one option among several, not as a course you must take:

  • ACS 4-YEAR BSc IN APPLIED COMPUTER SCIENCE
  • ACS BSc (HONOURS) IN

Read from the departments' own calendar pages, where 71 of 141 programs are only partly machine-readable, so treat these as a minimum rather than the full list. Confirm with an academic advisor.

Description

This course focuses on parallel and distributed computing in high-performance scientific application, using the parallel execution model, a generalization of the traditional single threaded paradigm. The course covers multi-core processors, concurrency, parallel execution, latency, communication and coordination among processes, message passing, shared-memory models, optimization techniques, parallel algorithms, decomposition strategies, system architecture, and performance analysis and tuning. Using the language C/C++, students gain hands on experience writing scalable parallel applications for Graphics Processing Units.

Requisite courses

ACS-2947 with a minimum grade of C+ and ACS-3913 with a minimum grade of C [prerequisite(s)]; ACS-4306L (lab) (must be taken concurrently).

Note

Students who have taken ACS-4306 will not be eligible to take the Master of Science course GACS-7306.

LectureLab

From the 2026-27 undergraduate calendar. Always verify details on WebAdvisor or with an academic advisor before registering.