CSCI 338
Parallel Processing Spring 2025
Division III Quantitative/Formal Reasoning

Class Details

This course explores different parallel programming paradigms used for writing applications on today’s parallel computer systems. The course will introduce concurrency (i.e. multiple simultaneous computations) and the synchronization primitives that allow for the creation of correct concurrent applications. It will examine how a variety of systems organize parallel processing resources and enable users to write parallel programs for these systems. Covered programming paradigms will include multiprogramming with processes, message passing, threading in shared memory multiprocessors, vector processing, graphics processor programming, transactions, MapReduce, and other forms of programming for the cloud. Class discussion is based on assigned readings. Assignments provide students the opportunity to develop proficiency in writing software using different parallel programming paradigms.
The Class: Format: lecture
Limit: 24
Expected: 24
Class#: 3048
Grading: no pass/fail option, no fifth course option
Requirements/Evaluation: homework assignments, programming projects, and up to two exams
Prerequisites: CSCI 136 or equivalent programming experience, and CSCI 237, or permission of instructor
Enrollment Preferences: current or expected Computer Science majors
Distributions: Division III Quantitative/Formal Reasoning
QFR Notes: The course will consist of substantial problem sets and programming assignments in which quantitative/formal reasoning skills are practiced and evaluated.

Class Grid

Updated 7:31 am

Course Catalog Search

(searches Title and Course Description only)



Start Time
End Time