
![]() |
![]() |
![]() |
![]() |
|
![]() |
![]() |
![]() |
![]() |
Recent developments in parallel computer technology have made it necessary to reformulate numerical algorithms to exploit the full potential of this technology. Emphasis is on the different techniques for obtaining maximum parallelism in various numerical algorithms, especially those occurring when solving matrix problems and partial differential equations, and the subsequent mapping onto the computer. Implementation issues on parallel computers. Topics: parallel architectures, programming models, matix computations, FFT, fast multipole methods, domain decomposition, graph partitioning. Prequisite: CS237A or ME300A, or consent of instructor. Recommended: familiarity with differential equations, and experience in an advanced programming language such as F90, C, or C++.
3 units, Spring (Alonso)
We have created this course to address the computational scientist's need for an understanding of current parallel computing architectures and the subltleties of implementating some of the most widely used numerical algorithms (matrix computations, fft's, graph partitioning, etc.) in these parallel machines.
Our intention is twofold. Firstly, we would like to give you the ability to understand how parallel machines are built and programmed, so that you can understand how and why numerical algorithms are modified for performance. Secondly, we would like to go through several examples of popular numerical algorithms, analyze their parallel performance from an analytic point of view, and point out the parallel implementations that scale properly for large numbers of processors.
If you are currently solving numerical problems on serial computers and require the ability to deal with much larger problems or need to decrease the turnaround time of your computations, you should find some of the material in this class useful. In addition, if you would like to get an idea of the time investment required to convert a serial application to the parallel world, the examples in this course should give you a way to judge the amount of work required to complete this process.
Last Modified: Thu Mar 31 22:00:42 PST 2005
Questions & Comments