18.337 Syllabus

18.337 Syllabus

February 6, 1996

Class home page: http://web.mit.edu/18.337/

Parallel Computing is maturing. The old hype seems to be over with now. Symmetric multriprocessors with up to 64 processors are starting to be successful in the commercial market. So called massively parallel machines with over 1000 processors are soon about to break the teraflop barrier.

This parallel scientific computing class attempts to cover it all from the practical uses of parallel computers to mathematical algorithms and techniques.

Regarding prerequisites, I believe that engineers familiar with at least one numerical application and computer scientists already interested in supercomputers should be able to take this class, but nearly everyone may have to fill in some gap or another. Ideally engineers will learn computer science, computer scientists will learn engineering, and mathematicians will learn what is needed to create new and better algorithms. As I become more familiar with the students, I hope to be able to fill in gaps or give pointers to appropriate texts.

The course will consist of homework programming assignments and a final project. Unfortunately, we have no TA for this course so homeworks may have to be graded by the class.

During each class one student will be responsible for updating the course notes. These updates in many cases will be better explanations of what is already there, and more pretty diagrams. (Who likes books without pictures?) The diagrams will have to fit a standard format that will be made available and can not interfere with the remainder of then otes.

I hope that students will teach me something about every topic! There will be no exams. I will probably ask students to grade each other's homeworks.

Coteaching with Berkeley

As an experiment, we will be sharing some lectures during the semester with an analogous course at UC Berkeley this semester: UCB CS 267, Applications of Parallel Computers , by Prof. Jim Demmel. We will use 9-253 for these lectures. This room is unfortunately small and we will have to restrict attendance, but it is equipped with a high-speed real-time link to Berkeley. According to Pat Weygint the room can hold up to 20 with minor discomfort. The first lecture is planned for Feb 8, when Prof. W. Kahan will give a guest lecture on floating point arithmetic (a topic for which he was awarded the 1989 ACM Turing Award, the highest award in Computer Science). Because of the time difference between MIT and Berkeley, this will be a 60 minute lecture, from 3:30pm until 4:30pm, preceded by 30 "unconnected" minutes at MIT in 1-390. We will schedule more or fewer of these shared lectures, depending on how well this technology works. If some students want to form project teams with students in the Berkeley class, Jim Demmel and I would welcome this.

The most important part of the class is the final project. Students are invited to bring their own applications to parallelize, but I will supply a list with many suggestions. At the end of the semester we will have a ``poster session'' where all projects will be presented and an opportunity for the best projects to be simultaneously presented here and at Berkeley on the videolink.

For a look at what previous projects have involved at Berkeley, see the lists on their class homepage. Projects have been in all engineering and scientific disciplines. One project from Berkeley's last class, which has been developed considerably since then by Paul Gauthier and Prof. Eric Brewer, recently received money from venture capitalists in order to commercialize it. So many things are possible!


Return to the class home page.