ACCRE Home

Enabling Researcher-Driven Innovation and Exploration


Vanderbilt Home
ME/CS 343 - HPC - Syllabus

ME/CS 343 - HPC - Syllabus

Goals
The course goal is to introduce theory and practices of solving large-scale scientific problems with advanced computational resources. Upon successful completion of the course, students will be able to identify different types of physical models in terms of computational requirements, to recognize various high-performance computer architectures and to develop a solution strategy for various models that utilizes a given architecture.

Prerequisites:

  • Many assignments will require fundamental knowledge of a procedural programming language, thus a sound understanding of basic programming is required. Please contact either instructor if you are unsure of your level of expertise.
  • All development is performed in a unix-like environment. If students are unfamiliar with the tools and operating mode, you are strongly encouraged to take the introductory workshops offered by ACCRE.

Structure
The course is an introduction to high-performance computing focusing on parallel architectures and approaches utilizing the 1500+ processor cluster maintained by the Academic Computing Center for Research and Education (ACCRE). Students will be expected to complete a class project that introduces some feature of high-performance computing to their thesis research.

The class is organized into three modules:

  1. Introduction to concepts of high-performance computing and parallel computing environments.
  2. High-level approaches with example applications that demonstrate theoretical metrics such as speedup and scalability.
  3. Implementation of parallel programming techniques for optimized performance of computational models.

Assesment
The semester grade will consist of homework assignments and a class project. Each assignment will be worth 10 points and the class project will be worth 30. Letter grades will be assigned based on the percentage of points awarded divided by the total points possible.

percentage letter grade
85-100 A
70-84 B
55-69 C
<55 F

Class Project
The class project is expected to be related to one's thesis research, but this is not a requirement. The project should utilize some aspect of high-performance computing to realize a speedup or to examine new scientifically interesting problems that were not possible without HPC. You will be evaluated on your ability to demonstrate the benefits of high-performance computing in solving your problem. You are encouraged to discuss plans for a project with the instructors early in the semester. The project will loosely follow a canonical life cycle of a (scaled-down) research project. Early in the semester an Executive Summary is due that will identify the scope of the research written as a one-page request for funding. At the end of the semester a document suitable for publication (i.e. extended abstract) will be prepared. Any student who collaborates with the instructors on a paper that is worthy of submission will receive an "A" for the semester.

For the final project, you will be required to make a presentation to the class as well as prepare a final document. The presentation should be prepared as if you were making a scientific presentation at a conference to people in a similar field. Therefore you should include motivation for the project, theoretical background, results and conclusions. In addition, include at least one slide that quantifies the speedup or advantages of using HPC in your project. Plan on a 12-15 minute presentation with a 3 minute question/answer period. The final document should be prepared as an extended abstract as if it were the conference paper that accompanies the presentation. The extended abstract is a minimum of 2 pages and a maximum of 4 pages including figures and references. Within the alloted pages also include a description of the advantages of HPC in your project and quantify the gains (typically in terms of speedup). The final document will be due on the day of our scheduled final exam.


Last modified: August 23 2007 10:30:58 CDT.