Parallel
Computing: Models, Languages & Architectures |
| |
CAS CS551 - Spring Semester (alternate
years)
A.
Bestavros
|
Over the last few years,
the emergence of radically different parallel
computer architectures has prompted the development
of various programming models such as data flow,
shared memory, message passing, systolic, and
data parallel, all of which are architecture-dependent
models. The rapidly changing grounds of parallel
architectures, however, suggest that architecture-independent
models such as Unity be used, thus leaving the
task of tailoring a given program to a particular
architecture to an optimizing compiler.
|
This course aims at exploring
these two alternatives by introducing a palette
of programming models and contrasting their
suitability for different architectures and
applications. The material covered will encompass
topics in parallel computer architectures, parallel
programming models, and languages. Appropriate
examples for existing or proposed parallel architectures
will be surveyed. Alongside, students will have
the opportunity to gain hands-on experience
with a host of architecture dependent/independent
parallel programming languages, such as Unity,
Id, Linda, C*, Fortran 90, and MPL.
|
Co-Requisite
Laboratory/Seminar
|
Students from the advanced
parallel computing courses meet together as
a group in the weekly Laboratory/Seminar. The
Seminar provides a vehicle for interdisciplinary
presentations by students of their project work
in the courses and serves as a forum for instruction
in advanced computational techniques. The meetings
are held in the advanced workstation laboratory
specially designed for these courses to provide
for interactive participation.
|
|
| |
|
| |
|