syllabus: overview
Catalog Description
The need for parallel and massively parallel computers. Taxonomy of parallel computer architecture, and programming models for parallel architectures. Example parallel algorithms. Shared-memory vs. distributed-memory architectures. Correctness and performance issues. Cache coherence and memory consistency. Bus-based and scalable directory-based multiprocessors. Interconnection-network topologies and switch design. Brief overview of advanced topics such as multiprocessor prefetching and speculative parallel execution.
Prerequisites
Learning Objectives
The goals for this course are to ...
- understand the problem of race conditions in concurrent systems,
- learn how to decompose a program for parallel execution,
- be able to write simple parallel programs in the important programming models,
- understand the operation of common cache-coherence algorithms, both bus-based and network-based, and
- learn about common memory-consistency models, and appreciate the advantages and disadvantages of each.
The Staff
instructor
Edward F. Gehringer
Phone: 919-515-2066
Office: 2298 EB II
Office hours:
Thursday 10:30-11:30 AM
efgncsu.edu
teaching assistant
Manas Vivek Buzruk
Office:
Office hours:
Monday 3-4 PM, 1014 EB 2 and on Zoom
mbuzrukncsu.edu
teaching assistant
Xiangjun Mi
Office:
Office hours:
Friday 4-5 PM
xmincsu.edu
Text
REQUIRED
Fundamentals of Parallel Multicore Architecture: Multichip and Multicore Systems
by Yan Solihin
Publisher: CRC Press
Pub. Date: August 2016
Important dates
- First Class: Tuesday, January 7
- Last Class: Tuesday, April 22
- No class: Tuesday, February 11 (Wellness day)
Tuesday, March 11 and Thursday, March 13 (spring break)
- Last day to drop or change to audit: Monday, March 3
- For more details, see the academic calendar.
Class meetings
Tuesday and Thursday, 11:45 AM-1:00 PM in FWH 2321
Attendance requirement
Educational research shows that students learn best incrementally, rather than by studying large amounts of material right before exams. Incremental learning can only take place when students concentrate on each lesson when it is presented. Accordingly, all students in CSC/ECE 506 are required to "attend" at least 20 out of the 26 class sessions (at least 16 of which must be attended in the classroom). On-campus students may earn credit for attending a class session by responding intelligently to the majority of in-class response forms while the class is in progress or before 6 PM on the class day.