CSCI 5551: Parallel Processing
Description
Gaining computer performance through parallel processing demands the cooperation of algorithms, programming languages and architectures. The course will examine different parallel architectures, the languages used to program them with their communication and synchronization primitives, and the algorithms required to exploit parallelism in real applications. Topics: Parallel algorithms; parallel programming languages; parallel architectures including vector processors, multiprocessors, interconnection networks, and dataflow machines.
Benefits
- Understand parallel machines and their programming.
- Analyze the potential for parallelism in applications.
- Learn how architectures, languages, and algorithms combine for parallel performance.
- Understand hardware/software design implications for emerging multicore systems.
Prerequisites
Strong undergraduate background in computer science/computer engineering, including a basic knowledge of algorithms, languages, and architectures, as well as machine instruction sets.
Education Officer (EO)
Hardware & Software
Web and e-mail access required. SSH access required.
Syllabus
Upcoming & Previous Offerings
Meeting Days Legend: Monday (M), Tuesday (T), Wednesday (W), Thursday (R), Friday (F), Saturday (S), Sunday (U)
Summer Terms: M = Maymester, A = 1st 5 weeks, B= 2nd 5 weeks, C = 8 weeks, D= 10 weeks
Refer to the Academic Calendar for specific dates.
top