Introduction |
This course is an introductory course on high-performance computing. High-performance computing refers to the use of (parallel) supercomputers and computer clusters, and everything from software to hardware to speed up computations. As the CPU clock speed of desktop and commodity processors has stagnated due to physical limitations, more creative use of software and parallel hardware is required to further speed up data processing. In this course you will learn how to write faster code that is highly optimized for modern multi-core processors and clusters, using modern software development tools, performance profilers, specialized algorithms, parallelization strategies, and advanced parallel programming constructs in OpenMP and MPI.
Overview |
Topics in this course include (but are not limited to):
For this course we made a selection of material from the best textbooks available:
Software tools you will use in this course:
Sun Studio Performance Analyzer Demo | Sun Studio Performance Analyzer Demo | Jumpshot-4 (MPI) | Intel Codecov |
---|
(Select image to enlarge)
Syllabus |
Computer Accounts |
You will need an account to log on to the SCS machines. If you dont have one then please contact the instructor to request access.
You will also need an ACNS account (i.e., @garnet.fsu.edu) for receiving class emails. If you want, you can forward your garnet email to other accounts (visit https://cars.acns.fsu.edu for more details).
Schedule, Lecture Notes, and Assignments |
The schedule with lecture notes and project assignments is shown below (refresh this page if necessary). You are encouraged to download and print the PDF notes as handouts to take to class for note taking. Links will be active when new lecture notes have been added. The reading material will be provided in class as handouts. The other reading resources are available from the instructor in hardcopy form only upon request. The schedule will be updated when needed and significant changes will be announced on Blackboard.
Project and homework assignments can be downloaded by selecting the links in the "Assignments due" column.
Date | Lectures | Reading material | Other resources | Assignments due | Date |
---|---|---|---|---|---|
8/23 | Introduction [PDF] | [PP2] pages 3-12 [SPC] pages 1-15, 37-45, 48-52, 110-112 |
Grand Challenge problems Colatz conjecture Colatz on the Cell BE |
- | 8/23 |
8/25 | [SRC] pages 3-13 | Moore's law | - | 8/25 | |
8/30 | Architecture and Compilers: Part I: uniprocessors [PDF] |
[HPC] pages 7-56 | - | 8/30 | |
9/1 | [HPC] pages 81-124 | [OPT] pages 51-121 | HW1 | 9/1 | |
9/6 | Labor day: no class | 9/6 | |||
9/8 | Part II: multiprocessors [PDF] | [PP2] pages 13-26 | - | 9/8 | |
9/13 | [SPC] pages 71-95 | [SRC] pages 15-42 | - | 9/13 | |
9/15 | [HPC] pages 25-28 | - | 9/15 | ||
9/20 | Performance Analysis [PDF] | [PP2] pages 62-75 [HPC] pages 125-142 |
[SRC] pages 443-468 | - | 9/20 |
9/22 | [SPC] pages 56-65 | [OPT] pages 19-50 | - | 9/22 | |
9/27 | Programming Models Overview [PDF] | HW2 | 9/27 | ||
9/29 | Programming with Shared Memory: Part I: basics [PDF] Part II: OpenMP [PDF] Part III: synchronous parallel [PDF] |
[HPC] pages 191-218 | [HPC] pages 219-240 | - | 9/29 |
10/4 | [PP2] pages 230-271 | Semaphores | - | 10/4 | |
10/6 | OpenMP OpenMP best practices |
HW3 | 10/6 | ||
10/11 | More OpenMP examples | - | 10/11 | ||
10/13 | Review | - | 10/13 | ||
10/18 | Midterm exam | 10/18 | |||
10/20 | Programming with Message Passing: Part I: basics [PDF] Part II: MPI [PDF] Part III: message passing parallel [PDF] |
[PP2] pages 42-61 | MPI | Pr1 | 10/20 |
10/25 | [PP2] pages 340-365 | - | 10/25 | ||
10/27 | - | 10/27 | |||
11/1 | Algorithms: Part I: embarrassingly parallel [PDF] |
[PP2] pages 79-99, 201-210 | - | 11/1 | |
11/3 | - | 11/3 | |||
11/8 | OpenCL and CUDA programming by Prof. Erlebacher | - | 11/8 | ||
11/10 | - | 11/10 | |||
11/15 | Algorithms: Part II: partitioning, divide & conquer [PDF] |
[PP2] pages 106-131 | - | 11/15 | |
11/17 | [PSC] pages 321-337 | Pr2 | 11/17 | ||
11/22 | Parallel Programming Languages [PDF] | - | 11/22 | ||
11/24 | Thanksgiving: no class | 11/24 | |||
11/29 | Libs & Tools [PDF] | [SRC] pages 621-647 | - | 11/29 | |
12/1 | - | 12/1 | |||
12/10 | Final exam 7:30AM-9:30AM 103LOV | Pr3 | 12/10 |
Assignment Submissions |
Submit your assignments to the instructor by email. Please send only one email message that includes all sources of your programming assignment, the input and output files (when applicable), and a Makefile. Use the zip utility to compress and archive the material for inclusion as an attachment in the email message. Use the email subject line "HOMEWORK #
", where # is the homework/assignment number. Also, please include your name and the assignment number in the program source code
The assignments must be turned in before or at the due date before midnight. When turned in late, 5% will be deducted from the homework grade per day until the homework has been received, with a maximum extension of five days.
Attendance |
Roll is not taken for this course. Attendence of lectures is encouraged but not required. Attendance is required the first week of classes and during exams.
Excused absences include documented illness, deaths in the immediate family and other documented crises, call to active military duty or jury duty, religious holy days, and official University activities. Accommodations for these excused absences will be made and will do so in a way that does not penalize students who have a valid excuse. Consideration will also be given to students whose dependent children experience serious illness.
Academic Honor Policy |
The Florida State University Academic Honor Policy outlines the Universitys expectations for the integrity of students academic work, the procedures for resolving alleged violations of those expectations, and the rights and responsibilities of students and faculty members throughout the process. Students are responsible for reading the Academic Honor Policy and for living up to their pledge to . . . be honest and truthful and . . . [to] strive for personal and institutional integrity at Florida State University. (Florida State University Academic Honor Policy, found at http://dof.fsu.edu/honorpolicy.htm.)
ADA |
Students with disabilities needing academic accommodation should:
(1) register with and provide documentation to the Student Disability Resource Center; and
(2) bring a letter to the instructor indicating the need for accommodation and what type. This should be done during the first week of class.
This syllabus and other class materials are available in alternative format upon request.
For more information about services available to FSU students with disabilities, contact the:
Student Disability Resource Center
97 Woodward Avenue, South
108 Student Services Building
Florida State University
Tallahassee, FL 32306-4167
(850) 644-9566 (voice)
(850) 644-8504 (TDD)
sdrc@admin.fsu.edu
http://www.disabilitycenter.fsu.edu/
Copyright: Robert van Engelen, Florida State University, 2007-2010.
Last modified: