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-2947 → ACS-3913
Show the chainHide the chain
all of
any one of
all of
any one of
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:
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.
From the 2026-27 undergraduate calendar. Always verify details on WebAdvisor or with an academic advisor before registering.