ECS 231, Winter 2013
Large Scale Scientific Computing
- Instructor:
- Zhaojun Bai
3005 Kemper Hall
530-752-4874
bai at cs.ucdavis.edu
- Lecture:
- 1:40pm - 3:00pm, Tue. Thur.
- 1070 Bainer
- Office Hours :
- 10:30am - 12:00pm, Tue. Thur. or by appointment
- Prerequisite
- ECS130 or consent of instructor.
A solid knowledge of undergraduate linear algebra, and some
experience with writing computer programs,
such as Matlab, C and/or Fortran.
- Catalog Description
-
Algorithms and techniques for large-scale scientific
computation, including high performance
computing kernels, iterative subspace projection methods,
fast Fourier transform, Poisson solvers and
spectral graph partition algorithms.
- Goals of the Course
- To learn about concepts and general techniques that are
essential for modern methods, and to be able to apply
them in a particular domain of large-scale scientific
computation.
- Syllabus
- Review of matrix operations and decompositions
- Floating point arithmetic
- HPC kernels (BLAS, LAPACK, multicore and GPU computing)
- Subspace projection methods for solving large scale
linear systems and eigenvalue problems
- Preconditioning techniques
- Selected topics, such as
- Steepest descent and conjugate gradient methods
- Graph partition and data clustering by spectral methods
- Fast Poisson solvers
- Textbook
- Lecture Notes
- Grading:
- Homeworks: 40%
- Quizzes: 30%
- Final project: 30%
- On-line Info:
Lecture schedule and handouts
- 1/8 Instruction begins
- Course organization
- Introduction
- Handout #1 (updated 10:16am, 1/8)
- 1/10
- Introduction of parallel computing, Berkeley CS267
(Video of Demmel's lecture
1/17/2012)
- Prof. Demmel's slides (pdf)
- 1/15
- Review: matrix operations and frequently used matrix decompositions
- Handout #2
- 1/17
- 1/22
- Float-point numbers, arithmetic and error analysis (cont'd)
- Reading: Goldberg's article on ``What Every Computer
Scientist should know about floating-point arithmetic''
(pdf file)
- Memory hierarchies and processor features
(video 5:26--51:20 of Demmel's lecture
1/19/2012)
- Prof. Demmel's slides (pdf)
- 1/24
- 1/29
- Large-scale linear solvers I: a framework for subspace projection methods
- Handout #5
- 1/31
- Large-scale linear solvers II: Krylov subspace, Arnoldi process and GMRES
- Handout #6
- 2/5
- 2/7
- Large-scale eigen solvers I: basic theory and algorithms
- Handout #8
Announcements
- 1/31: XSEDE offers FREE online parallel computing course
Students who are interested in using parallel computers efficiently and productively
are invited to register for a FREE online course sponsored by the Extreme Science and Engineering
Discovery Environment (XSEDE)(xsede.org).
The online course is an adaptation of the class Applications of Parallel Computers taught by
professor Jim Demmel at U.C. Berkeley in Spring 2012. Lecture materials, quizzes, and programming
exercises will be rolled out weekly from Feb. 14 to May 2. For more information on the topics
covered in the course, see
https://www.cac.cornell.edu/VW/APC/
As a prerequisite, students should have some programming experience in C or similar language.
Enrollment is limited to the first 300 students and registration will close Feb. 13.
To enroll, first visit https://portal.xsede.org/
to create an XSEDE portal account; then visit
https://portal.xsede.org/course-calendar
to register for the Applications of Parallel Computers course. Registered students will receive
accounts to access XSEDE computing resources and consulting help. Those who successfully complete
all quizzes and programming assignments will receive an XSEDE certificate of completion.
Homeworks and projects
- Homework #1: exercises in Handouts #1 and #2, due January 24
- Homework #2, due February 5
- Homework #3, Due February 19
Online resources:
Comments and questions sent to bai at cs.ucdavis.edu.