CPSC 087. Parallel and Distributed Computing
This course covers a broad range of topics related to parallel and distributed computing, including parallel and distributed architectures and systems, parallel and distributed programming paradigms, parallel algorithms, and scientific and other applications of parallel and distributed computing. In lecture/discussion sections, students examine both classic results as well as recent research in the field. The lab portion of the course includes programming projects using different programming paradigms, and students will have the opportunity to examine one course topic in depth through an open-ended project of their own choosing. Course topics may include: multi-core, SMP, MPP, client-server, clusters, clouds, grids, peer-to-peer systems, GPU computing, scheduling, scalability, resource discovery and allocation, fault tolerance, security, parallel I/0, sockets, threads, message passing, MPI, RPC, distributed shared memory, data parallel languages, MapReduce, parallel debugging, and parallel and distributed applications.
Group 2 course.
Prerequisite: CPSC 031 and CPSC 035, and at least one course numbered above CPSC35 (or premission of the instructor) are required.
Natural science and engineering.
Lab work required.
Fall 2021. Newhall.
Catalog chapter: Computer Science
Department website: https://www.swarthmore.edu/computer-science
Check the Spring 2021 Schedule of Courses
Check the Fall 2021 Schedule of Courses