University of Colorado at Boulder
University of Colorado at Boulder Search A to Z Campus Map CU Search Links
ECE Home

ECEE Courses

Undergraduate
Graduate
Course List
Research
Contact Us

ECEN 5553 - Parallel Processing


Catalog Data ECEN 5553 (3). Parallel Processing. Examines a range of topics involved in using parallel operations to improve computational performance. Discusses parallel architectures, parallel algorithms and parallel programming languages. Architectures covered include vector computers, multiprocessors, network computers, and data flow machines.
Credits and Design 3 credit hours. Elective course.
Prerequisite(s) ECEN 4593, Computer Organization
CSCI 3656, Numberical Computation
Textbook Culler and Pal Singh, Parallel Computer Architecture: A Hardware/Software Approach, Morgan/Kaufman, 1st Ed.
  
Course Objectives The course extends work in computer architecture, computer languages and numerical analysis to the specific topic of parallel computing.
Topics Covered
  1. Parallel algorithms: depth and size of an algorithm, divide and conquer methods, speedup, and efficiency.
  2. Parallel architectures: SIMD instruction sets and vector computers; memory interconnection networks array organization in memory and associative processors. Multiprocessors: shared memory and distributed systems. Dataflow machines: the abstract model and approximate realization. Parallel architecture survey: multiprocessors, vector computers, associative processors, and dataflow systems.
  3. Parallel programming languages. Language features for synchronization: control flow based and data item based. Data dependency analysis and automatic vectorization. Value oriented languages for data flow.
  4. Performance Analysis. Matching algorithms to architectures. Synchronization and start-up overhead.

Last revised: 08-02-11, PM, ARP.