CSCI0416A-S25
Parallel Computing
Parallel Computing
Most modern computer architectures are parallel at multiple scales. In this course students will learn to develop programs that can efficiently use those parallel resources to improve performance and solve ever larger problems. Through a project-based survey students will be introduced to parallel hardware (multicore processors, clusters, GPUs), memory models (shared vs. non-shared), locality, synchronization, and different parallel programming models (threads, MapReduce, message-passing, SIMT, and more). Programming assignments will be implemented in multiple languages. (CSCI 0202) 3hrs. lect./lab
Most modern computer architectures are parallel at multiple scales. In this course students will learn to develop programs that can efficiently use those parallel resources to improve performance and solve ever larger problems. Through a project-based survey students will be introduced to parallel hardware (multicore processors, clusters, GPUs), memory models (shared vs. non-shared), locality, synchronization, and different parallel programming models (threads, MapReduce, message-passing, SIMT, and more). Programming assignments will be implemented in multiple languages. (CSCI 0202) 3hrs. lect./lab
- Term:
- Spring 2025
- Location:
- 75 Shannon Street 203(75SHS 203)
- Schedule:
- 12:45pm-2:00pm on Tuesday, Thursday (Feb 10, 2025 to May 12, 2025)
- Type:
- Lecture
- Course Modality:
- In-Person
- Instructors:
- Michael Linderman
- Subject:
- Computer Science
- Department:
- Computer Science
- Division:
- Natural Sciences
- Requirements Fulfilled:
- DED
- Levels:
- Undergraduate
- Availability:
- View availability, prerequisites, and other requirements.
- Course Reference Number (CRN):
- 22439
- Subject Code:
- CSCI
- Course Number:
- 0416
- Section Identifier:
- A