NCSU brick logo

CSC/ECE 506: Architecture of Parallel Computers

Spring 2025

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

  • CSC 236:Computer Organization and Assembly Language or
  • ECE 310:Design of Complex Digital Systems

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
efg ncsu.edu

teaching assistant

Manas Vivek Buzruk
Office:
Office hours:
  Monday 3-4 PM, 1014 EB 2 and on Zoom
mbuzruk ncsu.edu

teaching assistant

Xiangjun Mi
Office:
Office hours:
  Friday 4-5 PM
xmi ncsu.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.

©2007-2022 NC State University | Disclaimer
back to top