CS 6404

Advanced Topics in Mathematical Software:

Software for High Performance Scientific Computing

Spring 1996



Course Announcement

High performance computers, especially scalable distributed memory architectures, are becoming increasingly important in solving the most challenging problems of science and engineering. It is likely that massively parallel machines capable of executing 1.0e+12 floating point operations per second will be available in the near future. However, programming and problem solving on machines of this kind is a notoriously difficult process.

This course will focus on programming and problem solving environments for modern high performance computers. We will examine software tools that enable users to solve large scale problems more conveniently, primarily on distributed memory multiprocessors. Such tools include message passing libraries (e.g., PVM, MPI), mathematical software libraries, parallelizing compilers, parallel debuggers and performance evaluation systems, and new parallel languages and language extensions.

There will be some emphasis on scientific applications as examples, but no advanced numerical analysis or scientific computing experience is necessary. Some familiarity with parallel processing will be helpful.

For further information contact Dr. Cal Ribbens, 632 McBryde, 231-6262, ribbens@vt.edu.



Further Details

Index Number: 1344

Schedule: MWF 2:00 p.m.

Course format and approach:

Roughly speaking, the format for the first half of the semester will consist of lectures by Dr. Ribbens introducing and surveying the most important issues in modern high performance computing. This will include an overview of high performance computer architecture and parallel algorithm design, and an emphasis on recent developments in software support for high performance computing. During the remainder of the semester students will be making presentations in class. These presentations will be based either on recently published papers or on the students own work.

Beyond attendance and participation in class and at least one class presentation, the student's responsibilities will include reading (in order to participate intelligently in class and in preparation for the class presentation) and one larger project. Project topics can be quite varied, are best tailored to the particular interests and goals of the student, and will generally involve some hands-on experience with high performance computing systems. We may also do one or two very simple hands-on exercises with parallel computing systems available here at Virginia Tech. We will try to shape the focus of the class somewhat depending on who shows up. There will be no tests other than a modest take-home final.


CS6404 EI Account (cs6404@ei.cs.vt.edu)